yellow: Bill's house Pikachu timing, collision and spawn cell, CLOSES #2165

This commit is contained in:
bryanthaboi
2026-09-04 10:45:02 -04:00
parent e9cf07ef47
commit e6e3459dbe
5 changed files with 496 additions and 6 deletions
+18 -1
View File
@@ -620,6 +620,23 @@ function Commands.play_sound(ctx, soundId)
require("src.core.Sound").play(ctx.game.data, soundId)
end
-- wait_sound: WaitForSoundToFinish (home/delay.asm:15), the drain that
-- follows every PlaySound in the cell-separator chain
-- (engine/events/hidden_events/bills_house_pc.asm:22)
local WAIT_SOUND_CEILING = 600
function Commands.wait_sound(ctx)
local Sound = require("src.core.Sound")
if not Sound.sfxBusy() then return end
local runner = ctx.runner
local left = WAIT_SOUND_CEILING
runner.waitingCheck = function()
left = left - 1
return left <= 0 or not Sound.sfxBusy()
end
runner:yield()
end
-- text_sound <soundId>: the jingle the ROM parks at the END of a string as
-- a trailing text command (sound_get_item_1, sound_get_key_item ->
-- home/text.asm TextCommand_SOUND). It arms the NEXT show_text the same
@@ -1476,7 +1493,7 @@ end
for _, verb in ipairs({ "show_text", "ask", "choice", "start_battle", "warp",
"open_mart", "trade", "push_screen", "record_hall_of_fame",
"old_man_demo", "static_battle", "rival_battle", "give_item",
"give_pokemon", "wait",
"give_pokemon", "wait", "wait_sound",
"wait_flag", "move_player", "move_npc", "move_npc_to", "walk_npc",
"emote", "fade", "pan_camera", "play_once", "pikachu_make_way",
"ss_anne_departs" }) do