From ed1ced807b91bcb22a7293d864a627e28e5fd0f4 Mon Sep 17 00:00:00 2001 From: Llinos Evans <36418502+PlagueVonKarma@users.noreply.github.com> Date: Sat, 8 Apr 2023 01:05:15 +0100 Subject: [PATCH] Regional Trades! - Regional trades now dummy out the "-A" thing etc so they look nice - Added Celadon, Saffron, Viridian, and Vermillion regional trades - Added Galarian Sidegrade trades to the S. S. Anne, but Perrserker and Sirfetch'd specifically don't work. I have zero clue why, as they work the same as the rest. - Corrected grammar in the "Happy" text when you finish a trade --- constants/script_constants.asm | 8 ++--- data/events/trades.asm | 38 +++++++++++----------- data/maps/objects/CeladonPokecenter.asm | 1 + data/maps/objects/SSAnne1FRooms.asm | 1 + data/maps/objects/SSAnne2FRooms.asm | 1 + data/maps/objects/SSAnneB1FRooms.asm | 3 +- data/maps/objects/SaffronPokecenter.asm | 1 + data/maps/objects/VermilionPokecenter.asm | 1 + data/maps/objects/ViridianPokecenter.asm | 1 + data/text/text_7.asm | 6 ++-- engine/debug/debug_party.asm | 9 ++--- engine/events/in_game_trades.asm | 5 +-- gfx/pokemon/front/raticatea.png | Bin 699 -> 705 bytes scripts/CeladonPokecenter.asm | 8 +++++ scripts/SSAnne1FRooms.asm | 8 +++++ scripts/SSAnne2FRooms.asm | 8 +++++ scripts/SSAnneB1FRooms.asm | 8 +++++ scripts/SaffronPokecenter.asm | 8 +++++ scripts/VermilionPokecenter.asm | 8 +++++ scripts/ViridianPokecenter.asm | 8 +++++ 20 files changed, 98 insertions(+), 33 deletions(-) diff --git a/constants/script_constants.asm b/constants/script_constants.asm index 5e85bf7b..9d190d2d 100644 --- a/constants/script_constants.asm +++ b/constants/script_constants.asm @@ -31,13 +31,13 @@ DEF SLOTS_SOMEONESKEYS EQU $ff const TRADE_FOR_CRINKLES 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_RATICATE_A ; LGPE Trade references - Viridian ;const TRADE_FOR_GOLEM_A ; Pewter ;const TRADE_FOR_NINETALES_A ; Cerulean - ;const TRADE_FOR_PERSIAN_A ; Vermillion + 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_SANDSLASH_A ; Celadon + const TRADE_FOR_RAICHU_A ; Saffron ;const TRADE_FOR_MAROWAK_A ; Fuschia ;const TRADE_FOR_MUK_A ; Cinnabar ;const TRADE_FOR_EXEGGUTOR_A ; Indigo diff --git a/data/events/trades.asm b/data/events/trades.asm index 469e4257..cb5d9b38 100644 --- a/data/events/trades.asm +++ b/data/events/trades.asm @@ -13,24 +13,24 @@ TradeMons: db VENONAT, TANGELA, TRADE_DIALOGSET_HAPPY, "CRINKLES@@@" 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-A@" ; Viridian - LGPE trades begin here - ;db GOLEM, GOLEM_A, TRADE_DIALOGSET_REGION, "GOLEM-A@@@@" ; Pewter - ;db NINETALES, NINETALES_A, TRADE_DIALOGSET_REGION, "NINETALES-A" ; Cerulean - ;db PERSIAN, PERSIAN_A, TRADE_DIALOGSET_REGION, "PERSIAN-A@@" ; Vermillion - ;db DUGTRIO, DUGTRIO_A, TRADE_DIALOGSET_REGION, "DUGTRIO-A@@" ; Lavender - ;db SANDSLASH, SANDSLASH_A, TRADE_DIALOGSET_REGION, "SANDSLASH-A" ; Celadon - ;db RAICHU, RAICHU_A, TRADE_DIALOGSET_REGION, "RAICHU-A@@@" ; Saffron - ;db MAROWAK, MAROWAK_A, TRADE_DIALOGSET_REGION, "MAROWAK-A@@" ; Fuschia + db RATICATE, RATICATE_A, TRADE_DIALOGSET_REGION, "RATICATE@@@" ; Viridian - LGPE trades begin here + ;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 MUK, MUK_A, TRADE_DIALOGSET_REGION, "MUK-A@@@@@@" ; Cinnabar - ;db EXEGGUTOR, EXEGGUTOR_A, TRADE_DIALOGSET_REGION, "EXEGGUTOR-A" ; Indigo - ;db TAUROS, TAUROS_C, TRADE_DIALOGSET_REGION, "TAUROS_C@@@" ; S.S. Anne begins here - ;db TAUROS, TAUROS_A, TRADE_DIALOGSET_REGION, "TAUROS_A@@@" - ;db TAUROS, TAUROS_B, TRADE_DIALOGSET_REGION, "TAUROS_B@@@" - ;db RAPIDASH, RAPIDASH_G, TRADE_DIALOGSET_REGION, "RAPIDASH-G@" - ;db SLOWBRO, SLOWBRO_G, TRADE_DIALOGSET_REGION, "SLOWBRO-G@@" - ;db SLOWKING, SLOWKING_G, TRADE_DIALOGSET_REGION, "SLOWKING-G@" - ;db WEEZING, WEEZING_G, TRADE_DIALOGSET_REGION, "WEEZING-G@@" - db MR_MIME, MR_RIME, TRADE_DIALOGSET_CASUAL, "MR. RIME@@@" - db PERSIAN, PERRSERKER, TRADE_DIALOGSET_CASUAL, "PERRSERKER@" - db MADAAMU, SIRFETCHD, TRADE_DIALOGSET_CASUAL, "SIRFETCH'D@" + ;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 SLOWBRO, SLOWBRO_G, TRADE_DIALOGSET_REGION, "SLOWBRO@@@@" + ;db SLOWKING, SLOWKING_G, TRADE_DIALOGSET_REGION, "SLOWKING@@@" + ;db WEEZING, WEEZING_G, TRADE_DIALOGSET_REGION, "WEEZING@@@@" + db MR_MIME, MR_RIME, TRADE_DIALOGSET_CASUAL, "MR.RIME@@@@" + db PERSIAN, PERRSERKER, TRADE_DIALOGSET_HAPPY, "PERRSERKER@" + db MADAAMU, SIRFETCHD, TRADE_DIALOGSET_HAPPY, "SIRFETCH'D@" assert_table_length NUM_NPC_TRADES diff --git a/data/maps/objects/CeladonPokecenter.asm b/data/maps/objects/CeladonPokecenter.asm index 40c466a0..e27d516e 100644 --- a/data/maps/objects/CeladonPokecenter.asm +++ b/data/maps/objects/CeladonPokecenter.asm @@ -12,5 +12,6 @@ CeladonPokecenter_Object: object_event 7, 3, SPRITE_GENTLEMAN, WALK, LEFT_RIGHT, 2 ; person object_event 10, 5, SPRITE_BEAUTY, WALK, ANY_DIR, 3 ; person object_event 11, 2, SPRITE_LINK_RECEPTIONIST, STAY, DOWN, 4 ; person + object_event 7, 3, SPRITE_GAMEBOY_KID, STAY, DOWN, 5 ; Sandslash Trader def_warps_to CELADON_POKECENTER diff --git a/data/maps/objects/SSAnne1FRooms.asm b/data/maps/objects/SSAnne1FRooms.asm index 6192c31a..3077d971 100644 --- a/data/maps/objects/SSAnne1FRooms.asm +++ b/data/maps/objects/SSAnne1FRooms.asm @@ -23,5 +23,6 @@ SSAnne1FRooms_Object: object_event 10, 13, SPRITE_GIRL, STAY, RIGHT, 9 ; person object_event 12, 15, SPRITE_POKE_BALL, STAY, NONE, 10, TM_BODY_SLAM object_event 21, 13, SPRITE_GENTLEMAN, WALK, LEFT_RIGHT, 11 ; person + object_event 0, 4, SPRITE_GAMEBOY_KID, STAY, DOWN, 12 ; Perrserker Trader def_warps_to SS_ANNE_1F_ROOMS diff --git a/data/maps/objects/SSAnne2FRooms.asm b/data/maps/objects/SSAnne2FRooms.asm index 1a9a1cb1..f69b5aa8 100644 --- a/data/maps/objects/SSAnne2FRooms.asm +++ b/data/maps/objects/SSAnne2FRooms.asm @@ -31,5 +31,6 @@ SSAnne2FRooms_Object: object_event 11, 14, SPRITE_LITTLE_BOY, STAY, NONE, 11 ; person object_event 22, 12, SPRITE_BRUNETTE_GIRL, STAY, LEFT, 12 ; person object_event 20, 12, SPRITE_BEAUTY, STAY, RIGHT, 13 ; person + object_event 0, 3, SPRITE_GAMEBOY_KID, STAY, DOWN, 14 ; Sirfetch'd Trader def_warps_to SS_ANNE_2F_ROOMS diff --git a/data/maps/objects/SSAnneB1FRooms.asm b/data/maps/objects/SSAnneB1FRooms.asm index 3c7da689..65a4888a 100644 --- a/data/maps/objects/SSAnneB1FRooms.asm +++ b/data/maps/objects/SSAnneB1FRooms.asm @@ -16,7 +16,7 @@ SSAnneB1FRooms_Object: def_bg_events def_object_events - object_event 0, 13, SPRITE_SAILOR, STAY, DOWN, 1, OPP_SAILOR, 3 + object_event 1, 12, SPRITE_SAILOR, STAY, DOWN, 1, OPP_SAILOR, 3 object_event 2, 11, SPRITE_SAILOR, STAY, DOWN, 2, OPP_SAILOR, 4 object_event 12, 3, SPRITE_SAILOR, STAY, LEFT, 3, OPP_SAILOR, 5 object_event 22, 2, SPRITE_SAILOR, STAY, DOWN, 4, OPP_SAILOR, 6 @@ -27,5 +27,6 @@ SSAnneB1FRooms_Object: object_event 20, 2, SPRITE_POKE_BALL, STAY, NONE, 9, ETHER object_event 10, 2, SPRITE_POKE_BALL, STAY, NONE, 10, TM_REST object_event 12, 11, SPRITE_POKE_BALL, STAY, NONE, 11, MAX_POTION + object_event 0, 13, SPRITE_GAMEBOY_KID, STAY, DOWN, 12 ; Mr. Rime Trader def_warps_to SS_ANNE_B1F_ROOMS diff --git a/data/maps/objects/SaffronPokecenter.asm b/data/maps/objects/SaffronPokecenter.asm index ca94086b..76df57b9 100644 --- a/data/maps/objects/SaffronPokecenter.asm +++ b/data/maps/objects/SaffronPokecenter.asm @@ -12,5 +12,6 @@ SaffronPokecenter_Object: object_event 5, 5, SPRITE_BEAUTY, STAY, NONE, 2 ; person object_event 8, 3, SPRITE_GENTLEMAN, 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 ; Raichu Trader def_warps_to SAFFRON_POKECENTER diff --git a/data/maps/objects/VermilionPokecenter.asm b/data/maps/objects/VermilionPokecenter.asm index f88552b4..61251452 100644 --- a/data/maps/objects/VermilionPokecenter.asm +++ b/data/maps/objects/VermilionPokecenter.asm @@ -12,5 +12,6 @@ VermilionPokecenter_Object: object_event 10, 5, SPRITE_FISHING_GURU, STAY, NONE, 2 ; person object_event 5, 4, SPRITE_SAILOR, STAY, NONE, 3 ; person object_event 11, 2, SPRITE_LINK_RECEPTIONIST, STAY, DOWN, 4 ; person + object_event 7, 3, SPRITE_GAMEBOY_KID, STAY, DOWN, 5 ; Persian Trader def_warps_to VERMILION_POKECENTER diff --git a/data/maps/objects/ViridianPokecenter.asm b/data/maps/objects/ViridianPokecenter.asm index 618f5798..ab181992 100644 --- a/data/maps/objects/ViridianPokecenter.asm +++ b/data/maps/objects/ViridianPokecenter.asm @@ -12,5 +12,6 @@ ViridianPokecenter_Object: object_event 10, 5, SPRITE_GENTLEMAN, WALK, UP_DOWN, 2 ; person object_event 4, 3, SPRITE_COOLTRAINER_M, STAY, NONE, 3 ; person object_event 11, 2, SPRITE_LINK_RECEPTIONIST, STAY, DOWN, 4 ; person + object_event 7, 3, SPRITE_GAMEBOY_KID, STAY, DOWN, 5 ; Raticate Trader def_warps_to VIRIDIAN_POKECENTER diff --git a/data/text/text_7.asm b/data/text/text_7.asm index bf304d9b..d5cf77e5 100644 --- a/data/text/text_7.asm +++ b/data/text/text_7.asm @@ -96,7 +96,7 @@ _WrongMon1Text:: done _Thanks1Text:: - text "Hey thanks!" + text "Hey, thanks!" done _AfterTrade1Text:: @@ -220,8 +220,8 @@ _Thanks4Text:: _WannaTrade5Text:: text "In my region, we" line "have our own" - para "@" - text_ram wInGameTradeReceiveMonName + cont "@" + text_ram wInGameTradeGiveMonName text "!" para "Want to trade me" diff --git a/engine/debug/debug_party.asm b/engine/debug/debug_party.asm index 9db6ec00..6389c93b 100644 --- a/engine/debug/debug_party.asm +++ b/engine/debug/debug_party.asm @@ -22,11 +22,12 @@ SetIshiharaTeam: IshiharaTeam: db EXEGGUTOR, 90 - db SANDSLASH_A, 90 - db RATICATE_A, 90 - db PERSIAN_A, 50 + db RAICHU, 90 + db RATICATE, 90 + db PERSIAN, 50 IF DEF(_DEBUG) - db RAICHU_A, 50 + db MR_MIME, 50 + db MADAAMU, 50 ENDC db -1 ; end diff --git a/engine/events/in_game_trades.asm b/engine/events/in_game_trades.asm index 4c703094..67019a5d 100644 --- a/engine/events/in_game_trades.asm +++ b/engine/events/in_game_trades.asm @@ -276,6 +276,7 @@ InGameTradeTextPointers: dw TradeTextPointers2 dw TradeTextPointers3 dw TradeTextPointers4 + dw TradeTextPointers5 TradeTextPointers1: dw WannaTrade1Text @@ -306,8 +307,8 @@ TradeTextPointers4: dw AfterTrade1Text TradeTextPointers5: - dw WannaTrade4Text - dw NoTrade4Text + dw WannaTrade5Text + dw NoTrade5Text dw WrongMon3Text ; seems fitting, also optimises dw Thanks1Text dw AfterTrade1Text diff --git a/gfx/pokemon/front/raticatea.png b/gfx/pokemon/front/raticatea.png index fed16f3b3c893721645e83def01628dc67936592..6e1ac16f7614814cc4e37e36b60b5d0605170672 100644 GIT binary patch delta 693 zcmV;m0!sb61;GW77=H)=0001u?PS6L00M|fL_t(YiPcxpj^i*0glc~gJ`z5X6Bsb| zrq$j)oOD*3CXUCzFvcz#{I0!ziTh81c)dcrduIFE;|M3i2n2xdIWLQd1i*Fg(~#=3 zC)sQ@AgTu-@Gp?}ne~vfl|@q@$>Fkp)uGE1!Y8vC1p+B8*MA%kvw(UhtjBM`7CChN zuBK}W_u+=Vwxa9GK1tj@S#A>K^=!@6_W~;eIKn&rj|&j#hEZZQ6l?QUCZLvoR_5&tVDB` z(NcM@s8ZPkES5p2=YtTIt5U&px}ys>n#h=3mhR9H41Xz0&S9pwW&u^HVi|;6q{F;$ z1l>v-r-g$qUPYQZ6^m7iVQw_()5BG!xn7yTk*#)09iN;;crJgL{m$aXRXdTi;AgL| zi(ZfR7n{0JE5``2rv042jHjxcFC$%QZ1i30Hcs0j6R_4~pX*0titVfK$DZ>8Z+p*0 zaXH`wynpj_RgkXa{6Ok+oCIEZW_d;szI}W&YsW%H6au*hzQt{eNU@XKPr|eTWItrA zsptdFqIOJI71R>fE91t6GOJp3I?`N3+47mti}m|7RXbH-6Y7bvx4^Ei^JiD(6ZkrC z48XiL8`ZVml-7oG;pQPQ%2IC{Ek!Tzdgm9$K`w0#wxiF?t5tmNv)qS+W%6a~^X|zRf|Eyp70ENU$ zTq8JV10AV-jDtk zDSKD^X<&YuY|GDDxh5vyu8dKWM!)!+ju-J9T}-EBtXTvZLN=-jhRUy(S>!mogoDBC zL9MS~vYMl59`ntq9Or!0I1F24+b%FT+;G2_P$SE|EZLxJ={v8_dBJ)MmxR2H`s@TsTF5+BKS3Na|=gOt*C+8P) zT2#H9drh=W*_BiMW{LRws@#|BZl>~CJ;vIwzKR=JogoDKEcr^YZh`{gS1tL>_M2we8Hd?A&dR zOQtEum2zKilf2O4Fz4!ar}OMrLk&z7_P=mQS~5Uu|QO@pRygSk?My zX_3S24;-v}r+n>t*0MN_(M@cgT4X}aVc*qz_<9^??mzsYG-1NeFJ@=1=ihJqs2g)C zKe~D|=ktgQdt(1Dv{8G`dbj4XjksQ!yy>?MSs#Rz`*|!AuH@;hT+f{Bx9aY{r55TQ zQgUhSqJ7stOKlU5;yo0#K