diff --git a/constants/script_constants.asm b/constants/script_constants.asm index 9d190d2d..9f36b865 100644 --- a/constants/script_constants.asm +++ b/constants/script_constants.asm @@ -32,19 +32,19 @@ DEF SLOTS_SOMEONESKEYS EQU $ff const TRADE_FOR_SPOT ; probably also glass const TRADE_WITH_SELF ; Celadon University const TRADE_FOR_RATICATE_A ; LGPE Trade references - Viridian - ;const TRADE_FOR_GOLEM_A ; Pewter + const TRADE_FOR_GOLEM_A ; Pewter ;const TRADE_FOR_NINETALES_A ; Cerulean const TRADE_FOR_PERSIAN_A ; Vermillion ;const TRADE_FOR_DUGTRIO_A ; Lavender const TRADE_FOR_SANDSLASH_A ; Celadon const TRADE_FOR_RAICHU_A ; Saffron - ;const TRADE_FOR_MAROWAK_A ; Fuschia + const TRADE_FOR_MAROWAK_A ; Fuschia ;const TRADE_FOR_MUK_A ; Cinnabar - ;const TRADE_FOR_EXEGGUTOR_A ; Indigo + const TRADE_FOR_EXEGGUTOR_A ; Indigo ;const TRADE_FOR_TAUROS_C ; S.S. Anne Trades begin here ;const TRADE_FOR_TAUROS_A ;const TRADE_FOR_TAUROS_B - ;const TRADE_FOR_RAPIDASH_G + const TRADE_FOR_RAPIDASH_G ;const TRADE_FOR_SLOWBRO_G ;const TRADE_FOR_SLOWKING_G ;const TRADE_FOR_WEEZING_G diff --git a/data/events/trades.asm b/data/events/trades.asm index cb5d9b38..804893ee 100644 --- a/data/events/trades.asm +++ b/data/events/trades.asm @@ -14,19 +14,19 @@ TradeMons: db CUBONE, MACHOKE, TRADE_DIALOGSET_HAPPY, "RICKY@@@@@@" ; From Yellow db NO_MON, NO_MON, TRADE_DIALOGSET_SELF, "Unseen@@@@@" ; Celadon Uni Trader db RATICATE, RATICATE_A, TRADE_DIALOGSET_REGION, "RATICATE@@@" ; Viridian - LGPE trades begin here - ;db GOLEM, GOLEM_A, TRADE_DIALOGSET_REGION, "GOLEM@@@@@@" ; Pewter + db GOLEM, GOLEM_A, TRADE_DIALOGSET_REGION, "GOLEM@@@@@@" ; Pewter ;db NINETALES, NINETALES_A, TRADE_DIALOGSET_REGION, "NINETALES@@" ; Cerulean db PERSIAN, PERSIAN_A, TRADE_DIALOGSET_REGION, "PERSIAN@@@@" ; Vermillion ;db DUGTRIO, DUGTRIO_A, TRADE_DIALOGSET_REGION, "DUGTRIO@@@@" ; Lavender db SANDSLASH, SANDSLASH_A, TRADE_DIALOGSET_REGION, "SANDSLASH@@" ; Celadon db RAICHU, RAICHU_A, TRADE_DIALOGSET_REGION, "RAICHU@@@@@" ; Saffron - ;db MAROWAK, MAROWAK_A, TRADE_DIALOGSET_REGION, "MAROWAK@@@@" ; Fuschia + db MAROWAK, MAROWAK_A, TRADE_DIALOGSET_REGION, "MAROWAK@@@@" ; Fuschia ;db MUK, MUK_A, TRADE_DIALOGSET_REGION, "MUK-A@@@@@@" ; Cinnabar - ;db EXEGGUTOR, EXEGGUTOR_A, TRADE_DIALOGSET_REGION, "EXEGGUTOR@@" ; Indigo + db EXEGGUTOR, EXEGGUTOR_A, TRADE_DIALOGSET_REGION, "EXEGGUTOR@@" ; Indigo ;db TAUROS, TAUROS_C, TRADE_DIALOGSET_REGION, "TAUROS@@@@@" ; S.S. Anne begins here ;db TAUROS, TAUROS_A, TRADE_DIALOGSET_REGION, "TAUROS@@@@@" ;db TAUROS, TAUROS_B, TRADE_DIALOGSET_REGION, "TAUROS@@@@@" - ;db RAPIDASH, RAPIDASH_G, TRADE_DIALOGSET_REGION, "RAPIDASH@@@" + db RAPIDASH, RAPIDASH_G, TRADE_DIALOGSET_REGION, "RAPIDASH@@@" ;db SLOWBRO, SLOWBRO_G, TRADE_DIALOGSET_REGION, "SLOWBRO@@@@" ;db SLOWKING, SLOWKING_G, TRADE_DIALOGSET_REGION, "SLOWKING@@@" ;db WEEZING, WEEZING_G, TRADE_DIALOGSET_REGION, "WEEZING@@@@" diff --git a/data/maps/objects/FuchsiaPokecenter.asm b/data/maps/objects/FuchsiaPokecenter.asm index 84404b09..0733908d 100644 --- a/data/maps/objects/FuchsiaPokecenter.asm +++ b/data/maps/objects/FuchsiaPokecenter.asm @@ -12,5 +12,6 @@ FuchsiaPokecenter_Object: object_event 2, 3, SPRITE_ROCKER, STAY, NONE, 2 ; person object_event 6, 5, SPRITE_COOLTRAINER_F, WALK, LEFT_RIGHT, 3 ; person object_event 11, 2, SPRITE_LINK_RECEPTIONIST, STAY, DOWN, 4 ; person + object_event 7, 3, SPRITE_GAMEBOY_KID, STAY, DOWN, 5 ; Marowak Trader def_warps_to FUCHSIA_POKECENTER diff --git a/data/maps/objects/IndigoPlateauLobby.asm b/data/maps/objects/IndigoPlateauLobby.asm index fd3d07ba..fb32c6b9 100644 --- a/data/maps/objects/IndigoPlateauLobby.asm +++ b/data/maps/objects/IndigoPlateauLobby.asm @@ -14,5 +14,6 @@ IndigoPlateauLobby_Object: object_event 5, 1, SPRITE_COOLTRAINER_F, STAY, DOWN, 3 ; person object_event 0, 5, SPRITE_CLERK, STAY, RIGHT, 4 ; person object_event 13, 6, SPRITE_LINK_RECEPTIONIST, STAY, DOWN, 5 ; person + object_event 10, 7, SPRITE_GAMEBOY_KID, STAY, DOWN, 6 ; Exeggutor Trader def_warps_to INDIGO_PLATEAU_LOBBY diff --git a/data/maps/objects/PewterPokecenter.asm b/data/maps/objects/PewterPokecenter.asm index 9d9e8e58..6cd7dd41 100644 --- a/data/maps/objects/PewterPokecenter.asm +++ b/data/maps/objects/PewterPokecenter.asm @@ -12,5 +12,6 @@ PewterPokecenter_Object: object_event 11, 7, SPRITE_GENTLEMAN, STAY, LEFT, 2 ; person object_event 1, 3, SPRITE_FAIRY, STAY, DOWN, 3 ; person object_event 11, 2, SPRITE_LINK_RECEPTIONIST, STAY, DOWN, 4 ; person + object_event 7, 3, SPRITE_GAMEBOY_KID, STAY, DOWN, 5 ; Golem Trader def_warps_to PEWTER_POKECENTER diff --git a/data/maps/objects/SSAnneBow.asm b/data/maps/objects/SSAnneBow.asm index 6374f009..c536e2f6 100644 --- a/data/maps/objects/SSAnneBow.asm +++ b/data/maps/objects/SSAnneBow.asm @@ -13,5 +13,6 @@ SSAnneBow_Object: object_event 7, 11, SPRITE_COOLTRAINER_M, STAY, NONE, 3 ; person object_event 4, 4, SPRITE_SAILOR, STAY, DOWN, 4, OPP_SAILOR, 1 object_event 10, 8, SPRITE_SAILOR, STAY, UP, 5, OPP_SAILOR, 2 + object_event 10, 2, SPRITE_GAMEBOY_KID, STAY, DOWN, 6 ; Rapidash Trader def_warps_to SS_ANNE_BOW diff --git a/engine/debug/debug_party.asm b/engine/debug/debug_party.asm index 6389c93b..6480884a 100644 --- a/engine/debug/debug_party.asm +++ b/engine/debug/debug_party.asm @@ -23,11 +23,11 @@ SetIshiharaTeam: IshiharaTeam: db EXEGGUTOR, 90 db RAICHU, 90 - db RATICATE, 90 - db PERSIAN, 50 + db EXEGGUTOR, 90 + db RAPIDASH, 50 IF DEF(_DEBUG) - db MR_MIME, 50 - db MADAAMU, 50 + db GOLEM, 50 + db MAROWAK, 50 ENDC db -1 ; end diff --git a/engine/events/in_game_trades.asm b/engine/events/in_game_trades.asm index 67019a5d..cfff4bd8 100644 --- a/engine/events/in_game_trades.asm +++ b/engine/events/in_game_trades.asm @@ -277,6 +277,7 @@ InGameTradeTextPointers: dw TradeTextPointers3 dw TradeTextPointers4 dw TradeTextPointers5 + dw TradeTextPointers6 TradeTextPointers1: dw WannaTrade1Text @@ -309,7 +310,7 @@ TradeTextPointers4: TradeTextPointers5: dw WannaTrade5Text dw NoTrade5Text - dw WrongMon3Text ; seems fitting, also optimises + dw WrongMon3Text dw Thanks1Text dw AfterTrade1Text diff --git a/scripts/FuchsiaPokecenter.asm b/scripts/FuchsiaPokecenter.asm index 788ee24b..b924722e 100644 --- a/scripts/FuchsiaPokecenter.asm +++ b/scripts/FuchsiaPokecenter.asm @@ -7,6 +7,7 @@ FuchsiaPokecenter_TextPointers: dw FuchsiaPokecenterText2 dw FuchsiaPokecenterText3 dw FuchsiaTradeNurseText + dw MarowakTrade FuchsiaHealNurseText: script_pokecenter_nurse @@ -21,3 +22,10 @@ FuchsiaPokecenterText3: FuchsiaTradeNurseText: script_cable_club_receptionist + +MarowakTrade: + text_asm + ld a, TRADE_FOR_MAROWAK_A + ld [wWhichTrade], a + predef DoInGameTradeDialogue + jp TextScriptEnd diff --git a/scripts/IndigoPlateauLobby.asm b/scripts/IndigoPlateauLobby.asm index 906fc0e7..9bc75e34 100644 --- a/scripts/IndigoPlateauLobby.asm +++ b/scripts/IndigoPlateauLobby.asm @@ -20,6 +20,7 @@ IndigoPlateauLobby_TextPointers: dw IndigoPlateauLobbyText3 dw IndigoCashierText dw IndigoTradeNurseText + dw ExeggutorTrade IndigoHealNurseText: script_pokecenter_nurse @@ -36,4 +37,11 @@ IndigoTradeNurseText: script_cable_club_receptionist IndigoCashierText:: - script_mart ULTRA_BALL, GREAT_BALL, FULL_RESTORE, MAX_POTION, FULL_HEAL, REVIVE, MAX_REPEL \ No newline at end of file + script_mart ULTRA_BALL, GREAT_BALL, FULL_RESTORE, MAX_POTION, FULL_HEAL, REVIVE, MAX_REPEL + +ExeggutorTrade: + text_asm + ld a, TRADE_FOR_EXEGGUTOR_A + ld [wWhichTrade], a + predef DoInGameTradeDialogue + jp TextScriptEnd diff --git a/scripts/PewterPokecenter.asm b/scripts/PewterPokecenter.asm index 3267dcee..333d568e 100644 --- a/scripts/PewterPokecenter.asm +++ b/scripts/PewterPokecenter.asm @@ -7,6 +7,7 @@ PewterPokecenter_TextPointers: dw PewterPokecenterText2 dw PewterJigglypuffText dw PewterTradeNurseText + dw GolemTrade PewterHealNurseText: script_pokecenter_nurse @@ -84,3 +85,10 @@ JigglypuffFacingDirectionsEnd: PewterTradeNurseText: script_cable_club_receptionist + +GolemTrade: + text_asm + ld a, TRADE_FOR_GOLEM_A + ld [wWhichTrade], a + predef DoInGameTradeDialogue + jp TextScriptEnd diff --git a/scripts/SSAnneBow.asm b/scripts/SSAnneBow.asm index 80d98668..a6399020 100644 --- a/scripts/SSAnneBow.asm +++ b/scripts/SSAnneBow.asm @@ -18,6 +18,7 @@ SSAnneBow_TextPointers: dw SSAnne5Text3 dw SSAnne5Text4 dw SSAnne5Text5 + dw RapidashTrade SSAnne5TrainerHeaders: def_trainers 4 @@ -74,3 +75,10 @@ SSAnne5EndBattleText2: SSAnne5AfterBattleText2: text_far _SSAnne5AfterBattleText2 text_end + +RapidashTrade: + text_asm + ld a, TRADE_FOR_RAPIDASH_G + ld [wWhichTrade], a + predef DoInGameTradeDialogue + jp TextScriptEnd