diff options
Diffstat (limited to 'engine/events/evolve_trade.asm')
-rwxr-xr-x | engine/events/evolve_trade.asm | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/engine/events/evolve_trade.asm b/engine/events/evolve_trade.asm new file mode 100755 index 00000000..e17fc05c --- /dev/null +++ b/engine/events/evolve_trade.asm @@ -0,0 +1,44 @@ +EvolveTradeMon: +; Verify the TradeMon's species name before +; attempting to initiate a trade evolution. + +; The names of the trade evolutions in Blue (JP) +; are checked. In that version, TradeMons that +; can evolve are Graveler and Haunter. + +; In localization, this check was translated +; before monster names were finalized. +; Then, Haunter's name was "Spectre". +; Since its name no longer starts with +; "SP", it is prevented from evolving. + +; This may have been why Red/Green's trades +; were used instead, where none can evolve. + +; This was fixed in Yellow. + + ld a, [wInGameTradeReceiveMonName] + + ; GRAVELER + cp "G" + jr z, .ok + + ; "SPECTRE" (HAUNTER) + cp "S" + ret nz + ld a, [wInGameTradeReceiveMonName + 1] + cp "P" + ret nz + +.ok + ld a, [wPartyCount] + dec a + ld [wWhichPokemon], a + ld a, $1 + ld [wForceEvolution], a + ld a, LINK_STATE_TRADING + ld [wLinkState], a + callab TryEvolvingMon + xor a ; LINK_STATE_NONE + ld [wLinkState], a + jp PlayDefaultMusic |