mirror of
https://github.com/bryanthaboi/gen1recomp.git
synced 2026-08-16 00:02:23 +02:00
Fix Yellow Oak speech showing Nidorino instead of Pikachu (#915)
Yellow's field.oakSpeech manifest carried only shrink frames, so OakSpeech.lua's `oakGfx.demoSpecies or "NIDORINO"` fallback fired and the opening speech showed Nidorino's sprite and cry instead of the player's Pikachu. - Stamp demoSpecies "PIKACHU" in the Yellow import manifest (source of truth for fresh ROM imports and developer builds). - Stamp it in make_yellow_manifest.py so regeneration keeps the value. - Repair stale Yellow caches in Data:applyVersionedFieldData() with a fill-if-absent block, matching the #617 oldManBattle RATTATA pattern. - Add parity test (manifest carries PIKACHU; stale cache filled; pre-stamped value left alone). Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
@@ -84,6 +84,15 @@ function Data:applyVersionedFieldData()
|
||||
-- Yellow caches carry the wrong demo species too. The fixed import
|
||||
-- manifest below stamps RATTATA for fresh imports.
|
||||
self.field.oldManBattle = { species = "RATTATA", level = 5 }
|
||||
-- The Oak-speech show-off mon is the player's Pikachu in Yellow
|
||||
-- (engine/battle/core.asm BATTLE_TYPE_PIKACHU / the ProfOak demo)
|
||||
-- but caches imported before the manifest carried demoSpecies fell
|
||||
-- back to Red's NIDORINO (#915). The fixed import manifest below
|
||||
-- stamps PIKACHU for fresh imports; fill it here for stale caches.
|
||||
local oakSpeech = self.field.oakSpeech
|
||||
if type(oakSpeech) == "table" and not oakSpeech.demoSpecies then
|
||||
oakSpeech.demoSpecies = "PIKACHU"
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user