From d379ffef3e86f38739e95827cca3daa2cacac0bc Mon Sep 17 00:00:00 2001 From: hedara90 <90hedara@gmail.com> Date: Tue, 20 Aug 2024 14:24:42 +0200 Subject: [PATCH 01/32] Fixed Confide+Crafty Shield interaction (#5202) Co-authored-by: Hedara --- src/battle_util.c | 17 ++++---- test/battle/move_effect/protect.c | 65 +++++++++++++++++++++++++++++++ 2 files changed, 74 insertions(+), 8 deletions(-) diff --git a/src/battle_util.c b/src/battle_util.c index b133b7c629..c2e05cbd4e 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -8560,16 +8560,20 @@ bool32 IsBattlerProtected(u32 battlerAtk, u32 battlerDef, u32 move) // Protective Pads doesn't stop Unseen Fist from bypassing Protect effects, so IsMoveMakingContact() isn't used here. // This means extra logic is needed to handle Shell Side Arm. if (GetBattlerAbility(gBattlerAttacker) == ABILITY_UNSEEN_FIST - && (gMovesInfo[move].makesContact - || (gMovesInfo[move].effect == EFFECT_SHELL_SIDE_ARM && gBattleStruct->shellSideArmCategory[battlerAtk][battlerDef] == DAMAGE_CATEGORY_PHYSICAL)) - && !gProtectStructs[battlerDef].maxGuarded) // Max Guard cannot be bypassed by Unseen Fist + && (gMovesInfo[move].makesContact + || (gMovesInfo[move].effect == EFFECT_SHELL_SIDE_ARM + && gBattleStruct->shellSideArmCategory[battlerAtk][battlerDef] == DAMAGE_CATEGORY_PHYSICAL)) + && !gProtectStructs[battlerDef].maxGuarded) // Max Guard cannot be bypassed by Unseen Fist return FALSE; + else if (gSideStatuses[GetBattlerSide(battlerDef)] & SIDE_STATUS_CRAFTY_SHIELD + && IS_MOVE_STATUS(move)) + return TRUE; else if (gMovesInfo[move].ignoresProtect) return FALSE; else if (gProtectStructs[battlerDef].protected) return TRUE; else if (gSideStatuses[GetBattlerSide(battlerDef)] & SIDE_STATUS_WIDE_GUARD - && GetBattlerMoveTargetType(gBattlerAttacker, move) & (MOVE_TARGET_BOTH | MOVE_TARGET_FOES_AND_ALLY)) + && GetBattlerMoveTargetType(gBattlerAttacker, move) & (MOVE_TARGET_BOTH | MOVE_TARGET_FOES_AND_ALLY)) return TRUE; else if (gProtectStructs[battlerDef].banefulBunkered) return TRUE; @@ -8586,11 +8590,8 @@ bool32 IsBattlerProtected(u32 battlerAtk, u32 battlerDef, u32 move) else if (gSideStatuses[GetBattlerSide(battlerDef)] & SIDE_STATUS_QUICK_GUARD && GetChosenMovePriority(gBattlerAttacker) > 0) return TRUE; - else if (gSideStatuses[GetBattlerSide(battlerDef)] & SIDE_STATUS_CRAFTY_SHIELD - && IS_MOVE_STATUS(move)) - return TRUE; else if (gSideStatuses[GetBattlerSide(battlerDef)] & SIDE_STATUS_MAT_BLOCK - && !IS_MOVE_STATUS(move)) + && !IS_MOVE_STATUS(move)) return TRUE; else return FALSE; diff --git a/test/battle/move_effect/protect.c b/test/battle/move_effect/protect.c index 973033bc33..aca5ef859d 100644 --- a/test/battle/move_effect/protect.c +++ b/test/battle/move_effect/protect.c @@ -482,3 +482,68 @@ DOUBLE_BATTLE_TEST("Crafty Shield protects self and ally from status moves") } } } + +SINGLE_BATTLE_TEST("Protect does not block Confide") +{ + GIVEN { + ASSUME(gMovesInfo[MOVE_CONFIDE].effect == EFFECT_SPECIAL_ATTACK_DOWN); + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(opponent, MOVE_PROTECT); MOVE(player, MOVE_CONFIDE); } + } SCENE { + MESSAGE("Wobbuffet used Confide!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_CONFIDE, player); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponent); + NOT MESSAGE("Foe Wobbuffet protected itself!"); + } +} + +DOUBLE_BATTLE_TEST("Crafty Shield protects self and ally from Confide") +{ + GIVEN { + ASSUME(gMovesInfo[MOVE_CONFIDE].effect == EFFECT_SPECIAL_ATTACK_DOWN); + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_WYNAUT); + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WYNAUT); + } WHEN { + TURN { MOVE(opponentLeft, MOVE_CRAFTY_SHIELD); MOVE(playerLeft, MOVE_CONFIDE, target: opponentLeft); MOVE(playerRight, MOVE_CONFIDE, target: opponentRight); } + } SCENE { + MESSAGE("Wobbuffet used Confide!"); + MESSAGE("Foe Wobbuffet protected itself!"); + MESSAGE("Wynaut used Confide!"); + MESSAGE("Foe Wynaut protected itself!"); + } +} + +DOUBLE_BATTLE_TEST("Crafty Shield does not protect against moves that target all battlers") +{ + GIVEN { + ASSUME(gMovesInfo[MOVE_FLOWER_SHIELD].target == MOVE_TARGET_ALL_BATTLERS); + ASSUME(gSpeciesInfo[SPECIES_TANGELA].types[0] == TYPE_GRASS); + ASSUME(gSpeciesInfo[SPECIES_TANGROWTH].types[0] == TYPE_GRASS); + ASSUME(gSpeciesInfo[SPECIES_SUNKERN].types[0] == TYPE_GRASS); + ASSUME(gSpeciesInfo[SPECIES_SUNFLORA].types[0] == TYPE_GRASS); + PLAYER(SPECIES_TANGELA); + PLAYER(SPECIES_TANGROWTH); + OPPONENT(SPECIES_SUNKERN); + OPPONENT(SPECIES_SUNFLORA); + } WHEN { + TURN { MOVE(opponentLeft, MOVE_CRAFTY_SHIELD); MOVE(opponentRight, MOVE_CELEBRATE); MOVE(playerLeft, MOVE_FLOWER_SHIELD); MOVE(playerRight, MOVE_CELEBRATE); } + } SCENE { + MESSAGE("Tangela used Flower Shield!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FLOWER_SHIELD, playerLeft); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, playerLeft); + MESSAGE("Tangela's Defense rose!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FLOWER_SHIELD, playerLeft); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponentLeft); + MESSAGE("Foe Sunkern's Defense rose!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FLOWER_SHIELD, playerLeft); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, playerRight); + MESSAGE("Tangrowth's Defense rose!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_FLOWER_SHIELD, playerLeft); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponentRight); + MESSAGE("Foe Sunflora's Defense rose!"); + } +} From bd38c64f298ea64c1b1051181f1aaa7ec1697cd8 Mon Sep 17 00:00:00 2001 From: kittenchilly Date: Tue, 20 Aug 2024 13:16:32 -0500 Subject: [PATCH 02/32] New Garganacl and Naclstack battle sprite + various battle sprite fixes (#5142) Garganacl, Spidops, Wattrel, Kilowattrel, Shroodle, Bombirdier, Orthworm, Veluza, Aerodactyl-Mega, Medicham-Mega, Latis-Mega, Diancie-Mega, Ponyta-Galar, Rapidash-Galar, Magearna, Landorus. --- graphics/pokemon/absol/mega/front.png | Bin 1028 -> 1001 bytes graphics/pokemon/aerodactyl/mega/front.png | Bin 1135 -> 1070 bytes graphics/pokemon/bombirdier/front.png | Bin 897 -> 877 bytes graphics/pokemon/diancie/mega/back.png | Bin 934 -> 856 bytes graphics/pokemon/diancie/mega/front.png | Bin 1171 -> 1118 bytes graphics/pokemon/diancie/mega/normal.pal | 30 ++++++++-------- graphics/pokemon/diancie/mega/shiny.pal | 30 ++++++++-------- graphics/pokemon/garganacl/back.png | Bin 526 -> 621 bytes graphics/pokemon/garganacl/front.png | Bin 837 -> 951 bytes graphics/pokemon/garganacl/normal.pal | 30 ++++++++-------- graphics/pokemon/garganacl/shiny.pal | 30 ++++++++-------- graphics/pokemon/kilowattrel/back.png | Bin 550 -> 535 bytes graphics/pokemon/kilowattrel/front.png | Bin 608 -> 593 bytes graphics/pokemon/kilowattrel/shiny.pal | 4 +-- graphics/pokemon/landorus/anim_front.png | Bin 1501 -> 1491 bytes graphics/pokemon/landorus/back.png | Bin 948 -> 885 bytes graphics/pokemon/landorus/normal.pal | 6 ++-- graphics/pokemon/landorus/shiny.pal | 32 +++++++++--------- graphics/pokemon/latias/mega/front.png | Bin 975 -> 897 bytes graphics/pokemon/latios/mega/front.png | Bin 975 -> 897 bytes graphics/pokemon/magearna/back.png | Bin 716 -> 646 bytes graphics/pokemon/magearna/shiny.pal | 20 +++++------ graphics/pokemon/medicham/mega/back.png | Bin 792 -> 909 bytes graphics/pokemon/medicham/mega/front.png | Bin 1002 -> 889 bytes graphics/pokemon/medicham/mega/normal.pal | 32 +++++++++--------- graphics/pokemon/medicham/mega/shiny.pal | 32 +++++++++--------- graphics/pokemon/naclstack/back.png | Bin 555 -> 389 bytes graphics/pokemon/naclstack/front.png | Bin 711 -> 551 bytes graphics/pokemon/naclstack/normal.pal | 30 ++++++++-------- graphics/pokemon/naclstack/shiny.pal | 32 ++++++++++-------- graphics/pokemon/orthworm/front.png | Bin 700 -> 698 bytes graphics/pokemon/ponyta/galarian/back.png | Bin 721 -> 661 bytes graphics/pokemon/ponyta/galarian/shiny.pal | 14 ++++---- graphics/pokemon/rapidash/galarian/back.png | Bin 738 -> 663 bytes graphics/pokemon/rapidash/galarian/shiny.pal | 6 ++-- graphics/pokemon/salamence/anim_front.png | Bin 1519 -> 1458 bytes graphics/pokemon/salamence/mega/front.png | Bin 1102 -> 984 bytes graphics/pokemon/shroodle/back.png | Bin 402 -> 387 bytes graphics/pokemon/shroodle/front.png | Bin 396 -> 381 bytes graphics/pokemon/shroodle/shiny.pal | 20 +++++------ graphics/pokemon/spidops/front.png | Bin 800 -> 766 bytes graphics/pokemon/veluza/front.png | Bin 698 -> 574 bytes graphics/pokemon/wattrel/back.png | Bin 554 -> 437 bytes graphics/pokemon/wattrel/front.png | Bin 625 -> 492 bytes .../pokemon/species_info/gen_9_families.h | 6 ++-- 45 files changed, 179 insertions(+), 175 deletions(-) diff --git a/graphics/pokemon/absol/mega/front.png b/graphics/pokemon/absol/mega/front.png index e7656154da2a58a0892486f637a9751924d2feff..bc89ac2de0f156fca489866bf0ac589db5cb6ebb 100644 GIT binary patch delta 933 zcmV;W16urq2c0004VQb$4nuFf3kkv=|u17}G@K~z|U&6bOf z;~)%0V?)4U=l{QV{o<7bT4}V>B2C*#xCh%9o8$N&27rDcemC#=JlKnPejxb72j^P= z1epkR`U4Qpb59Te7=c(}Mn~72OPl^1q_r0jfS!!MOehfSB9$AxwICmH3J3 z7X%KH$Yh#-zzpDjr+DrG!AF)qfHa0sURM1p0DRrbfc)^F=|@0IOqlgaU4Su)U4N1d z(N`Fl;ckCODT~qR6+q<6Fk%GQu=vTyc?v?;50+wer|VPI^O&;P0oSO105YreLkArX zz!l>NNR?2NPYiF%(-RO)pM<5p7I}(b8OVu{=0PZ<1EK+cvhStF5l?>9PS8#76CFV_ zAfoL=1z7Gj1plO4-WWg#NsPg|m;5C44eUmc1k8pJ6LF2^N_jjzK4^P zs8VctCa|nX48-oXye&2#7g>u!{4O76Q5h?GF1?}HNr;nIw}#vq6^lNt{mz`L^B08-X29y9_9P~tD~QCEE| zJ^L^NWNltOWzut=7oE++$UZQEuoE&b4N7p}4q!%bkXc`kWisd4`&yB<1W7pFHr;B| zE5NcRJMohNWQBvO1F7dfBU0G{B)()PuQ`zBQ~UvcAdC*U8PE&iwt-X2{qUkM0>EV^ zIiZAR08}5Kd4L93TOlO~Mguf~52&@6>tLkqWlB;Wh6sQra0e6y@W)aQDjc?et1oZP zLGA+yplkt3=vyEFYJgItloY_F69!1o0YF@Y4q~i&M-3o*HtN-^i!th&YQ$D(0g%NO!lQSM132H||z{U5EQP(X%(iSnH-Az8j!B@!nRXA0c(ikhph=3miXcwif=5w*u%I1 zRLBb;q5!yKZrb{e8c|P%RJCPW-<##7U>CvfNWawoVGd00Uh~L_t(Y$E}pVZ__{&$1f3s#~ddat5XOB zMcv$2IT2%UB?p+QS|X!s>1uVWA_}7u8*?+Xs2R&pMgC9tuXyk5SUwk+cuO4L$KUt+ z*nhCzfU(gZ-Zduh&&jX@xQy|C0m5b6Z2?bz!qYCmVZiucPj`VHxPTg<0WM&0(g6er zKn=GR=m5O|2_RAlu$~9UVHgfu83>5M1Bhw>;&BH6v=v<06~N&L&s%`-2!QFcI!~bm zDxg2qFEnrsQI%#-3xrCkl#Peva)qA*$SdKs0EOSo(h5MsAf@~iRWXr=4_ftz9ASEY z;Kd-(>W(3>%nV>E<7+%m*dAE=6%db4$pg0~okywx`~bW#jN$b-e2!HVwybP3(sMFC zL*Qc=o&s#nGHOE&Bp4hKRt?NC4+6mBL`3{cT^|Je%nSV&7)74Nl%uN!ZUQV0cG0>) z0Q@;<0I>bQ@mS@4iux339;i7SkpRqp-~fc=B#`?WAj`AtojxXjM#07uRj%@&1{}!V zAJs&5X-f(r@dIWB%>;_YuhWVs(0>e0A@j8IuT6>DaQUqQ;%N~n8$(Q6Gum^H!|hg= zySQ``navcl+JJD6Z!2J0$ml|4aK#LB*09)Y?`Vt)TiW>RngE8GFSY?5B+^lTHciyP z1UO`g!lCjKiEX&RhtvebESt)NJVaE)3%Kk6R+@n)$U{_hx(hI-fvNUD7O}?w_P{G@ z0eR0@*U4+QPEvc>^${>G70Y!g1O$>4-6Z|Vu5aEtYbkUHj$#_v?G6o~mq_6i2&^5; z!YtHoSDJtKnaD%~JY^iu%loneq($_w z!|)tTNfA*RBXccPkvur|#b>UE{h%zL8o*R4)L0j*nN!uJqkuI~IA;7SxM~kf+5&jz z$&@MXG?(LnDS*q8Fl*ER{llMa1-h1Sm#hg_D{zT;`8GdnHqXl6V5c#EPb*c_cAABk zY8y10@x{j}eW-6FoPC?pwC>VoGkhsm=po$$+DB_|o`gR}@=De(vd2r&KbzmaN@{`r zif+k?2?U$vWG~qN4%1iXp)rqEY6Z=U@lu{|&rcq0Me{hG%kzb~`ljU*rADdscYtEu i{QbE0$o{J__8Wj}Odt*qc?P%u0000c0004VQb$4nuFf3kkv=|u1FT6zK~z|U&6ewS zqdE+QkwoMKhV=d4_GnAOmp~|I&7V=bR-3^7tgG#5`fDR1{9(Q?8Q+z8HUvLz0Yb_T z9SA@?ZUS7&Twvk)G(De=xQ-&9nWH+Hb`IMKua}gWE~ChYzP4+{ZR!ab1?xG$oe#A+ zEU(vVsZR}H1Y%!*q6ct|Dt%9}n0{G0zPnJY7XIF_?v4N%j=OkRzIOrd4-wcmiC`uw zp*`voAQAyE53WaUgy!#h5CoMK*V?MBQ;cB0GMT;u91@*LAbGeAi8O*aPrkr62OtIXT>uyHO;)%|gah;v0R2{F^j64JR6rlWk+3+y>aD1`mgWHO0KEh_0?YaKqs@VA>W>th zcam#;`x*cqLq@QKeIan@A3|D4_HV)kM6g7hX87-r1g@LFy9I4Dh`e?pJ&v464b>n~r` zzTxi{hjwi1*aNJqU4JFFaR|4pBpwr=mxQ^78Ts?hJF)wfLzb)y&)A~ zVsAA$o}dH=wx4aqFe}@>IAcHq5VyHh?`QZ3pp~HBHa{5@N}mXCZn0y{jHvVmfOde@ zYOt=DeOrqIkPc8eJ0aw_d7c4cHXJ~CJJNCS zhyer|T*wP*PN%AOo#J*v2Yocg5ulmTf?YP#qhA2QXdk!&aH(mUsKFOPZ`^L`=)E3E zAo9NfVqLX|C%81+Aaqwu8T!VGd00YQLL_t(Y$F-C(Z`(!`$4?}{XbBLSYB_YV zpF?^jb&ePTMF86eb1n;JK1l(Y6wN@Nq1!tIR8|2+=qXbWX!Dez1^OWhbP1GxfFj5z zNZofwT9jp_oqCJz_Ivh2 zp#olCi<(7J0C?$RodS}eCpEB=J)2AWL7FDD%w$ivQmj=_+X$t209m~nyHaZ4=M~VM zHG6^*sv8n2?{Q=+i@2e@Iuti;Qa}=MbjT+f z=;`nMfGmDW$7z!H>y40J1GL@7V}=K<2JpV%E-w~~#k!SVlBQvQ?x+bi zr1xxrvdYEVcAt=>-@lV0KrexJ;vXV3m-1{^1HDrWzsyC;CUJW=}V>T l85Xzx9oRZD^1ls2{sDarVx+3^&WQj3002ovPDHLkV1f{G=mh`( diff --git a/graphics/pokemon/bombirdier/front.png b/graphics/pokemon/bombirdier/front.png index 97159715f25cfccdb4311cf70ae0b1a77afa006a..b8aa83644ba1f142ff37e0e980d17ef7b4ef173b 100644 GIT binary patch delta 796 zcmV+%1LORG2ki!sBnkm@Qb$4nuFf3kks&^R0_#acK~z|Uy_SK_s~`-8g{BB9`u=Zw zPYWtK6!tH$VLGbi#(

OMX+f)Yks{TF&?&RwWiF#*OmfH_=L z18QaP#{$siJ`w<4SXRsf#> z?=(!V!g~>R0203e#KfDvumDC;hQon>R>2seriDF=yFTxuH4lW+f@Z;Y19>C5l8|t8 zcOYZ*n8BUkd}>O2IxtS!=-I(AxKr=Fx87r|EiAP31Cb!C+}?Y}8-!~P<}HJSAR4Vd zLI5%g2#>#74ss<<087!7pkF&2DBvKlT*!HszxT)!phyA$=Y${$bm~3Y=mg+@w0Fru z^ZsZ)W)gh?kmkt_T6#Wuz-b?dM$QKXK%D_0;9WiZQv*(U6uk6(x)eR~Pm>s?Fobz} z089v}0T$W?AqbxVkQ<6bQ2j5LQi+%__bTxXHl72#J9vH@L)ZNLkF=>)_Oq<;HXI(&G%+(zqV zh-Dk`F7#4Wd+E}IK<_!c08j!Ie-A^s9z4R1U!Kt9Sh2imumGAZuzu6vrYW;-{f-UrY0LcM;pP!=+dAB}WKpMOi z!O-^tvEHFLr}ja9N30k5cj9bytRMGc;+j|mFQSqm{GdE5e0f1f?QG2ON4A8JBeXb#dKXlOu zM(ADhSLi)$yU?y;2K09TT3odBx~eyZoEE4a0P;7_FBZ&%P$zN*kk0^aY(WLkAW*p0 z_m%#thC4vt0C>ydf364{Knx%oAb1NZRk$z00zl#ifSS0|R~Epi%CI`HDiAS0T3E6; z>dQVlx**gREDJdrC>!xA2@TIj2RcTV85{{dPymnHJuwS&iT zQiLo9%mN4le{7^CAPtFCo{s`GAfj&onBIap4jK(W!q?H}(Tf4}SOP(U7uo<_G6zFb zpLm%%UTVsW9n1!-h+Rx60gxK{6xnZsi_d0e;-b%oAxfBdh(kPVWKy}!qKK~|Odu2k zwh-HZ3xMi$PBCizmRnwZ1YCaRX*a~Wjd)dht*YB~e`!Xb_dG5DjKI~;U01IMkFn#s z*3x6e$!sACc$}hXJojcM$PB>q6ua?EaI+5Qtbj*-$K#3M<}HO6fXODOp`YCweQy1c zSAwhb?*N(u`o8=hwaQ=Xiv^@1a}@&pTYyy|pCJVTJJWmpYGHvmJyE{VmnziponHHQ w+UxoGC?G!~rk(sdaWTPvkuQwzt^Ydy0Vbp-S0oA0vH$=807*qoM6N<$f{K5Ai2wiq diff --git a/graphics/pokemon/diancie/mega/back.png b/graphics/pokemon/diancie/mega/back.png index cb9a177a0d55682f96e4e8930397d5d47eea1a6a..3816c40d78e86db71540b37b03a0d07003f7ce32 100644 GIT binary patch delta 845 zcmV-T1G4<42iOLX7=H)@0001;w}I>c0004VQb$4nuFf3k0000mP)t-sn9!g;JV1;s zW2QQA=2dzBbm$L2SuL@Xr2zhXHJV?AtKjM zgd*or^$M_ZbblL0>doPm@S~Sm>9pT*B@kW-S3TBhTslVV`v%YuT76TEYs<+ED?%o? zJAGaRe|lELC7lkM1Adx7RQvf?@_#nw15}4*g+BKH)nT6?mC;tF zWQ9I=85YvT3~>YSF8M?H+yh!f&0;WFKI<8<4gi7>2GIo|%Ttm&T1N(yunM9{AR8j0 zm9l)D7!bg^67>LHTmh_>+f%&~N?5FIAy`q%nCi8X@-flZo^~{!6|MT4>lb}#aRViQ zocV|uL4S{WeJE`E^=m0XVvN2bo&fw*sA~gg2gYcKmjK`gNfIcacEei-05OsQE zBtRiZxL5iml|XiZw-2&h@4eGo0`K;HX9y(qgn!WMI{+h^yMqwDe$ORHfSzz?0lEb! z^>GF45T=ACVKR^sXb}Yh5N3cbKo2<2a}&nY!X=<4XaI_UFxiNUfs^tlJ_7^+VHlz} zK^``*7V+Wl9)@Oje8gmWKFANFL>o=;OW6TjY+D-^f9pP3V zKt`r69Y7wYEmyH3ZUF&6^;`MJDmCIJj16MAdng-y0G`Ngv|jb`q X;E7iUepH|4BqaRDVdv&6GcD+dvq`6-^m3 z_~al8=@6elZYT*z7jBoicz57}hb*?P_W`)N88l_L3!b`o z&)D})vaLV)06DPr=YD#g=Y8)a>)i~y)4qqQ_w1-eAW;KElh~7AYJg+hyrGLDr0aUV!&K~2`I+T)eB&8hHEPct?=x`{n2%N}BmcSm`0fKQ?Fm}#h zfPoYvouo)+BLKi-G$euz2{i(c5t5dGKpp^$cL^O5Lfis?`LY+byns{!BnXKK3G_VN z0&deRUtG#kVk00;kWF(uIWT~hC77}L(KPf%w}OMo^r>Xc9?Ayiipz!B{HN(9}BDTNLY1HefM99LFzN_7i72cr-G z$|6X@`jyp;Jq`5W=XABl6n=xp3P3{F*qfB_G{hByhsuuWX<`RNAV^OhtOgMpARts= zILec+)qg!@<8FvcKsX>Eotxt-VD)j=EG7x5qdb^bj}1WK62PJICRp9n9Kb{AU{d!h zRJgB{stZ^aMktVCLIQ-99=I`YAvbma2wZWc3EUKbB_&}jB6#We5WnGI*#tQNz<%X? z*nb1q_mB^OX~kO#`}0cxSOmp7z5Gr!inI>q{D1n7PgtZd{+Q>_Eg<2X=RRx%mE?Nd zH5~R~o?psy0KOUExgjv$0fj_1YYXt(*Z}t$;CWkMY{vqsz}f?@+5$7El11qgPBL@Z z7AS!9$y`=FN`cSN1`VVi%=Ne-aQz!gS^z&YUh_D}3Wpz1C4}syKa)C8I+Va-iI0-H zM}LuN1{nIE?LuZ{At}{{G9_z-;{j^Mp(^@LE$SB79%G zm|Y)$!|7|$%W*ZrdWmEG@zEBmb&_XWpm2Cztn327c)eJ`if1+8`hIzQraxceC{0&q y%Xw~y+14SyJ+spdkp9ARZixD(d9TB={uKjh@P;_$aK%^v0000c0004VQb$4nuFf3k0000mP)t-sn9!hEP+4|KGlD*=!e*A@y8!XIR|FEqOudx_`SSB3+krjw@cHnaOS6 zdq62UFG~?Ah6Y5=0{Llc?7`d+#!0}Bo^iK_Recwyd z+nPc=>mM8FRe#0G0U(l8wSTG)K+IZZ2!)GT33#d}LG*>yG{*eDk`vJDb3m6}UyI2& z3jPIPF-<=MiY3He8ldl|={dm`SARv|{(5=xve@(^AZY{+0xvB9PYG&EafdcBa{;km zEa-&symQKX&c7zN=N6Ru*tS(nxdTw15g?yvfB^BHD}UHsI=9urcS6Xg%w6D}jE-YS zuogxMz>+KBBcjRyfPnxANgJRnxpnw}Xm2OQaaf9XJuH-1jNZ2xWb1Q-IM9VTq~1B5 zAS7f0o3qF^$~6^wAPdJw?uBQWvn6b0>i0PR67=-Y`(CjS<~YP=ObC~i7dfR$uYmOt z4tH5zu*3T&$!}IL>G8@9d8BbIyiPw5#){l zwqdLU5$=!5(6a?y8X$HMmVg}q(2tP_ViT9QSHd4ay+fRMFVOk{;O}|nq+m^BI=n>z z)fGSl)5q|=0eCT^`5^JSy8v`qHao*Gtg)Zk9Di-_{bZ-=3gD>o2fz>vKLA$3(SbV+ z3hk4U)vp9zV5Ih^Jrtbi3dylNS*P(gQM#ooQl^QiTjH&Iz(#EAgZ6j2wTxY7pL2=WPl zx__t{;0NBKG_m-;G(vo_f!;Mc0C#yePzh0F>H(1PUhFSmyUS6L#f}LNag3>Mglx6i z0d%0J^%LX`x2xQ5|{(Ah8mox9!Z%de&cBIA{QXsIT_h@1HAR z-|4lB2O#RiYQ7c9h_G&^zXl@ywM!7pI>`6pHRDVdvebvv48dn?u@HYzC zITfGEuw|i)Pj@tJgdJZx^iT?0$GK=zuz_x;TG`_=g&x(S6Kx~E_adr1@(icQ&m zn)9TRZbk!-Rex=Vb35mhqVgub&umuZt#Z!8SbrZ_WymvDE7KCToe1zLbdZ43rd`n@ zK>T6V0pNH59z+che`xbIt9h2!d_W_=hRL}DBT}AC(TEOctE06z=VfZUK{^`}W*WyDc862uF?yMKdS_toxKzia}(eVzOnz~di= zk)U1pcw6-TxSOl_8$iCdEd)6=YQ7)U<3*K-V{vkPYE+&?0rl^iUJ$23oEq&X5k1s? z+tIh43vo=0RzwfA@3*pK|-56%qEKKFfbEAPLq0ni**g34$9 zx`4d@V}Hfgzdd($&hjzdcKd5W4L_xuTRWsm1|N2E&c0l_85B6^wEjKOXo--MXRQPh z{>`AE zsq8$w23-WdVP^l63%Kkb4KCs46-OPYJPdoNb$82+kYhj2k;5kQvsO0LAnfV+6qEZX+1KMFcIuVO^8Vpr@R$iizH5TdVuaC>L>5o=rln6kzs$a;IXLHmHPagnhG3E=paRo+_x zFn`J&R&Elb2}z5Pzr6e9R(Tz?8E+0pE+J>u`5WJ`Y|ExdWedQ%@k-UYHyl|hp7M$S zXbVatRzbDK@4XB(k6X~D4?S$lN*pdhJq{!IFM|<0ABrKMWtU$ARe~BViC`L}oiE{M zeB)<5%eA)I60jFuDZ^*eU}QsqU@8o1xqqav1ogu@$)-5{2)-qxgW20=mbzhYG(Q=t zP_Ra+Hk}5+=kjm>8UDo&=b{(_XEs3xMG2rU;s5DKzflMkShpfOT@!Tl#%~wDQ~4Vl^ZNCZDg29`4*N9E8mWo zsn0R=wAKL*=Ll~Iq$TE4tOYE}Il_=KEVCMNaZ%-eV_szwTU0?e%_0t;AB;CNz?%YUZqqS~)S4Vp@xH zV#Snu2nYy4F)3nFO74po_U0H`N;&4$%>V!Z=TjZ60005&NklP#jDd3ePysapWZ^$UJvLIJ4%JeR%nCIa) z1N@h&R>Q0g0e`zc_rO2(4x|efEgfPPz%5r0AyS>f)1b| z3;_UiNWr%?Yyr>?B#=%}*9D?4P`{op5?vig0J;XyMe&z`)LeHpZ3N&>W+1q2-?I`l zQHVbRX8s6>;h*^vzz(2}VFIi~>&pG&VIYqYC?Kh?pnu(V0N@lb@K->XMiATZ9R=#| zF(&}P@C<-0poK&JmO?#@W*N)?m{0WRUwmr9dI0Dh6n~#W0i=ZtpmRVN#TJ}fau?`% z7ovX&ht>Fg=e;X!4CjD>q95c`AFZqMS+Kdf)j7AN2QC+1U&Qgb{6M(8U+?qwZSx%< zG=8*z&`klheE&#l0c<{+CW4UOSRN!-2IQ4T@uvr=0&IF^0XBq3&7lH_YzgEa;sGE< ia6|(5=%bJRh<*Ut+#v*>`b^;f0000s}D=1x7P~5+>k%M~d=GqPb000nlQchF<|NsC0|NsC0|NsC0|NsBZA+nSJ00DhT zL_t(oh3%H>Zi6rkg=;%BMRJ<=f7{v4g-gO|}>(;GX*AS@& z{D6qyZoriRbRJ;iL*Ue}04h4jA~a(K*pG;ghJg%Tw5j4(bBv`3-;q=-#AFDf`a=cq9z{n|KTmFbn~lXXc>< zJPHUQ3rTOm{|XZC}JC23DS}GEkKK&0p^bpaxJ>?+5kls zhPeRbU?*IZ)f`j&etz!(MDlu8wE9;w;EJCzKpvuber*e4RZG^MDg4m_n9;T;HIMu-YP()S3!2pJ$((`5ds_=zgOMp6JVY6N@FJf{dy0kR+n q^_Kv+0MPm){#wQY82JMGD}4c|!x~iXThx&N0000V!ZRFMq)0009uNkl zh|VKY#S+8UTF^umA#m4uCs- z2(ZvOwg`S*O0QlAgx{9Z{PzgBe%h!J@t_pF!q0sh1qLGlPb2Bbv+^qUkybud6m zY3)F@8~(&Kb>vP9%&%RUw^{_1%pS!gF)oNe>g6ph>iD2!fpT2Tgs82)*Mcdu38JEp zM*yMQ9YCxWsDETPiE&@N3osFgzP>4bcL3c0xPnzRWd4QE7{QNPLII|JFUsLHpabA1 zElt3xpsH4q8y_sh*Lxh-sdW)4lthu#pUn0=RLnUb91Q_jBXc+zz0#6n9G_CGi^k=q zrMw30Jts#1-3IItkf@yjbRQ6cJfF||Daa5fX|?i`=zq{g)B!X9GXQt#ARGbl4PcNO z1t^-qb69TWo%w?>SSdcnQ6_dRAgg~$TPmewEM$Dw-~&=AzFdEmEN6Eefw*m3!Y7Y_ zKxe?Zt|I`=&Mp?*5yX-onMzB6s6W>TIj;EY1kg8thFF#aK(s)~`hE-nH9tpbT1P8F~RT&xBe%@oumQ>9F zg@WwIF0j3bJQHz%-o8IX)vG#a5;ilPpj(!gkbhc}z5>)7eCDX_?Yfs%KwHXIfS7IOd1 z0fPCn#^VWrePg-+!e+)*cCoj}31Dxt5zyWpx`Wv3_Z&ceFiioSAi7)5-c)R7jOWvb zD}XxSIDJ#E=eTCg)=E(uIBd-6wJQ~&h+uz$CNx~$K>&@k300000NkvXXu0mjf D0)nV% delta 814 zcmV+}1JV4q2gL@EB!4haOjJdg)1|Ysv)S3%^78VEii%A#CX{Ge0001HJuJhLd-ano z`|>s}D=1x7P~5+>k%M|SPY5*t000nlQchF<|NsC0|NsC0|NsC0|NsBZA+nSJ00Oj0 zL_t(oh3%H$-hJ zU;vr_fPVtmRO^}m>FYboLK_(X()VpTlnkIAFrP~gupa{KmwgYwyXO)>6I+Y8+@{Le zuLdB!xC=vUD2v-7~)1B_#R0&sEP_W@uu zh;9H_mKdi2i&Hgb&Ml~cd(p^WBmq||_Dwj!?0e)z#D8MP#}`>K+K6AWA5i=$&vZ;) zT9XmMS{ZtMm;L#Z$pESZl2z=pe+b6`L=J$hB=EEaTL7=Z);+-<;*OmY;D4T)OLXcV zOXf_#VjV&Jf#6@S0h}xV(4Saq=OUYlWlNyrCwnQ+04EetF098cJs>dv$mTJ&fK&u~Z0cVK&0!`01OV+hfHFTCLiW#ubj09q z2$ES${ypHNl*3V1#9MBYoW(e6;V)D14B+oPKmaUo?ExkMbeCZ$`AYQ#V7-Kt;@c9S z+)(&$z-df*EC~Q_3qY9)kOlSn-~%HO6+n5caDSY8weJA(L|t`65i-_xl0ylABjARt zeFR*5Ix@f+c)$hGXeH`kO9s?LfJek9J&LB4&q3>c)92mJs3{m+P^70^dZbHIZbNg( zQJTq6&t9XKB7TdVsX;&cmrJ$+>bQ;oou&cHJ)p#8hz5WQ-2iS0qYSQc_?rN}wsc^x sFDIn|ptt?;N*e-ZtVg=NK!3M>0S7xM&o0zD=>Px#07*qoM6N<$fkh>GZx^prwCo0M^H%m)TbQEQeijGnrg#0s;aFKQ1&hG<;bI;#R~cctj)^Sa>i_o$-}{fkB`o$S?Rm O8aS)CY0Ac|wTu9lG9|(Q diff --git a/graphics/pokemon/kilowattrel/front.png b/graphics/pokemon/kilowattrel/front.png index 3a8e971644638c9ae20a3a4330afc78b31bbe879..fdb1a38e482218abc0eac631f7dd8bb7b81fa5b2 100755 GIT binary patch delta 24 gcmaFBa*<_%3KwH>kh>GZx^prwCo0-)tbWP}0BvRoN&o-= delta 40 jcmcb}@_=Q6%0xqJDF%U(Aiv=MXyB~krYReY^Z$Q4dH@C+VVthJE}hjT ztv z78uDQ_l}{jj?~*mdI6C1ehAz>4t`xxhSDtuz`@_HBnjVGOM3Id2&X)&&(t^ALOs4k(`Vijl3~(<< zi-!O%j-nGk$uqz>>Kz})?qSP-UC+PB69FG(x%WJgq(?$WK85c$0eH_ZxM&UPy>|zo zm%J~v_Zr@qMxJo$ADf4y@6Mj+*VRIpCfIq!(%j(!N(rEmtZNs5o6mA5K%)SbZn1w( z1pZwi)Ou-uN$z?0@>(S@Ae;sXybm1#yfCZ+0QgD^8)md<(jl+6|Z7of;1{Y2068nC%&p0pt|m zJcddSNoVC7jp+Tp5Hf()K{x>3rPVG@5~ z5Bh?=vW|t1*!>gMr8>IK?h8sAjpcabiDhti!doz=xHga2O$%R=ZV=_Mt$#w0y2Q% zDS)X4P%;7+H1zQjOHBNMQK@J9nSh(jw3-HhP!lj)c*d|IgbJm6zR*TFkK#)~@SL0w z8lZs)K%ZB%%Wg*jGRYT2o|Ah51#wQrk<+1nL~=y~a0lpoN&^>I*Hj$(#dM1#DMPVX zIZp=|srR``>Xn&H06Do5h2NRwT<0nE4%P-sJUr7ODko_L*ts6n5cmL1Dg8VUQ0l2z z<_*#$fTST-<*9g+w^V-ta0zC3YqbfGtNIiKK$6Esy#o(JNd!a;j|0C8AyN;^(JLH( z1vBj_?U1Pp1AEHzc*>`N&B7!5eClkx@BgU%=>kD4{Evvj|3AJ!I4%zaaA*69mRDUm z3?5z})b>C5|M3fimi>R=|J(L|7@*q!u?qy<{tsOs?7ICo%fJPK^j_Nkc|Pp_zy-qD z{+2mB{0u6+kc!!&;Voh zzvuo(?Y{~bw*T7U{=ok0_XmT2_FoHO-2Q8XA^T4il%7bgO1k#{wn*jYI`;n_KsBCj z|C96X67KCkg`gKZknc`a`wx3`%?bo=>_6~-!0_hK2%y^kpMxMR z^sRfc|9fHoBbDm)A=AYNYgDFpG6~NNI9%QTU)ulf{;%yHo)dr&td~0tI{*Lx07*qo IM6N<$g1>V?n6km4hn^Oq zHSB49sGLI&@gW}fkV7f8z0gDV7i>32`?7(ataJBNFtH0g={NMfkz$QTa$GuxSmb|w zdNcDR=6%w%{1KWf0(WtGKM_)=(O4DS3d4|6hp}01n6WyA!9vz>bK_Ku8eJ?{9`H#V zuhRu%EN7X2pEM(61rQ#e9iC9?17PI=AwBjEU(%;tDt6IO0odH}%MSO4!vdvlBa>l^ z9-ka{dYyis7if)H8DLKBvnD^{{XTz8!5S88s0k?bzU_X|x%jM08C$q&p%7^Heti7f zj(yH>5M_o%ojyH({pRfswfh245{zNx&mJGx@KfrISf&c&0D`677=KL0P?;JbMg>@h<794@nU%iQ~)qeagK+a!~88kJWhgl zGO+8t62J%x;dw3IZ3pA!E(Cyu8jgCfMGt{dB}h^n7*VMo!u;@PV zqWgadK$}dHr-iG;Vvq5e{`x08aLgb9Wdyd(4Jbya{o?T1eFmlMm##v2k?|a`*XDDlboCFf+H+baGO%gHqfDK8tqSMQ+@_|c z&HAf$DB(kG-3i{xx^w2yG27?X2fjaDNcwEyRy=U;oVX!SCm*^n0j6u zB4(T{Km6av*6sb_aPHhgKp1-SVzwe2Vi=ouu3=#Pgg-zn7iKmd>jAtEPPR4UNc6zT zHbyO_2f2W(2X=oBkkSKGklW1ti5^g9sg?uHJ<@}V&ruKX?a2T_4_@!ss0WQ()wH1d zgC4vg(ETGlu#`fdXNKP&(eRQ?vDu+!N}-=Dj2zXAPI(~ z2U?;Bi9bkspf&IG00d)MC|M6$OFj5L5e!KWHY7ce{2|eU2Z{Ngz8;t|kf#R{kgo^wDsuFoR!=XJ6cjzk z9OVT?4>Ev7zm)Z$#@tyN&@+1ADs7h#MGxE=G;SHO6g{vSl!kI|*DYBO7=e%90!>Y# zlSB_NMcvWUA4@_ZszMLIF4%2eQzIsL0l^=r!-^#Ku1Ei`=6-d{Tu%P~IsOGpgZ%C* S>!daS0000c0004VQb$4nuFf3k0000mP)t-snar75b6OD* z5&!@Hq`jnbK{@VX2()t;|D-8WF&O{F04W#{N--d;QXpD$T53Tl3~|sn0008>Nkls{a1Chpyq?U|)QGI*2E?|v?SKC$gPI!5)QTdmiKiXa zbvI@&)wQMKrd=Dz+S;9ghL<)|mDXCbTNR8HV29)J27hBJi{^9;DvJ0HCk)gb+ODK7zcZ9vzAn11t8u(b=(@(gmLtyTb4L zbIgV{&xQ$)@pBy0FqQ&DcR|5i5a)^whSFFbUGtDE2s} zj*3E0DggJ*W9NlSJOmO!@uwD0x_lC(?!-7lOMySLp#9Bb z&C3S9WQKVuaHAl!1>*sqXPvS#iL~OYpsrTx8cr_1jR`sfxq;6sSa5QuO9DS8==Kwh zd>=pH9Dn$N4O~@*CZ)$E5@zj@$L%XDn6ybseY2=9&e09|XDidtM&W`TTXAO3*K(FPmrJ z*+AVsJAJvg`&CR4Xt+La_8fhf$1XrbZA_9X|;kc~?7zc;AmBc;+FX^v!4FRe;b+^O!mLl7d(DXTe(ldGk)+Dooo2 zPh-4(KS6;0tAtqwFhrGC2A|&_tAQ2*GL`3!Spn2|d0(R%f)9+5jaUtMk*p(-jxYe_ zz|&i2>R`rMAlm}8mqY2gWny$CY@585eEBR)aLUjP6A07*qoM6N<$g7V;` A@c;k- delta 938 zcmV;b16BO>2DAr|7=Hu<00013M{Ml?001yhOjJdf(4bgwSP&2p`1tsku%K8#DDYqi zpkNUApeRr<82G>dI3N&6Fd%qHD1d-~0001u4e{6j000SaNLh0L01m_e01m_fl`9S# z0009jNklKeI&ecn37(tjUN3ia5*gQ0ZOau$J% ziA5Kq4z8E}4M7AvNQGkXEK5FX zmZh79L5QuJCZ*V4yPy!3B5Aj$fu>6lL0z;g(ekeQ=L%>j!Ie+-pqKPK&mf~;`VVnI zy9&^+RH6W^qkn|g&_L7kyei^(mer)!1%QaFus(KxL$3@#^!sih9|K(1E5{*Fi5xKh z30&^=U+czz4%AfFWyfU|aP#FP%@UA5tws(QCLsBn3Lu1(_l!yEP zTLoaUlmTh^Y%)9BX1j_-YZ1Y_q`jE?EU>p(k|Ym%0DqY?j7b==PxdCsvg}7v(odL< zX&BMuYlaaQz?_wcS4z)@_MrhJ`KWb1{BQ(FmP+TG4@ZX?93G>*0-dkN4^_b7o0kZD zcMz~EfX{hH>O&$3U1eTE%442oJJ82A0I^<^g$6pSbPM^j;do>?Dd*ZC)EPD%zJ>D1 zcx0D>&wl^};?D!`*!bqfoe)Hk5;&PM3HT`j&U6|Y(t)VG03in2 zL7hw{({Lso99simpc2IF{(cgMhM9sxx-QLb43W0wicV(-fR7z- zA_?48ftv&?d^=i5i}8DNCpz9~AXUpd3L^3I_J3E{DF9fB8;%tW$E{#N;P>qx1-zES zoWmkX1I89@996glU?YK(xg!nMBd`x-&Cym&`ue9lG-Q*ADI%y5#-3nS#hzTPYQwop(nJ{m;D7lYVTJ;5;HbuWR|O0X zv47ZCe4_yqbZx+h9T}%Q+m(T`0TZ34TLf0e447R%H&Q%!Tpw)BH(EtDd diff --git a/graphics/pokemon/landorus/normal.pal b/graphics/pokemon/landorus/normal.pal index bbacdca837..36dd9dbac0 100644 --- a/graphics/pokemon/landorus/normal.pal +++ b/graphics/pokemon/landorus/normal.pal @@ -10,10 +10,10 @@ JASC-PAL 184 72 80 160 88 56 240 120 64 -51 51 34 +96 48 16 248 200 96 -51 51 51 +72 40 24 96 64 48 119 51 85 128 128 128 -0 0 0 +128 96 72 diff --git a/graphics/pokemon/landorus/shiny.pal b/graphics/pokemon/landorus/shiny.pal index 25f3ac5c93..c76bc2922b 100644 --- a/graphics/pokemon/landorus/shiny.pal +++ b/graphics/pokemon/landorus/shiny.pal @@ -1,19 +1,19 @@ JASC-PAL 0100 16 -152 208 160 -88 112 88 -16 16 16 -248 248 248 -152 176 160 -88 64 40 -240 96 8 -160 96 16 -248 160 40 -80 48 24 -248 192 0 -56 32 16 -72 48 32 -120 72 40 -128 128 128 -0 0 0 +153 204 153 +90 115 90 +17 17 17 +255 255 255 +164 189 164 +115 65 57 +238 98 8 +180 115 24 +255 164 41 +82 49 24 +255 197 0 +41 24 16 +74 49 32 +172 82 32 +90 115 90 +106 65 41 diff --git a/graphics/pokemon/latias/mega/front.png b/graphics/pokemon/latias/mega/front.png index bb513505645aa15202fcb87aa5b5376ac0d3d2c6..491f02fa4b45573254abdaf7dd1cf836755afc21 100644 GIT binary patch delta 828 zcmV-C1H=5!2Z0BW7#0Wv0001;w}I>c0004VQb$4nuFf3kkv=|u0{=-wK~z|UrI%Y` zt1t{iu`C&f{V(|H<+mZ>R{bbVm}6NU33?nB;iwVdcpo9c=JFLF0Q?Prt_!iT-sm|B z0OR`{1Q4`%9qM%ku>ivBb6^!B)&$RztvgLscWPqzEe*RY(eGgRG@&j3){w}f5>2heFBBA1tD zHS1eq08v{3MGs&-A(hdyMK(wp3ODN&0RjO3tpr&yn*LmWw_n0r6yU^-M^2g{0OrFtkOaJOEPK5~#4*^QE^W4Ve$wrghO*!UU+` zL_-Qf0ajIic|*Ve=xyS{7|?S8NMq=I)IB_43$TL_K$s9&5QJd`$XNioUJCP`SOGQobM^rBdfsA3@NJ16VOBdpXDC?-h_0)Dk7)qLvX!U`vkhj-O5nd_ zb`ZrY@NIn=b4vl(e@@8N1I5K|SGbtazex2d2*3z`n0gmxMfg(!=GU;6LOOMV)7(qR zT5)*LtN=Bx4FcXaq+ajMOlgm(eM%0HZM%uZ#yLBIa@r$m4s8@=cMqjDi>zbPhCqcN ztCYmufQ?XZS_xD~cLxxJFzl2-empjM+oaMPLDpA6A#9J}C?f%=rrIWmHLw%z^kpPi zA+%b5^8|P%)R6*>024q7H-I|RKulT_sSLSxzwZep0sEGXfc^l0q3E}SQLhO8_r(j^ z3vLLD{;*dDnLBgOSvBUz%Bn9nFRSg&0`__ZuODh&V`4UG_V;co<_En1Htya7tUe21 zdnc{++5-0*IBv?gCEP3oX|C5T;O2|_-OV=}-hcDG3jY9`Q!UyqF3U;)0000VGd00SsVL_t(Y$Ay)@Zrd;r#uWkDQ(M^$x>kj5 zHWj$&W{XJ*WJ#4U(%PU=w6=|Xp4HOj19Zw(pi^I^eW>1%k}Ua8%E7RGKYjP{?npVf zj_AYbIR{sNK-A%GpQr=N7bjBo zpGo1%2l&MK_)y%D00ivGASHczJOcQ*50IdVxaI)Mubj{K#I?RcUgiXs1DLp0%<%y3p5pN~VB-mlpwA-&ycA%8#${@M z;+j!|v4mJ8&V2+@{CZJH2`dvXO)_`LFaPv8!+v-$g~yAfmB&@Na@ply#)Oz7@C5`c z>UdfC^#yw=gau$4!9sTh9CYFuVt~No6d>yg*fa)kQnUcIM7J)!$$`71wJYE_O%7US zlVMlk2;=d51dT+wB|#>lXjbJ|Wjfq{VhNffV z)9)6@TN_OgUrRha*zD4Czd|^{wWj%bW8>3O7|Nme_22fHr`7_?*JxTVQ|!yRGh91e(wz1VB-pA=gTm zYTY7?1S9zp_kU}~3EOku03Jzyl#0|@p5NoP!&2MJqXHHU04&IHS7FE)+g#15rn8cz zW>W4LD|FeJSP!?Aku1fj&%xHfdUy^J1a#GBT^8M$r-{MZq4l5wf)3!(2oKy)A;V}6 z$^rIo(9M7kxTASUmky&2btKYie%+T7v}*U(mZ${iUl!=3`WGeYGI*_7s~~8;xtooI ztwZQ-gaa)HHJ}>6EgHZL>*qqck9Prd#A=|mqm1pomqOJ70=)~kW$TR_sALb&`oZ)b giOwsVZJBVKe_Q^CQem&%1^@s607*qoM6N<$g461yivR!s diff --git a/graphics/pokemon/latios/mega/front.png b/graphics/pokemon/latios/mega/front.png index cc20e9d1cb9fab62fd5937a24f5a695ef53206b3..ebca8034d8bd89e5f9e01e558aa8218dc97f1615 100644 GIT binary patch delta 828 zcmV-C1H=5!2Z0BW7#0Wv0001;w}I>c0004VQb$4nuFf3kkv=|u0{=-wK~z|UrI%Y` zt1t{iu`C&f{V(|H<+mZ>R{bbVm}6NU33?nB;iwVdcpo9c=JFLF0Q?Prt_!iT-sm|B z0OR`{1Q4`%9qM%ku>ivBb6^!B)&$RztvgLscWPqzEe*RY(eGgRG@&j3){w}f5>2heFBBA1tD zHS1eq08v{3MGs&-A(hdyMK(wp3ODN&0RjO3tpr&yn*LmWw_n0r6yU^-M^2g{0OrFtkOaJOEPK5~#4*^QE^W4Ve$wrghO*!UU+` zL_-Qf0ajIic|*Ve=xyS{7|?S8NMq=I)IB_43$TL_K$s9&5QJd`$XNioUJCP`SOGQobM^rBdfsA3@NJ16VOBdpXDC?-h_0)Dk7)qLvX!U`vkhj-O5nd_ zb`ZrY@NIn=b4vl(e@@8N1I5K|SGbtazex2d2*3z`n0gmxMfg(!=GU;6LOOMV)7(qR zT5)*LtN=Bx4FcXaq+ajMOlgm(eM%0HZM%uZ#yLBIa@r$m4s8@=cMqjDi>zbPhCqcN ztCYmufQ?XZS_xD~cLxxJFzl2-empjM+oaMPLDpA6A#9J}C?f%=rrIWmHLw%z^kpPi zA+%b5^8|P%)R6*>024q7H-I|RKulT_sSLSxzwZep0sEGXfc^l0q3E}SQLhO8_r(j^ z3vLLD{;*dDnLBgOSvBUz%Bn9nFRSg&0`__ZuODh&V`4UG_V;co<_En1Htya7tUe21 zdnc{++5-0*IBv?gCEP3oX|C5T;O2|_-OV=}-hcDG3jY9`Q!UyqF3U;)0000VGd00SsVL_t(Y$Ay)@Zrd;r#uWkDQ(M^$x>kj5 zHWj$&W{XJ*WJ#4U(%PU=w6=|Xp4HOj19Zw(pi^I^eW>1%k}Ua8%E7RGKYjP{?npVf zj_AYbIR{sNK-A%GpQr=N7bjBo zpGo1%2l&MK_)y%D00ivGASHczJOcQ*50IdVxaI)Mubj{K#I?RcUgiXs1DLp0%<%y3p5pN~VB-mlpwA-&ycA%8#${@M z;+j!|v4mJ8&V2+@{CZJH2`dvXO)_`LFaPv8!+v-$g~yAfmB&@Na@ply#)Oz7@C5`c z>UdfC^#yw=gau$4!9sTh9CYFuVt~No6d>yg*fa)kQnUcIM7J)!$$`71wJYE_O%7US zlVMlk2;=d51dT+wB|#>lXjbJ|Wjfq{VhNffV z)9)6@TN_OgUrRha*zD4Czd|^{wWj%bW8>3O7|Nme_22fHr`7_?*JxTVQ|!yRGh91e(wz1VB-pA=gTm zYTY7?1S9zp_kU}~3EOku03Jzyl#0|@p5NoP!&2MJqXHHU04&IHS7FE)+g#15rn8cz zW>W4LD|FeJSP!?Aku1fj&%xHfdUy^J1a#GBT^8M$r-{MZq4l5wf)3!(2oKy)A;V}6 z$^rIo(9M7kxTASUmky&2btKYie%+T7v}*U(mZ${iUl!=3`WGeYGI*_7s~~8;xtooI ztwZQ-gaa)HHJ}>6EgHZL>*qqck9Prd#A=|mqm1pomqOJ70=)~kW$TR_sALb&`oZ)b giOwsVZJBVKe_Q^CQem&%1^@s607*qoM6N<$g461yivR!s diff --git a/graphics/pokemon/magearna/back.png b/graphics/pokemon/magearna/back.png index 17568f8bb23011aa8a1964305d00bebfb33bc7c5..2e3a77c5121415d79935553c11fbb9109e445185 100644 GIT binary patch delta 633 zcmV-<0*3v}1%?HX7=H)@0001;w}I>c0004VQb$4nuFf3k0000mP)t-snbW0ba&qeI z?4G8k(b(9cu&{1|f)Ef8USwpy!orM`ll+>z_)>2SsL9>wwn9%7Cj_PgL~01NhJ)z z9P~wl9G$Rl+unzjyD%C=m*BQ-ZTt=DYg4Ce^$&4``!RAk?F(MTLa)LaPbl7Sr=`jYbKGbU?pb$cu1htc^ z2=hb0Y!^Qr-}wn3)&gKcus*~kT>UhQH-O+804?MTLVrpHul%`>jDV2D%U1xklY^;~ z@HmbT%kJ5{oj?H6?P72X1Q_@U5D(Hb0EU3lPKFA4K$(#h5d2>N^cHr2db9vYAiIaK zS^y6|`3ZoKb=E@<@%iQgsCHqTkH83M{e;K>qkl#)&tQ>_xhK3RfV!ba;JX53TW$!! z)B(z$l5!E%Y8rb;#2#T0gPRBW9Vz4Y1;~fdXM`^&`D^8$5LiBpl!@~D1Sj{AQ2%vO zYI^pcq;!7vBkgjx1gyJ=cli1IBqfAX|4{b;<@d;TMtD8$?O{2MskdP~d0)00J*bL_t(Y$K{l z$ms*rQiD!jBo~>yI6?!oXouiZZ=HG>J2dg>eLCh5nrA2}$&O_+T|1OO0+IUilc6X@ z(SK~C30ObSaVNJku*pprxNrT*Y|gJA1LT=Mi(FoSZ}TPt z7e#xT>m~=A{%C>Dz9&K;*mpz#^!B4j%K*rW!5GGC*?#~+XlhW$AYuWbH_x95U}KJ2 zt&G+iW6XCF0NZk2nJYky`z&P%5=BHxY+1q>ON=>^*J<;US%AGWU#TL;CS{NTpyd^y zW)9$@s-Fm;I;1uObaF)i<6X7o2;iA4%@FvoucRLp!G(F+?TY??tYtf#!aVQy1K@B0 zu$%Q&0Dsf0C}8_{Kx^p%Ndr+NWv=zw14lia8JWY4RaS^sk3=W!zEXHegrR`7@&o`i zH4m`|RLPel5b0K8^+*p)LzHBVIFp`uZ^#sIT!qF;bC_>R;)PNmqm|aNIpDgV0iFkZ z(|BetDieb?zzdXQamhu7YnEia1lVD=C{HK8z&U27Y|+bLUzOLV^ZAt8H!JM{r3F5o m!G5_l&j{cX0>4S%U)mojnPBNov#jy}0000c0004VQb$4nuFf3k0000mP)t-snbV~JdT^9d zAfuTWIby6@gU#jQB%HMW0KvYrdqK^dVi6G$|M`sOy@UVer26{$hgfNR0009ENklr+4^=-wuz!GLAmoQtUmXhoEx-_nN|z2$1qzrfAQ6a2U1orc*N09&1aNPJco70X z>=Ckom~x}v0hFMkj8K3YXfj^=cNVN(5J|7mLZcs9fB-FE0M)~+BJSCTYcf5N#ippC>YVzcdOyBa_tFk&O$v>;i9<1=Q5pdA3{QjYd) z2J8TrQL$T-jfKzwQc`dyHxC;NHhY@Rkh7Z}nwk#=VGLmDS}N4&t*tbt&}0Bjq*CM7 zfUR_zP=BnaBl-6WX!QW?ZW-Soa`^|*y>74hAKXneDMdNm{XqW3x=*OwmWLNZ2I$OA zaxjZda!~hFtnVGXlqlWsMJ`Ajr1~rn(9@mc_v>eOWzN&7Kro+{fbHaEA;^ko4s)^7 z=P6eUnx5%QrE({+w8x&%g_byrG`>*6#7SU&+J9RPEo8m?EY7(_hLHd=5R``piyBOL z36k{%K$+?e_M}`9`I`U>z$+lmD9P!`rUFo>vAmeL1qCR8IKysiNNuASPUq5NvBBs# zq$dAjr~z7jzu$ilq>IUuW4Ut-c_@!n69X<5@b`=mR(>3Q}Uhg3&nHEAyfr~R^Uf1;op$tIQr0R+IEA;cZ3rNwOI*{P&%mDs| zo9_&Pa`d<>kOb$*bF^^w9oYe#E7l9({6lmHSSZO0;2vRKDP{dt+Z^?G0V}m?(+1zd Yf8`ujB=CERy8r+H07*qoM6N<$f~;|#XaE2J delta 781 zcmV+o1M>Wh2bczs7=Hu<00013M{Ml?0004VQb$4nuFf3k00004XF*Lt006O%3;baP z0000mP)t-sn9!gQNLUaM5Qu$mrn6*rpHaY;l$RDVdv<&#~C+b|S`6?p^A zFe!N%@Z1<-LI+F)ex3x)0$Q34SRleIBL(ASbo?l?lF*mVd-u|Nb>&QcNCLd-*LV$8-a7xV30Gw7MK@%Y)GIlGKfkGoe^TK$IJWD2)Uo9GIMcHb4Fwn?4rcf><$47NC5CTHeV4*ArLM^Fe>jc;UVn8Shqq}GK&ju;10Mf; zN_X)63V+4y+cZyi@P6t0r~CC5#2DbAc=&B*Uq?EiZp`DIS&sp4Q)A4gFlLs>FnI?+ zi7N#>y_<*o0eDFO*c#)-S|c0004VQb$4nuFf3k0000mP)t-snbV~gOI=by zN~CisgF#BPN?Pu{TIO?$L!-TmgNv-BtPv3r_TGcV#l_y<-un9bF51|{0008_NklZiI$`w3`NTzXo%?l|Lwd4#C=?5(tWBL^<9z>BK`Z_S%2Hg#T|y-%71OwofDYH zab$X+@B9g%$Va+!1pt2nQ27|6={UnK5a$5Xo3Rb(h?qxh)^B}W^a&vlq%js+ePo(S zdPD&jPIS~KBHH`22Z$8?0^mhnE~Ep&6c`YtBx0ijfa(SKL1{~%tf0goWPJsc`E~_R z5xf8l$4GJM8I+3Ro>+Z$H+7lK6S<>y<>cBF)UXH}&YFv8C z$_XU0>$D2#FnxZK@_bwU8X@HIb3T1RSWhI%B}Szu6olR+?^$-!=e404FQYrw5~~c> zw+1tJhqP=eY!0;Uf-FR|%0jjm~$ zcK}5Y2Pe|ttk;S3{bPb?=8Zv4x~4ZmCocebewauHz)W}-08B(rsugf{WW5GRgAE@1{i2wiq delta 992 zcmV<610VeP2I>cp7=Hu<00013M{Ml?0004VQb$4nuFf3k00004XF*Lt006O%3;baP z0000mP)t-sn9!iGNLW}vNQi)l$XIaTaESQ$_|VA6sGz725D@6NSfFqy@YsMrpt#`R z;1Ebyj>Ydt00009a7bBm000id000id0mpBsWB>pILrFwIRDVdvg_JR9+dveC&r+At zq1ZG-)4}pNSWW`Q*q}H|pl&jBEJQ=05Qsnug)B1YLWd3=9EZ~27y?yOFzr-i58Xnn ztX*o&Z8L;`7N?7#Lxv0?eRr}PJC>X`NV@yK``_KWXQQ!5+@9cz`QhO`S-2S#ixg0m zVPa+V1}LfueSf8mVPa)jxX~;0n=e&;kVQ-$0KBT!XbMS%U=}<)W2&4wDP2 z8t6a}nu9Y`rK%KRrOq<2S3kf)L4YaM4FgsRECU%TDSv2?1272yjVcQx2FxN)F-Za4 z&oFGjEMV&*kt&4fvoyn~L0}=iIV4!r#|@~3p`grqyNl`CaRY=fAvmM9yY!SrNz(;1 zM(CLUP%|MqLK(GUygr0FifX8i(wdH;3OH?$TN~h6>mg(|HZjJ(vlugjV$iHST#rw1 zn}2E_et&KG{%|SEQ0MrB^wu-_2P~>VAJNVUnr_L%o~PfMl{6?n@$Gn5&ixhqv;-y% z+D99PMo2&u%H{e%Cx%wdBWYVDI>yAH1V+ox>U|w!Xx1$S71FG%ScEMV+}XyCNp&a* zYsEqu3h3V(M~InqE45tO%mm%Uk#(>O?hWHw?tfe_WpQb-5zL7O^m0&l?!CS1z02l$ zomR;V=0w=};9hKJ*Av90Ui+taUhmIwBX?qFU6iZz+RitO!h;hy&)sgfqI8H|uZQjL zk+N;)yq*xf+_sJnJ!3vne_+|&Zg1U+%y8^D#~owNirB-$>m&1Xw_C7ms}%}do$SkN zW`Cz(Th>u1(A<~htBZp<%d+iy7{JN$+Udp10~;(tfhhpa_GR;v6_En~`BIkmo?P1Y z(RCQ`$^k@9CC^N=c@~mn%5i?k@{3gR^k4GiG6aY@4p_uf@#bDK%mBrv+m0MhJdHn2 zC7PkfNLgRv6o7ahrX!9@GYpsw1rP=UcUcDXL<9hhpL20)+QLx)LM0bt%lcZ61o)jh z0Mx*^6LH-GV7@iM0NsawF%wM+)10iMk2{lfBv$SKIFi4Ez#~6Bg#H7)K}BAH5TAzt O0000O$ z%C~Y6ckBp7L^*|{DN;wG$OTpu>7k4eBD7dE7Dw>~as-Z(v41hk*b7EVmBO#H=JU?a zV9=*epFaO4TS-^_VIk>46{ye+@O=i0ufKqZroO(M(>MS&e)C{6hY214`wmNY41tXm z_&frw9+8<)6mnYVbL+GXe4Y7~=xI&1*<+#r17^j|A@l=j zMwx}otHECXpKno76oy_dt UhqWcelK=n!07*qoM6N<$f>6hucmMzZ delta 542 zcmV+(0^$9I1FHm(7=H)@0001;w}I>c001gbOjJdg)1{l7t`(MO#VIp^E#TcR~^n0d1zHcjI4Jh=2Ky5D|R69zA;W=+UEp zrmYjKTMF|>{9U(KMgSCRUc06HXQod^KD0@yaS;+{oB zEd==^VB7XyP!Ji*oKm{;k9G*2ge8U)<4qC+0CL^2kxYty0e~saTYtCakM>f6y9vxM1wHv`^oKTqeGh7ncF%YQsDAl>_5eb{atb g(ZDSq-WLk^0m^?aAL5C9SpWb407*qoM6N<$f=e9qIRF3v diff --git a/graphics/pokemon/naclstack/front.png b/graphics/pokemon/naclstack/front.png index 4055c46cf312d0de578b48afd80040358d2da981..646b29881c1cb6ce7e95847bd2562fef4d9673d7 100644 GIT binary patch delta 538 zcmV+#0_FY31*Zg%7=Hu<00013M{Ml?001yhOjJdj)ufbST4GX4dwYAulzZmY&Be66 z|Ns9|Qc^)NDT{Mr2nY!7ix~Fi7ytkO0002fcYsC!00FW|L_t(|0qv4IPXa*{g$Y}U z)!nQnBo;7&hS&*N3vFg|H6~U*HrB9YG|>vfPU|Z`Y3L@j{C@xojRn1xws!s(?~Jc~ z5r2T3Vv9ZB+&z2l~DP=%J_6*A6{&wb!p3n+J z8XGQ4T%xvszC5Y|9 zqRUvZHIRo@1I$OylP3KRdK##310*&@nx8m)SvSUQO1hcy^$PE;1gH6z3L`9?*IS*07*qoM6N<$f;<%Vc001gbOjJdg)1`57asU7Sw6wGm5)#ITZiiM; z_QRf6EGKJ0JpZ5o|Nj6&797H75INX-<^TWy4s=pZQ~&?}|NsC0|NsC0|NsAJ!ZSqx z00KTqL_t(oh3%H@cET_ShD}2#)q4N8J0Kq=X=2->JKGQ6vwyRx+540Pg4}Ljef7^3 zg4^qYJIpMBcrPTca&Xo@Z%QaZIDaaH%DyRvaU4R9UBsRWMkfGHos&^P@aIJ9k$>8$ z0lXx*jz8~0!}1uAMq#*)UCs?clK1=xs(OU(!@cnfA``lRR4k_K-)150dgwY9|Ks|m6r7yKoB{ARYacz z;@D08AP1(lp7B{zYGAxjlea_VZ@bNL&RFY(~%V%Nk1Thk&+6Z7a6}0CZQT z!JumYP5SLS075C-vO|YFSY7~dZl%>=Sy3ESfHdBu?98o~Ndh;&js+HQJgPIp07PWF h$)Udz(RI&X=m*iDEpX8XK&k)$002ovPDHLkV1is@I)(rM diff --git a/graphics/pokemon/naclstack/normal.pal b/graphics/pokemon/naclstack/normal.pal index 2fd0dd7abd..19fea0383f 100644 --- a/graphics/pokemon/naclstack/normal.pal +++ b/graphics/pokemon/naclstack/normal.pal @@ -1,17 +1,19 @@ JASC-PAL 0100 -14 -153 211 165 -113 113 113 +16 +156 213 164 +148 98 90 +98 82 74 +123 123 123 +197 148 123 +230 213 205 +197 180 189 255 255 255 -180 180 180 -18 18 18 -198 135 110 -135 86 81 -246 195 158 -87 44 39 -107 65 60 -255 160 0 -255 255 0 -66 22 28 -194 103 16 +82 82 82 +65 49 41 +139 115 98 +8 8 8 +238 139 24 +246 230 24 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/naclstack/shiny.pal b/graphics/pokemon/naclstack/shiny.pal index a8f14a01b0..94d60d4731 100644 --- a/graphics/pokemon/naclstack/shiny.pal +++ b/graphics/pokemon/naclstack/shiny.pal @@ -1,17 +1,19 @@ JASC-PAL 0100 -14 -153 211 165 -164 70 47 -235 145 61 -211 94 44 -18 18 18 -198 135 110 -135 86 81 -246 195 158 -87 44 39 -107 65 60 -255 160 0 -255 255 0 -66 22 28 -194 103 16 +16 +156 213 164 +148 98 90 +98 82 74 +123 98 65 +197 148 123 +230 213 205 +197 131 106 +238 189 148 +90 57 49 +65 49 41 +139 115 98 +8 8 8 +238 139 24 +246 230 24 +0 0 0 +0 0 0 diff --git a/graphics/pokemon/orthworm/front.png b/graphics/pokemon/orthworm/front.png index 87535ce92cf1fa4ca5d318bc8f2a9a3f9f3d2a18..14884ce2c7d8946a5f68377bae92be15f1bc8d43 100755 GIT binary patch delta 600 zcmV-e0;m1F1-b>0ZGSjPL_t(oh3%H%a)TfYfEx%{O_le5+a&~4Y_-9EyKC;c?l!;A z5Fqe){NfjffEsscC*i$wHx!u`wtQhP@7&7DSFfS+nGGTEPml2y?}886;BkmnMZ+_! z0yaF2hIaw~0wS;(z=g3f8{Z+|n(O-kNa|M#sDi=J8n|k?7c!mauS|el@Q}jgfQ;7}%!PQ`np5e= zLy2bz?kYxsMt>YyLrlqQ=_nglXG-4Fozvay+;ZlnN2UY4cc)5HhvyWsj3!5vXT zcL$~956_DG@)l8dmI{`o73?k|XKUoC{!g{C`cHFVzlcAjGapiaa@zR-0000X(1b;+U; zfL$O4cgz4L0?fS0Ad032I89U%FbN28KbcW@%F`ek1@M}23#j~%lF7h=`8Ch45``DR zvRG3PoPW6a9p53~n$Hq10FwHZ0;*szYz&>CV&)(nmY<(GxGr7i(BDagZA!;gkxh*HCdou>>&?M4(l4hdcF zF(vzXR14PtWpn5?)NZf_^X}9s5QQdz%uhE2K)x(&=BFDe0FjqzDfl$;f%`7FzD4kk zD50x^Qu2p)#eI2;s4Gha%hC#V7m>3$b}0bMEdtI3uzx%LtSM0GZM}l62DyfO7U0x` z1Gj?t)GLN_L7RdIDyFT&c7UD;koE#7Z|CdBmII4U1#H+9gdzw5eAxAZX%82B1+Fs* zP{u8YVC{s=q%Q(qP&sP z{wKqd+fya4RiLt}C@l+U;wdFje8u+yPFFCJ#7Ry-G~h=AV=AC8wL3G=%G+8mhDMP) o(1WW2DxXKSkFE~9&Hjt{1B31#G%zjfmH+?%07*qoM6N<$f{9EIs{jB1 diff --git a/graphics/pokemon/ponyta/galarian/back.png b/graphics/pokemon/ponyta/galarian/back.png index fe45584312b7bc9a46be9e20725d43d503a84c52..f798d5cb45a3fe010810f1a0441e9d53c31fd7aa 100644 GIT binary patch delta 649 zcmV;40(Sk;1(gMm7=H)@0001;w}I>c0004VQb$4nuFf3k0000mP)t-sn9!g|$mlSb zsDR+u$E$ny^vm$uo=8|o5D*YRIHlWD#Ex2TG}{{Z{;6H2;&AC zfS2^J4g#2b4e)+0U+#YrNb?5)+Wm&G&~Sbd5Top(C!PmnNRqJfwtoj8W!ScL1aQ`% zl^|m~Cr)K{kRYrVoq~TKU9k;CR2hZ2e#gkT&wj1I-{|5#sYO0C+L> z0b>L~kU^LL=qMBfEC6GKdVO?IN`Qg)YdMRE&H>ymvV^Aj;5F1zZ51 z0Fi*8sc61#qlMFk_C!?I04HZ11&BN_M}vJ)Mdrd%1~?fPj_&N)Vyll&fNJXj`cEWW z`RM}nrn>|1S-^dzgXnE55GB+CyLB}4CEW8za~95*yoG4sWDPiX03M7EbtRakwA>kl zI6mgR7Jt`#K8jd!73%c}oIg1kmD;7K?o1itcH0~q(44j@Z70XZG+Ee=xP^~I3DSpru% jP<+Ju`s|;wzZoBc9W06z2s3m50000P)Jxv5D*YpAb9Bb@W9x}h@g;Icwhhk z00000`+h_X00009a7bBm000id000id0mpBsWB>pHDoI2^RDVdv&6PiE+dvq`uOfq% z3}=VpF}8!r>S)pEQbh=~>P*%O<;arnpafx5(xIcgD$pu6dJ>HU#( z=jbl9OX&^b;Qjf1p67iJjQ*#y7tGk#IkeVKNisvP##SICgd}L_<+cWt0a@VLfFR%i zA;HPWsIf;#cz@1;`CD^~Q(hA-G9TFhd4A;ijCd+fWg{7hHQd)b+ zU~K{dO6wLR{$x^EP<9C6bI9IX0V*b$EN@>1=JD#I(E~qX)N%F2m_i30UeuuL^7d;7 zC?vp>B(VH^Z;_BPG2E?wS{jHZF~BM}TaYcz{s6f9Yk$BEHJ|`^>cor`k;U-Tozzj= zAuD0?JS1{P2U^UiyKfg`B|*rn1EA|2AVCJAUbq!-snAH}MhzNugYj$eDBg@ZfE?w> z!(yL(uZJ9#<#-1OY1*G+;iB(N51j#Wd|e`Am22FaNWeRB2F`e(o8$m3h159%ysN=@ zssX6b*MB8|9>zMbvrh*2+)bqC&^l1oz!#UO6I34TdG#yJjlesM{rY;Lxui0PBpN)M zX+af04_ZgL9z*%OP&WlEsIpO*fGSjg=D5{x;j#T)R2qPNs2-IAWk)^X?dC@zgQ({x zhz7WU?R^>UI!Gs)$Uc04Z=rC|2&BV_7Q}@OR6cxot=DvjbpUOv?^Qhm%$Lnp!U2r) r*2E1g#1L5pi+WGoZGUqA@F4UXj2(QUp`Ej900000NkvXXu0mjfRYyZH diff --git a/graphics/pokemon/ponyta/galarian/shiny.pal b/graphics/pokemon/ponyta/galarian/shiny.pal index 707eb51faa..62925ea1a8 100644 --- a/graphics/pokemon/ponyta/galarian/shiny.pal +++ b/graphics/pokemon/ponyta/galarian/shiny.pal @@ -2,15 +2,15 @@ JASC-PAL 0100 16 152 208 160 -72 184 120 -16 144 64 -128 248 176 -200 144 48 -248 240 160 -240 200 80 +72 200 232 +48 152 168 +128 224 216 +199 171 123 +247 244 203 +240 219 158 72 88 72 16 16 16 -88 32 120 +64 56 165 232 248 240 192 216 200 136 160 144 diff --git a/graphics/pokemon/rapidash/galarian/back.png b/graphics/pokemon/rapidash/galarian/back.png index df065bf1f0e64a7e0bac64d93f3c115997c86a68..59816614d913fef37169edfa0a2db9adcb8fb1e4 100644 GIT binary patch delta 630 zcmV-+0*U?N1(yYo7#0Wv0001;w}I>c0004VQb$4nuFf3kkvdi~e0luPB64*;H}m&NbhjP3?G=wRCARq5sBOwS6^IlXthZ$hZXF>(cu0YE-O-!yJx8CQa0&KS(fSwl$ zw-X4E1e^lMbM!L-2+~>mq@FL@95K5YBu9sBu2u0TFIi z2bX{Zlzhzj-6esI9rj=gv>iarGXY!@$N-I?jZo$jyZ}H2933j3+pGaT zQYe6+1L(VeNe_?$HlS6|Rv`od2rVEll2Fk9FT(-22-iBn@o>(2lzvPBFaRzEG@dMQ zxT-^NhXOwu$a+VG^QdbR1_k#*0M%at)E->_qNZF`LjzF8=!f^!Q9uB!9zFw%t6&l! z+yf>G0N2B{{X!1wtfcv7h9MJ$&f&s{BIt9eT6~Z&XfBkuV0Wgs&aK0yye7$yV*00013M{Ml?0004VQb$4nuFf3k00004XF*Lt006O%3;baP zkuDg2kRb5z@Zi{h02pBS_|Rx*c*w}mprEh-0000000000TV7D300009a7bBm000id z000id0mpBsWB>pHJ4r-AR7l6w)IE>WFc=5$Af*dabG}>1)Z`0X;&y>0rxc~o8*U)- z2LRnrSRy5Q)QzFTiJ4PXrW;VjwHqo`Rj-|Y_*D2MPVA%wF`l=`zdq03c5Ulvj%SW@ zS$z!K^Uj$c21?kQ_B_UCo);)^XwIKwHbT$q%Fj{Mn70uQgy@|BF%A%~QI@c0%>o#U zc~&Ag3S!Yfln_0}(TM`8$92?PqAI|8Fks(B%_X23^jZ-*S170e_WVn0WP;aO-2r2N z-|PNf8~gYUv<|FC_+o1;!X^+`9WJ2o{pBZP9}~!s>X5=>QM|l8%rsyF$ zKhE^CP64tq!hk?Qrr+ppd@wpx8TmZS&*_hm_IK)#3Jd@UOs6ir+r7EbBdClC6aetm z-7|21Bx9c!V4Q)C2GR*CTR;)5g6F-w5?V^MZmnm`=|{P9sK-!5;y`ZwF;zQ0P%B>8AA^C zEA6l(=o?@=se%39z<OoKG7{GH|fFBkEg$A~N1Go_)DGb1_KLhkb4N?Jr1|@LV z)#ND;`Z99LG2V#DW4A?njoma z6-(K*^wE)^P8oV8NJ^0W8_0`=!s9|glTO*9~S o=-@3o6?J+0n; z<0ueCjYWcx-O~U6?c~P3Sgx9Rn25&RWrxi@B&)djc>G_A;qnXhlgrN-qTa9w<7+*s ztrmhT5ugP>ItMWVTb3T-eU@)p0Q?>xccMd7fE}c2l4EiE4qI-iCLp3A>=G`d5b&!& zpA(`X*oF{Nyn={-`T_wh0ZM`kA;d8Qjz6USSTh6+2m!D)Tq;0%Uku2Yu+;>Q%8mYS zmh_<<&<%zmY$d>OZ)v?b*82+ZnP4^-%*N|A4D`~A1pxIs1&>|e_5*;a0W^{wAQOxW z2(a*aIg&dqRR|+O1UQ`b-I$kq?Xd)&m8KK35ZvAr>H}fCs#Q{<-&`=kv{kFeFR?4}1e`9`(=nse~Q?&mNHG!Flh2^v8jOaR@5_>YW5| z9AF`aP@NDKwkg2Txbp~H3_y9?3GD75fH;pd0q^(wkLa;31L&xOD924Y1#tWDdS9%E zOmGUoFK8Km#U3a!1LP2f>$(p4!~_{fuu1<^HR!=t&w_B`tP+6$Opw_&@@&`u(!tjP z3KYW)ZwCda9w0ZzgfTz}CL{txeN~AFD}WN{Yo)JCnN$E=qtknzy~CqgL|PLAtnGiVECASZ%-;h_;_H_BYhCmLr*wkDS+yn ziwGTABxx9Kpx^01)wJ$Y6pkN+_(*3d1lQ|_B@?i9PlTPM_|dtG`dYxjdr*Sf2>E>}1iZcK3KXT)~Iy z@vTgHnLk}u-xStaPeR7OMnfz6Ig7qzaat~s!j&To2vjq;3F^idWZ6J zjjAQ7gpdfhc<{#Pb&Ha`+u;gN((5PyG|t}WXayLZ5K_(9BN6EDakvP8<1h-qYTZ_F ze7&Jx&g1ZhXb&tdh(3Tj(q`y)lJgmj2!C*YQGyn_Oe&$*U#HJ=3k->b1mK^jj_&|~ z122RWnf8Oc{r96g1l|>Y z?%RJL51s74Lig~|{ueQXXnB!gR1Y8Re~w@i51ovf+oLI8+y6{}=%Kglp&uiHoe%~d z`kwtyW#FOj+5e;;dFWgAKk8c#EpsvqVQ@*Ddgz;kg@^uN|5e}Iu1XL6!Tu*e@1gUm zx)DP3&?h|-)d45#c_)O2K99MmhtA%Ab#DLXgbJ{*|HUvsLY(5EOZWU4;A8+#(c5wm zKiU66ACrn!9Pk$aSKcnfr(f%n1B$1 z&F=e#{YOMjKokfu&kOsXp-?0s5+b_qsr|3=2Soy+WH4Z5|BL)VPC#UWG_hd{}00000NkvXXu0mjfylt*O delta 1455 zcmV;g1yK633-1e%7zqRe0000$E@3%FRo{z1YCPzEAw`pycvg_SYngkN>ZVNU! z#2y`en6>5u*aZdRQz(>vg3wa%cL;^#;FDu&O4RpeB<<+Wno=nA&<8fVJ3qboqbGm8 zpQimAQ8A3EtHzD%jm9nGit$FnG#ibHM5QrfLzsDjKxoxAX0Sypr9@whn-FBcG?j=~ zIv|>+aK8imBf17P5LCK441*tg>pL*IoQp7|+dKq1kLiH{{voc)b(@g<;UII1KXqX+!pGaVS zJjarlqq1=D$&4BJat4U098l}lEaL{{Y&ixNQ$WsfBd9sgyL{B?biNkA+*D=})d4k* zf1(ha$IBc8I7gSt@EKW=8O*s9uo2j&d_)Lktr6@;#m&XEPG{q||&)sf@FB4lA$UIyr~FHUDKkDOLA zhvj^v0#)Ar<=5ZBrVT(}gX6Xqr!zp0k)Qv(JR-KkVGhr<>?z&Cx;8Bd5LerXj$AnZ z7HqU>+KU>jacQ0)8{cr9;CX-8PK%G=4BZMm8S^eyVOkM_vh79A2>{nE+rb0UJxc{( z4ggrwUY?N$h;^C+?3+L=H*DL9fATC9fVBg_8O$=3{*(bsoWu8h(o6xH*Hdxg+ZZfd|o96upn4t_1GDv)ba1?W9oFqXt@Ogbb{4TmY z4#OUW-Q6cxJL$dLf^T)Q{zDjs_rqiO!rK~bfu(oy{SbGoll6ZvJeGh9KtBaG&VGl2 z$F%@KNKXLz&dyFU1$h^7SsFTY4J`(~fBQB8^o?_+bZ~aON%ziQri;|o;zi&PpG8-_ zDhmvE&L@n?e1|`toViyKP4M5O(@L=Qxy{ku#L zv`qgl(F0BC-(Hy>XxaW<&;u>szw>&a<@YxZv!Wh|lZ5{L?VAw#H!JFa2zY2A zpntQX9>^4L5P<&8ih3ZoL6CUu_@qP+FnS|+dAw*kat(iZJrModg;xXi?{c6gURSWR zY3>#EKok920ykS;K@XI=0s!t-UJr6WQ4hvZ$KLFf>46F~C+Y!I4FYVk9sq!TFj)_@ z8uo5ZCh9>YZtifP<$53i&;vG656r)<2TTF<&G>Uh50du<{TJ6aL_;dQj>QSv@HAhm0PS`hy#Y|NY^g#9vgYxo$K$5Q6{!002ov JPDHLkV1l}ju0;R< diff --git a/graphics/pokemon/salamence/mega/front.png b/graphics/pokemon/salamence/mega/front.png index bec9a9254923bbd63430a73dfdd70bfa90ed29da..44812fa0580a958ab66c00fd37441e1432d4ee08 100644 GIT binary patch delta 915 zcmV;E18n@x2-pXZ7#0Wv0001;w}I>c0004VQb$4nuFf3kkv=|u16D~yK~z|U)tBp* zs~`-8OEHP8R(=1so$Le%WPXSF|4LWnU=Y9A6Wg7uJley7R287HsnGyATR(**i?wA1~b0NTLpemme?a62uM}!i%K^O!N ziynx0hY%4RJ54=*1CBN6j3c6V;z)?nIB-Hx#697lKP9vSIHlAk!hk)2?g-GU={zEX z%&Hf~{hpuz39i=HV*))Qx&?HEV5xsTRc?Cmc)|z5KG74WFhM`1M&A=gKqaVtRv#h~ z0DYow0h|;N>GfjBIooGK1~3XYgcrZGsu@WzH!P9A0hqvltQC`c&=Rg3YdD03{3QT+6d~wiR6^%M48H)Vp4|ZjM4G<^ zAZkJ-YB2yntqU=hYI$BIk+GI-F_~T!1`u)mM}WPb-r)_sUR45TfD^)VjKBfDC!p-2 zUm1at5qunf-9}JSR5uqR0Fbzh)D&GhFq&6f@S^mQ;Z%PGa6(9xV6Em0ed~fv@VWd3 z;3bm*Hb+BOzt>|*3SqW`=&mESwqPo($2wrq2TD*oB2M+ovaaNMBaq&&lybl65N970 zkZ)CwvRYU5VBW1DG$J{bFRl;x9)TPWvNjb2Ok)#&=A5s5Ubd{)_Npz~^XP z2`$tB$xl`9FItZJLI}P<1%w$=7VHDrUG>L&1+MB#4xOzvt(%~`Fx$%kb3Fk5BJ)23 zQgwk%uWi#h7RtjvA~d74sBPL<;c4phbF*!zBs_z8MW(L=+O|!{C-PX0w+w)!JFtYD zB(HLRDIFjaaVGd00XBarjh&0{W&pcLutTH%e z!k1~Wr>pmxwdw=57SLV~ey*8Yd%_z7;B4Fgj6tss zfX&wdVZ2+fI$O4gd?^#8|Gh0f4Y~jVdI9t{j+lzZh{}2Ej*Z? zjG%@5h5HIl%I?fh<$x)|roUb1=a+_MlAX?Cwg>412ueNi_9Y}+@R==UZh(#;Kfjdk zAH(Me&L$ZF;l0%KD-eLS_97L3U@T(Ha_}#LjbNO{J_x%l&W2Y?0Q4D5`X)i1U>sgQ zh!^vvyLZfn3kh(kFk(kF#JwaD&?xOsr|cPXDdQh*7ia8C$Z9Rf%&77mx{8Kl4uj0sPFyitG#5>)s? zN${}*-lAuq@4dm<$aTLhX&lB+8{yfgtgvGe0J zD70`&)wdVQtNtsMv$Hzx*P>6SoeTJ90HOsc(bJ%XIL{mN12Lhra{)%}>1PSJ01Q?@ z=j;m%JZzaVYKIEY4-XGna|`<{9 diff --git a/graphics/pokemon/shroodle/back.png b/graphics/pokemon/shroodle/back.png index ffecfe183c738a176f30d48dacffa35e38eb815b..3bb3cb4a581cbcd32eb4acc66e0ebb92f172a360 100755 GIT binary patch delta 81 zcmV-X0IvU%1A_yQBt`*qQb$4nuFf3k0000mP)t-sn9!hod3NmU=nxPPtfrYyXmvp2R#sCDb6mC&YEeg#`%_5ij1H5D*a9u%g4kC&RwB$g^RH`$lZxy-8q?;6BX?@)(9{H0B36mOaK4? delta 39 hcmey%)WbYMWul>tq(DiKU+{l4a8_~Cl#N-!i~zUY7$g7y diff --git a/graphics/pokemon/shroodle/shiny.pal b/graphics/pokemon/shroodle/shiny.pal index bb3f9a6a7d..67046e31cf 100755 --- a/graphics/pokemon/shroodle/shiny.pal +++ b/graphics/pokemon/shroodle/shiny.pal @@ -2,18 +2,18 @@ JASC-PAL 0100 16 152 208 160 -96 88 88 -232 236 200 +125 121 118 +236 235 232 16 16 16 -176 168 136 -64 76 104 -72 60 56 +172 166 153 +79 104 117 +72 68 65 48 36 40 -128 156 168 -168 168 224 -96 108 136 +187 210 227 +173 114 205 +128 149 168 248 252 248 -208 200 248 +225 171 233 184 176 184 -160 112 224 +225 52 239 0 0 0 diff --git a/graphics/pokemon/spidops/front.png b/graphics/pokemon/spidops/front.png index 944a9110703b59239fd9f6a4158f98c9ce3c0131..d6bfb05623f29b943304159461107219c224c0ef 100644 GIT binary patch delta 696 zcmV;p0!RIz2L1(*7#0Wv0001;w}I>c0004VQb$4nuFf3kks&^R0(?nCK~z|U?UvE9 z!XOMp8zhEatp5Ms-fVyZTH20%H8VP+u*XdZsnhg}UwjipbWQJW?h=8#^Zp{iU$)>p zUnQId5N#BlPFv7y5$_1p@f1Mi_xpVVan6DW6}^VM5sm>8$jx(>yAV2p0uBiZm^IvN z6a{pG6Baaq*Wa9f!Ud5qw+ay-w+PZ0)eK&*m&*TMPUcw}fZ{^j0+2eD27my>0Nlz$ z;4M9Jtq3dPngVrlkxx1Fj%+o-$=b+@sNa!5v?EV?7Kxf45a<>=LJtEznh=Xy=Cj_8 zhB<1me%6;F^i6MYd_02K!r=H;eL*mD0DyF*0%UahrmqcuuLw~Eu40S?K+YZ9p}y-a zR)FdVu1U)YK(rj9eAWHxRKK$7#s5jD*BS)Hhq^9E&fLk$**i+pWUX76hFHb;58jdk!z*JlmEcK~F)eW22L ziIlO>OZGRY9{KXLNEQ;|;K7E+ zcMHfC7PEkE*AcZ3z`-{=vW4Wps=N@GGw_zjugCQ$m~Fju3VM|%BgtE zrnyr`561RklKc45+t5*R0Un`e~)&ThJ)@pyi z52G~^G*|<~VX`KJya*sPt<58y7j#NUur*p@Y}ztJ~x z=(qSFmy-3SfFIMuI%FTi2%(rrS#|Gt#byR30p_wh)W?Y8T$WIsliNmmyC#1@>1ksa z?wu=Qn<aC)0azoE=F?o{ic1psa?95u6>A=NsyC#cPw z-E4fPdY$mXgf9Y~c?BDfry96_7$m?Me7j-%ozkQGhiVBh8L*OAcPbm$vBcCVBA2lvht`UqU8%n6A`m;{MVY7`E_MRbZdC%Xi4Z#aohXY^ z-NIs(ejI4q&33ze^qfFmsG*-db$e++sehlxwVR><6fFH_Y^b5e7zy*+R z4z)Q}>q*t*0zRDps)kXi0a}0lel+c000DMK}|sb0I`mI`%#mTdp>^wxk*GpR9J=W zmg|m#AP|Ke2WBj4-~VxUE`V-ZODsQ{?0S+Kn)W+$7!e$XOPBtIpqC#z9lmY=W52QZjftYTU+$#q; zroEPBc!F6%@PscDD7~xr;J`VUObpRF`W}CDU|al>&k6C{ldq{MbZG7vu}yI zb+ytfUxhB&P|8xKCKl~I6{|`ytOh4e7u-MSo5P7?VLw?6+2Pc&vY%{@@cHTJ5qeHn sjnMUq@_Oq#=g{?rGqjffrAvQDKaOA&h;chPo&W#<07*qoM6N<$f^S#r(*OVf delta 627 zcmV-(0*w8>1iA%~7-Iwj00013M{Ml?000McNliru=K~KD9|x5PZ3qAW02g#cSaefw zW^{L9a%BKVOhiylM<8}(av(DOV1ZP1_ zK>z@;j|==^1(7j6e*ghuOGiZir3doG0005rNkl!d5@h;6&-TT z)XC8uqC*!q_YK;^k;)22WkObbCqbu*_?W9oy|Jie%f!%usX~IqD=Qmg@)@|-5C~4- z286osZ1($mpZAaNjL?hzlROs?Hl7>sh!c48L?CnnZ5KeIf5%$@;E_Q9Xn5_1O#tY5 zq&NL0!Gab5=rmCXF5cWo7U;w+LU{KBxP)^+i*qi7;5;Us$l|qjeX*)EXduKV9t8m1 z3-@)A8e_DvOd*7=HXDbqGP(JwrxLt3n+~rEU2IOnYM|JigWun;GL_D+K`o1va^9%L zrxr?V4AdUGe+B$Lw3Vk-YOafQRV0#9%=k@>KBO044i(fGZlpRFYF+a}A)7`QxPrAHzB$i)~M<3sr?-sCe%IJLqe}s~Y$>cKA@3(`c@`TzI*9`ox zc000DMK}|sb0I`mI`%#mTdp>^wFiAu~R9J=W zmfNy}APhx~XdpEI|Gg)nwdLYypwovl!+zDZ3=xCNGBY#tUjmwM=v6c5z$d-F9R0jo z*KZ6N?YxK8KzK&^veEvlO2M z?_tJ72d_Kf)*u2bW-%X+e(j|jfv&y~a7K>{%I$n7_#9^nV1Y=h;PN%30$kq1W-3?& zE<2C<1v*DQd^-~^PX@&Lktc)Eu!2keN`N(UGFQj{b!KK}ew{yk1rVnz{m``l0000< KMNUMnLSTaMRGQcT delta 481 zcmV<70UrLf1F8g&7-Iwj00013M{Ml?000McNliru=K~HE7$LNEW#s?>02g#cSaefw zW^{L9a%BKVOhiylM<8}(av(DOV1ZP1_ zK>z@;j|==^1(7j6e*ghuOGiZir3doG0003_NklH%bibpKI$0Jgl|SJkH*0D@oDo5w-MD9bwwkoJ09yg%4N zrqKbg>S1)~u(RqrBe!j93lP>iW74jL6{w%h`Lz%)mKLEf21>_bY|%XFh>Z{eah!4* zuXKl686d94bHF_{9h8p65Qrq8_ANox01!7rfa`@$)Nwh=ArOE88pIs@K(2>90=h>B z@R*z17z`qVtTTXqCE_u_x<}&#c*K;!yub1JAVS9VcMcAqSAN%a7=a%ffafQ3s=r%5 XmjaK4oR^ph00000NkvXXu0mjfuk*q> diff --git a/graphics/pokemon/wattrel/front.png b/graphics/pokemon/wattrel/front.png index 72981aa44e918cfb83114d326639dbc6a7d22f26..c2527bab8b7ff61611573acdafce86c0c1a610f3 100755 GIT binary patch delta 419 zcmV;U0bKs^1ndKl7#Roy0001;w}I>c000DMK}|sb0I`mI`%#mTdp>^wXGugsR9J=W z)!S~vAP@x50QPW)|NqK&lssK@?K6s=!dB_|sIKi*ilP6F9b(G|Tx|Zw`%IF@m zB`AGmOXvd_!|yx5A;5VYr`ZA&7&xIwuy#YhVVu)ANI3n@2na4l*MOZ(K$JM(IMWt@ z5Q3vuN@?>p0FL9WmD_)@E+`8cWAwGAQI`5iQI}(Soj$G*$!bFtZ+gFBc3Mc*%dfcA z^XS{@KZO7zxpaWMNr3t#f7e^Tk25DQ&;+Uvpr0;N0DLXCz+XTU-W^gu0PpXBQpQY- zz|+eLvIyR^<3(}(?LrvfAu0*Abl?`u>_Qu&*0Bh`(r3XVkDY(W8Fyf&&;Le`QO|b) zbA2Ho-C9L}2=n!BR0%5;oLZLvA*9x)$+@f&aA+4MWHn_;2o4tm-U@a$0om7nnJiP} z+w_odYun#SkqNwlJR_C?K9nPm8=@n^tqW|lEA=tI^53N=PoDgJz5wfb6aE_8R;~a5 N002ovPDHLkV1j|XzXSjP delta 553 zcmV+^0@nTP1Mviq7-Iwj00013M{Ml?000McNliru=K~HE6*U_H&(#0`02g#cSaefw zW^{L9a%BKVOhiylM<8}(av(DOV1ZP1_ zK>z@;j|==^1(7j6e*ghuOGiZir3doG0004%NklpAZcc6DBsjG3U5X&h zU1pI!vi*N~@7*Pmw66bIs;Z{v7~?b{YXGvFVz7l-9g9H*f8N*et{4dTExCAQL`=#6k7K5H^m2#(IaP7KJr1&ZZq~Gg5jx;flh;84RTFN=M$yK`!S2cR! z=Nmhw2@UYbZ1RPdH5)p{2f&)#1`Vu3e&_+H^A-ib$_G%_c);ttv3zQpI{zeIX9jsN zjThyC>LOtEf8J&QZcAPr^8=iA4CKtw3P9aiFbe{|>fFPBqh=C+7V3sU=!XFSomD=$ z#MiiN07smS`^JE5h1k?J^(># zpU{VfB5_$p7BVJt8uD|+ij6TQl;2_rBt#^_TT`)ZJ0dA9OE4ayXWLR-cPIjg3`lu! r=eBs=mqp+i47uZf^+}J{^{49_v!|#+h#uE(00000NkvXXu0mjf=7s1r diff --git a/src/data/pokemon/species_info/gen_9_families.h b/src/data/pokemon/species_info/gen_9_families.h index 8880d3584d..a59dd88fe2 100644 --- a/src/data/pokemon/species_info/gen_9_families.h +++ b/src/data/pokemon/species_info/gen_9_families.h @@ -1765,7 +1765,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .trainerOffset = 0, .frontPic = gMonFrontPic_Naclstack, .frontPicSize = MON_COORDS_SIZE(64, 64), - .frontPicYOffset = 2, + .frontPicYOffset = 9, .frontAnimFrames = sAnims_Naclstack, //.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE, .backPic = gMonBackPic_Naclstack, @@ -1818,12 +1818,12 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .trainerOffset = 0, .frontPic = gMonFrontPic_Garganacl, .frontPicSize = MON_COORDS_SIZE(64, 64), - .frontPicYOffset = 1, + .frontPicYOffset = 5, .frontAnimFrames = sAnims_Garganacl, //.frontAnimId = ANIM_V_SQUISH_AND_BOUNCE, .backPic = gMonBackPic_Garganacl, .backPicSize = MON_COORDS_SIZE(64, 64), - .backPicYOffset = 2, + .backPicYOffset = 14, //.backAnimId = BACK_ANIM_NONE, .palette = gMonPalette_Garganacl, .shinyPalette = gMonShinyPalette_Garganacl, From 5a320f94d247310b05c8278f54c49c4cf927ac3b Mon Sep 17 00:00:00 2001 From: Alex <93446519+AlexOn1ine@users.noreply.github.com> Date: Wed, 21 Aug 2024 17:43:57 +0200 Subject: [PATCH 03/32] Fixes Hyperspace Fury softlock (#5237) Fixes #5236 --- data/battle_scripts_1.s | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 083143bdf2..5bd91f8df5 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -928,19 +928,10 @@ BattleScript_BothCanNoLongerEscape:: return BattleScript_EffectHyperspaceFury:: - jumpifspecies BS_ATTACKER, SPECIES_HOOPA_UNBOUND, BattleScript_EffectHyperspaceFuryUnbound + jumpifspecies BS_ATTACKER, SPECIES_HOOPA_UNBOUND, BattleScript_EffectHit jumpifspecies BS_ATTACKER, SPECIES_HOOPA_CONFINED, BattleScript_ButHoopaCantUseIt goto BattleScript_PokemonCantUseTheMove -BattleScript_EffectHyperspaceFuryUnbound:: - attackcanceler - accuracycheck BattleScript_PrintMoveMissed, ACC_CURR_MOVE - attackstring - pause B_WAIT_TIME_LONG - ppreduce - seteffectprimary MOVE_EFFECT_FEINT - goto BattleScript_HitFromCritCalc - BattleScript_ButHoopaCantUseIt: printstring STRINGID_BUTHOOPACANTUSEIT waitmessage B_WAIT_TIME_LONG From 4cc193ebf1e839f9a14aa36a2d6a8056adf8e1b0 Mon Sep 17 00:00:00 2001 From: Cafei <46283144+Cafeei@users.noreply.github.com> Date: Fri, 23 Aug 2024 12:38:09 +0400 Subject: [PATCH 04/32] A bunch of fixes for follower Pokemon sprites (#5241) --- graphics/pokemon/archen/overworld.png | Bin 737 -> 627 bytes graphics/pokemon/archeops/overworld.png | Bin 1063 -> 983 bytes .../basculin/blue_striped/overworld.png | Bin 682 -> 654 bytes graphics/pokemon/blitzle/overworld.png | Bin 623 -> 641 bytes graphics/pokemon/blitzle/overworld_normal.pal | 2 +- graphics/pokemon/blitzle/overworld_shiny.pal | 2 +- graphics/pokemon/crustle/overworld_normal.pal | 4 ++-- graphics/pokemon/crustle/overworld_shiny.pal | 6 +++--- graphics/pokemon/dwebble/overworld.png | Bin 526 -> 506 bytes graphics/pokemon/escavalier/overworld.png | Bin 1279 -> 1286 bytes .../pokemon/excadrill/overworld_shiny.pal | 2 +- graphics/pokemon/krokorok/overworld.png | Bin 885 -> 826 bytes graphics/pokemon/krookodile/overworld.png | Bin 985 -> 852 bytes .../pokemon/krookodile/overworld_normal.pal | 4 ++-- .../pokemon/krookodile/overworld_shiny.pal | 4 ++-- graphics/pokemon/lillipup/overworld_shiny.pal | 6 +++--- .../pokemon/sawsbuck/summer/overworld.png | Bin 677 -> 721 bytes graphics/pokemon/serperior/overworld.png | Bin 1101 -> 1076 bytes .../pokemon/serperior/overworld_normal.pal | 14 ++++++------ .../pokemon/serperior/overworld_shiny.pal | 12 +++++------ graphics/pokemon/servine/overworld.png | Bin 582 -> 621 bytes graphics/pokemon/servine/overworld_normal.pal | 6 +++--- graphics/pokemon/servine/overworld_shiny.pal | 12 +++++------ graphics/pokemon/sigilyph/overworld.png | Bin 786 -> 713 bytes .../pokemon/sigilyph/overworld_normal.pal | 10 ++++----- graphics/pokemon/sigilyph/overworld_shiny.pal | 20 +++++++++--------- graphics/pokemon/snivy/overworld.png | Bin 623 -> 562 bytes graphics/pokemon/swoobat/overworld.png | Bin 831 -> 830 bytes graphics/pokemon/swoobat/overworld_shiny.pal | 12 +++++------ graphics/pokemon/throh/overworld.png | Bin 1071 -> 871 bytes graphics/pokemon/throh/overworld_normal.pal | 2 +- graphics/pokemon/tranquill/overworld.png | Bin 768 -> 828 bytes .../pokemon/tranquill/overworld_normal.pal | 4 ++-- .../pokemon/tranquill/overworld_shiny.pal | 10 ++++----- graphics/pokemon/venipede/overworld.png | Bin 616 -> 645 bytes .../pokemon/venipede/overworld_normal.pal | 4 ++-- graphics/pokemon/venipede/overworld_shiny.pal | 18 ++++++++-------- graphics/pokemon/vulpix/overworld.png | Bin 818 -> 739 bytes graphics/pokemon/woobat/overworld.png | Bin 530 -> 565 bytes graphics/pokemon/woobat/overworld_shiny.pal | 4 ++-- .../zamazenta/crowned_shield/overworld.png | Bin 1166 -> 1166 bytes graphics/pokemon/zebstrika/overworld.png | Bin 983 -> 926 bytes .../pokemon/zebstrika/overworld_normal.pal | 6 +++--- .../pokemon/zebstrika/overworld_shiny.pal | 6 +++--- 44 files changed, 85 insertions(+), 85 deletions(-) diff --git a/graphics/pokemon/archen/overworld.png b/graphics/pokemon/archen/overworld.png index e25f19ba7f21e34f53caac0b73e23d7585997d05..6dce497d6d3a5830a522b00cdda7cdedc69019f6 100644 GIT binary patch delta 568 zcmV-80>}N~1@i=u7#0Wv0001UMu)cm0004VQb$4nuFf3kkv=ki0sTotK~z|U?Uuok z>>vn5MFRNn|NnQuBt1O|n5yo@+eoUiIUpBAlTwx~TefW3vSrJbEn8L!xP8Ihs=3sU z@mKMPn_H^ziSG%9PpaSnTaV^BCK!=;rtpcsCrEuB@L6D5;sg^j9SXzMpZH-?H?*Cq z@)0(NLtz%5Vsv?bOf3t3;;#%1nHgIqV2-~iKx|#p_s;RF&gq;P8fs_ zh2B8xQIx^;9XP1(j0c8!yg9`2u8>g4>kkDEPTnPqv1d^0p>z%QcudHF!w&8{=y#0K zcn3Y+9pW8-v>djyJ83Mi41pSq=dVKdv3H4QxEwg1VJpG!nJNkppCJGp4kh`c8NIOt z*{8~9Z{o0v9%n6Cpq!^OYl1f#JU+g~JRW9WQYC9+GG9CAxx=n<@}bJnsj|X69-`~} zjcZHhYsa=p6Nl69BXk%%#ZP}_r1Z%j^Z0_!9G3kT5BmXVuN1c}wVGd00KryL_t(Y$L&;2Z__{!UDraEe5#|6N<}PkKUW7Yd9CnLvYo zL9!*vgcz?U99^_#XXS^hvm`sM&a}`+Iqb@Pn^JmwvWD8uB_Ut}lZ{HH5;SNu8f_LX z!SJF}dWtGJymXlCwayw9`+Y%9U`51lSMy5;EpssPX&~u^`09~vkF7BKGN#T4alM|O zkXO3*uCO|3V?-%(Y@lC!ap}+Yiz@?v_ipMR58ZWv$)iyaz5Kpx*}VA{MC~9BSG?|d zyn+a diff --git a/graphics/pokemon/archeops/overworld.png b/graphics/pokemon/archeops/overworld.png index 8a8a23a4edf76796cc9f60309c83f8d5dafdbdb4..6d8faa6597a22dedaab3857e7c9e9db3e8232bfd 100644 GIT binary patch delta 922 zcmV;L17-ZD2-gRY7#0Wv0001UMu)cm0004VQb$4nuFf3kks&sJUP(kjR9J=WSnYD- zAPfx12yFTNpZ8YaU<{&Z&bf~tWjd2KuxNKBWYfpvXZ-u&+`AK>#oryyPYFzCK8e3Q zoTtT{SZE~RMpvB=Y~ne53vY6ICwVR=vKTO>*l*+3bsfHo!BoH@d<$JCJ6JH&k;R$$pDFF4;$>$A!Sm;k;3h*&X0EN?G{3Y?a z2aczxg)mUA9pS`Rhu^~Y0y6(De;|d-kjPwtgvQ|@Lwp~d91e;b<_`SR;R#+hP!?_| zuiCz_gi89Z^PrxRP_PA{?}7qVhe*R;Dgf~jUQlD(f={^w_%@!Do_qGH$I7~JkgEBZ5m^Zs*!+)qUOo(@(RMC*Z zV&T)_*gLH8wLg@>g@Nnv;c&RG|B62Z4EVE43Qze%K;D-VB)IV*@4Zxq#g8?PHbXE^ ze~5WJqux_>m?n7e)-o9IwM&Y1{5t{8p-54)<0)!?95%WPW5tGc8RCXnLxJNeV201t z6KKHKE~%-JXuL@j0im2NoHenQK)}B14;g(P@gw?^4<5ZLy7Hjv`uypzjgMIY=`S7r z*(DGA-B{zN0?dn*ff8un_p$ztC#~Z}8!;{H%qMN@u!+Y4#pjOM;cJ&X`p;P7MZq&~ z)_ie)ct0E-tnY?BngI>mIP(z@-vB^1a-Pmk= zb7O1q{f#ZxkP0ySd|5KSC3OVS_`cWPnVoNWa%d@cE-ye4!`qK{ojQ?)@0@kG^-VUGafHRqeYt&Ph092>KhHJ8m?XxQv+*)+Y zAJrp|_d`}<$Jv^1Ab5Po_ult?cSi#7{|{&z1LxuRy-~B@HF!V#eu1a@{?V!;aO8ho z&DA*iRz8Jq$wj>~ANAN*_rXt!Ao)e&RO8`5;!DW_+ji^i>a|^8JqyQj&WkMd@4(SC zdwq-l(SB3jE~TbAY`fAC8pt^)OQxrH;5%uO`Cu-F`>jYghtn-ny(AEh41uj=x^V|S zOp~))0>Sd;`OSDJbAOA|O4yZS&O5il&^!P|D zyAm%QD;zpEYt!Dv+*(1a(V!BrHZji6jS@|AH{QvD18-K%fb9m(j!C_#@xp(x!fT@( zACn7J(83ABq3Te6bJQ^eoYsUDj@WG6tO)klReHj5!LWeCc8(clWL6QvDc>`!OD9S( zAk;ImbJ~n?hiulA30xE6G)Sjn;5gxq@l5GcN=S!#72(oJ>RUX4NmB|SdiiM%fE@BF zldb79A}h=Z0?Z@yL{mB5=Z=462b}h`+u;ITDimRM_48{h;t8mxAU=1P!;$L36L#US zyd@LZbAwKw;z&}~mJ7%I3a?GBqmD;tHxxZV(;+_nQ?HOp!0BDKRSJ&_!`;dNC-9x$ z>EJiJV&Hfo;5telenM&AL4p&V;rJ}{X6h&^O2qqhLkvay=IejDswICe{Gs>7SKSfc zx#A^MI&k0CJI_$e~2*Jama`eIYy>XwT2Rr_F Z;y?5OTMg diff --git a/graphics/pokemon/basculin/blue_striped/overworld.png b/graphics/pokemon/basculin/blue_striped/overworld.png index b8f0a345838b41119688d4484ba889fa38f43ff5..b900662eaf1bb01d1d1b1c3062386a681999c7bf 100644 GIT binary patch delta 594 zcmV-Y0#V?!Ilty{Nl{ZEP)BS=4&xTAGMe0UYC zB2pjjgw9AkJqbMk!#zV|=K@;wQYXU!44Fo{71p>6FKuDl?5a>}3@! zQm|P(-q$B=kyZXBuluurz0P- z{ET5R?>QH)42Sq~o)U+@@~4!R`Cr`R$86R1HrT4!Ot^7>;C8RYycgnzM;V7qHe3C` z(P+ape|Z`#!~Ea4$-fmb*mf9%zb0P?1swQ!0l03eDu-n<1$^;_F=bnT7(|ocFN?up z0S9glD_G*ULAC}Rj`lTbdR6~tg9olM1;QX6QiHM)2l>}rTfk3)Y#ZQltS&FNzWkd4 zj(kuc)`u^D%!rH{=pg@^_gBn1<2-19%dxz8)D9%F20b3AR$0Hw`nB3$3XjV^mmCtt zW{sGzQLm1BY-|%bNhWq#D g{MM~oxBfBx0oE8CVDvQL=Kufz07*qoM6N<$f<444X#fBK delta 622 zcmV-!0+IcW1*!#*7zqRe0002CwraMKE;D~YNkl(J%niavB#KN^RzWuCb5qK^+6*Njl)6x=>69sEtzlSqXn? z7#MHT0iVBfP&}ke8(e571U?1#6hqW6h4sb#J zFcFyUXdz@*?%mwG_|4+I6~{K4cTp3{{N<%!@BEerjOXHjH#+43AHKx__<~*28|Ebe zOOE%^4rB8&ehy`xQ6d6PZk@XGdXAHT_fahp0l+(32xndfTWmUKQ~WL#E*XCz@g

    -BEFx%wx$T{vN0ruypI40#-Xu70D zn>{g4vrYQ^4i1Dc&7cxohF?i2*a%50Y|>%Oz$YXmy^h2*kk~+k1PF?MLz;m_!#)kE zI1hp_n1#VWutj|TOq!<|AcR`*zJ`N7VOJ$72!KI2uh8TwP&N@Wc*I+9ele*) z#+AXhfb0FT!lADjn-9q4JppkhDV+6UkrM>c0^hVQRmYO%iyZNupixwB2J1_ zpE}*<%uHHYWq+efBHoN@&bq{ubEPHDz~H>VwJxlTSPCQFeV`DZb>0eG;4LD~Jiw^7s zj)%i&F@Z|KwEFS3M*Q$%2sHMgD_j$ZxGiLH#_r6Ldz)Zd@huL+q*Xu0z@6p4!rKxp z^48e8y3jZ8(|}W!V@wzVhKa|?;WEakJ!gw6A>i7eG6c@I^HHFE zW}vp)TWvioottwW{Y?(fom=ts&eo%NTc=Nv@c!5s!wTFJfJ2pWR#Tn=?#F+dEXI-N zILetvx_(agrqJoNz=QbwRyj{s;rMkC8E5CC8&1$t0!vmP=LM<> zFBdG?;{O(y)r&`Z?V;Z2n*!-J^c(Z;J?>fk;oG2q3yfh!x@|4>8*|#ky==Vi$qMAm z7^Yiqi)_kilYdd0w7Fhi_TIXl6kx_UDEY3x;x;Nh>MUk!j)y%-$c^y~`UszKXRtnk ziCU@WJzaHf>2~=ca>z5&?UlIyScV4fS5?&(jJh1zy}dpsm>*dRnyev9>^bv}9;& ulLBV}tgXBw#g}~5F-ZT8;bwrX6@3Fg%n?ZrA3c-+0000VGd00DVPL_t(Y$L-XyZi6ro2H=Z4u#zTH)%8Mm zH;!r;L;M6)-ykoLmZ4^5uo){V!Q&P)#D?k;sp-&xoA?gBn84Q@_q6j3;x^%=uN(kAaniZVOGrn?44s%Tz)r|Q z9Dp)Y?ney|Ft)Di_wY(nLsS&nNO_{n)~c^Pr>w30%7ZIS4W-c97}1j6xxfQy-POW> zH7G+-bzNPjl5+Xx0w4TK+>#UpefQq|g`5Rj2Ab@pMR+YhDLuN%M8~?tA=mb76GtR+=;mHTG z;V8`KMHOci3kGP>FBdQl@PVwI1i-{6eDW&l8zO8J{qpIeO9B740KNeT?vmxkI=FBE O0000c)EJTlx70+S8lYb{dzUESLE^}7KmEs1_jSG2|2 z1>>Fm34q@H6CD6oWAAi3<5%?`1N=~rp4phR#gn)@{nr6+^a#9ETO2ZZr~fAd*E1X! z!y}@S=Ggair{4pA5QiY9O9*^XXSZwQYK=J`Me#-vg!H+74@i<(*Z}oC%Q@z^cOd{0 ziR7&R^hK1g&E=hb52$)3F#w_b4Fi@SzyBmb(e7h*LMepwv3?Jz*IGR{I$Z*`K_W;H zbbXhp|LDe9o0drCfLQuer&GXo490@0HP5`Mg5<)s1V!2Kn6f*44AH0Dt2zEg)mb?>UA6023y{Ub!_OW^e?wZbPx= zddc9f4=YW7`ScDnl=F1sxf6Up_R|00c4hWeb{mY zAomqE={3N1oe{8_bb}OVdpxw4$79pa)ga_kz#4#m4lw<%zi2P4plYyZ#K@}J|JDF* z8T2E7vYsxu0CE9jy>>V#X0~-j4%V%?<{8c>fO#(=oj#lWMh6HkQx6ybmD#t-ve^{X zHpX0aX#$8Be|{>UH3QTq_5L_Ag8>FH?*xOPF{snV%LKS6gHHfsPsWGsg@D&^sb{tF$HJKl-^ANzvA6!j|Aj7FQh;=TuMg`MV4eHEFjssxSxFSdRD+a8& z0d*Khz~{PB_6KQGK)yF%)wrI=0J3MZ0zNInPXKbW#M~hEdpCg9+ZgoeiXC8F>Y<2I zvcY--oYNjr0a;V1qr@ofF5^#GV}?Elkfeow2S8rZVW1e4T((KmyFJ9FfDb^{2}pw) zI^Cye23*%C;Yis6`lu)!&8+UCc?_@&#=$^rj+JhZy->@uyftVcQEfWmhV#0N-D}8U z0Ad}W1AOWd()mnH2VP)|ylKy>j{z7V8{mG{0AQCw5cCFOe{QA}vHSaTKr;~smF;!OWyoT zoqxR3fia&Xed9bPDD=N(sN*}ky+lxRN}p5I0S-l+$}=a{4=2Mk2{>tQ3>H8fxaRVx zWT3nVpb3z^q_@MIgVGd00dh}L_t(Y$EB4$Z{s!?fL{^NEnTeGNLQLR zDWJg>u${KEWA$c5jU@E85Fjv=?pq~U?X8$OYPp!XQ>oiJK|;HPjfh@yG$Fz*Y-(Nj2x%n>}q2Lywt z_v!5EtL@Jw-T!v^$--S8%=@$E7@QsE{~zejrX&bv6Zg+u-a7%s&j!&kBpbrVo`E-? zO^>CN!`T2I;(Z~j#5kg&-f%uPi@f=i6}3{be>y+J`$DGJXu-ly4lJ;rsiLkgXJ?0h zcwZP=R)&!oq2^|Us2#Cmd-O5*X(lUwbasf*T4>MrmE)?R90L<#w4g#_2xD_W9lKi` zfK*i$!w4VZoOVKUKJrV;Wz__;QjajaoD_P5sMc@5Ylb%QOsQG`9Kj*ZDR)9)0y&kT z5irBd1f;Y9J@`$ooG{PztV!07Ws^~V%`+!VWN88-Omh82ZJ?l1g>~~SLfHiTj@y7= zNkXXPt$&MAQD#=i62(n0&5}%ir6y24;U-Ag z3Cm6xB_=3IR7!zR#j8vsOTC~}e8fJ_~y%`HS%L866;7M=&C31WErOM3H{`AZASR6f7I z|CfnGX`vob$Ba86q*bLSrZfSmRBl*E(F88^qI`REqlKd=F~JzUWAztHFhL|P2s1)5 zPPH&3Rm-#tu@%Ojy{<~4gj+^`s`~wPRgthZ!SD0}Gq(i7>(~YcT z)e=7E+DBCaj!|A=C;a2*I#hNU7D^?B=2De*lCdJDKd|~l;N09&9b}~r)Yt?8ozBsR z)oQi$qNzqNJp;>tzCCY+FK^4sV>@edRjTmitzto8pAb8Zo$%soY=caH?}c^kg21l) zM)W@DX)FBxS2~^>pf?Ysg`j*bwL-fK|qsG>Um!b zEso|8Ho*dW3)~5xFV*aSxVfW#bIZb-e+;iD!Y$?YigSJ_2r$fRy|t)wx3_!+xe3Pp zbS)ID=63(qt6a0000B6AHXqKFxDGO;3fldG4L04+#bSEC1*DEAW{(KGF>eLV=h5RZ%0YrwR)k zQ0E4{rx`paFhQ<=FvJVk{4+Yq6qa~zZF?mf6a;C_6~@P0z(%0LG{pr@d0_ZwD4-xX z?iS$Zu*f1!O<<_7!fgYTm}OTr3E-R{{aa!W12}=v9?RUmRISR6Csg4yg+4Isqw5C* z?R`5Q*bzU46@4+!@a+*ER#*780Wyr}RHOZCf+^fB2_S=i)lWw)#9(!WJBctW3_3p| z=$Za=Snk@ViRBruCeAxB!#9>TS=cMdZ6{Ac>_CU>8zDiSa0KE@y;EP9oeHN-U9HLS ztBn93?MX<+0Q;Mr9$gf?MRqv7iVRP{Z#)TLEGRK_3Wg2-j07xWC*aRWKaOS@V-XD^ z;0?ON`K0H60c8SrJT0IG*LTHB#^~!oz}m;y2~mK&XA~SPMh(6@z;edraC(zHq)94} zIN+>=umkd|j|Yy}biUyxd?)BJKsbQ+!4xxs<;{WWO8pK?J1#dD1O1iPIMB{XpyM`< zPvsQYA9z?on3$A732}rvp$7rF#9_u_c_$$M?G?U%9X*Jyrck2}#0HLH1`I?RT;|x} z@dt);3dazi1UEvDI*qk$DOPN8>~ju5KLLpes1Q44$cr-UDMoXR&Yx(KAu0$&9i|Us z%?Ul8vz#x(-3J?R3V9D?3IyfZ%tM%AWXQE~ad^?Ji;byt4ybhy=Gd~Pce&^1P(a&q zn-7v%5pI0g$MP)0j1Z$PkVGd00PuWL_t(Y$L&&=ACS&LfK16B#Q#znh{=-zdoPf) zmv>Km@5tkkyv19*#X4w*b{dJm{OL@O-#}i0-j} zawwCH*k*K*iO3)W2zd&Ag<1(JZ?G~Hj_!U*u1_V8H(^3{^cldl8M%akYd8b#cx4@w za=cM?zsk|4v4oQI!%cW404xTD40ORGgAG=J3|8T2W5pB~8?g;ggG2#xG?^3{88!r8 z3?2R69PqS(g9f%i%ih%?nmroDzgU5P3@fE_kLiWgpL+=8JVf=iv5k*LN}b&}{6`Pv z32u4{5c;`bDuP1cdrkqGlM4_bxckF&kM+W}ogU3o8I}`=vtqJ{+$2&F_3EnoA!B1>?CkaI;WH;{J^iPz|w3APO7Jmsrr|E5Pd)wRI_RlPt z{T~0RrEC_i@W1&qiP=dmlIPi0@Lj&m(>V@P(0NXwf_*M&3vl)W_%`=fIO6cg&{*cP zTuM*zT>Jozc*i>eb~!ef@s+b&5}2Sqaw(q2F@FU3I!9%zYAuBUIuRc69$?A#6AIYp zTZAbR5OZuT=YRcBi*F3@h|@GR2mL^RdWL_oS2<57rma1`mw8{H6qX1ag8+{B4+NwZ zA(N9&@aAM8T6m{<5AS6zNt2kv#npern~!KQ)2NT%x!(q~w)m<$|2`KJr56eGAMt6r zS!uDtpfle*hcDc55QN800eMlIyYm`ergRAO?{ld&BY#b}XlDE>UJaKA&vgg^6C{<- zT0cdzcTq^m8&Bi#ZVM9>We`?Fz96xzGaOP1$YUeU<-t)5%M)HWabh_(K?4n|jPc0=>7ApB+&Wk&GCHF+ zNhuibj(-)MZnds7c*t{nc7F8kaKo)WOaR<=xQfa+UKibX)TS0z@x4YyCq-`Q5eUR< z@oEMquLMx~f6Ri{=tF>;WI5oB@1kqV5+BXuLDDNcQZ%0By)u6O5jima)pt;IfnFlk zg@z5p!P&Sv+iOFvtKCzn;8RC_y=vFzEFgShn16s22}mY@uS!oqrhreYAe__jGSQ8b z`mY(=y=(%!T?RK=Q$c>7TP3A41*-&2j^D3LKynqTP0bB%pRt1F3lECO1W0rj>bi25 zdxpjZc**k3x-S0kx>j7| TYDSIc00000NkvXXu0mjf<@Jto delta 975 zcmV;=12Fv52H6LY7=Hu<0002CwraKj0004VQb$4nuFf3k00004XF*Lt006O%3;baP z0000jP)t-sn9!hTP%w~qP)8vdsEAkq007{~SYu;j?Cka?B_^nlK)I~Ffr^2)zsI=1 z$VKS~p#T5?32;bRa{vGi!vFvd!vV){sAK>D12suRK~zY`?SEB0Z`42#HL@HjUDn1c zAeGmb>yXZC`IQb=)#&)Y+?g6fdufvuskbi(fw`94O_wCWk3igMj%y^#0wCiAOJ*YXgN8BoMOLP z$lt)W?+Nk<>042nq~tA9v_lC{;yFkFAPY54azc=vNdnQ9kk0CEj!p`tC zAb*siQyTsR7`?MZ&F4)f5f%tmr@viu=}ZZXq?C0^{U^sDWoq7<31@_&GqZ;00m(^_bc!;}2!&?CoJE-5dhtETNv@wa2|~O&F>dE;soq-?kon!b zOA~F7WkeBFe5dYVV-OrpM)9F;-NBxPTS&mF&dzyb46+p61iw|iOg;ISZvf3fbH422 x56GDr!&(ISXI=tFG-E__&XoT;$~(9$>n}^A+6sPVzUKe{002ovPDHLkV1g>Ix6}Xt diff --git a/graphics/pokemon/krookodile/overworld_normal.pal b/graphics/pokemon/krookodile/overworld_normal.pal index 04d2244669..e416936398 100644 --- a/graphics/pokemon/krookodile/overworld_normal.pal +++ b/graphics/pokemon/krookodile/overworld_normal.pal @@ -10,8 +10,8 @@ JASC-PAL 25 25 33 99 99 99 236 236 246 -99 99 99 -185 172 189 +35 35 35 +152 142 156 38 37 38 129 138 129 182 191 199 diff --git a/graphics/pokemon/krookodile/overworld_shiny.pal b/graphics/pokemon/krookodile/overworld_shiny.pal index 070a0a4e5d..c89ebe28de 100644 --- a/graphics/pokemon/krookodile/overworld_shiny.pal +++ b/graphics/pokemon/krookodile/overworld_shiny.pal @@ -8,10 +8,10 @@ JASC-PAL 168 136 88 0 0 0 224 200 88 -99 99 99 +48 48 48 236 236 246 168 144 64 -185 172 189 +122 94 0 38 37 38 129 138 129 182 191 199 diff --git a/graphics/pokemon/lillipup/overworld_shiny.pal b/graphics/pokemon/lillipup/overworld_shiny.pal index 63bbc81935..ffdd1a31f2 100644 --- a/graphics/pokemon/lillipup/overworld_shiny.pal +++ b/graphics/pokemon/lillipup/overworld_shiny.pal @@ -2,11 +2,11 @@ JASC-PAL 0100 16 152 208 160 -104 72 16 -96 72 24 +97 62 1 +171 105 39 184 128 72 -232 176 88 0 0 0 +224 169 81 240 216 152 88 88 88 232 232 248 diff --git a/graphics/pokemon/sawsbuck/summer/overworld.png b/graphics/pokemon/sawsbuck/summer/overworld.png index 7bb026e55df07b9ba2b6361942afc594924c0289..1926a5f07112089536c67e498745c2eee671d82e 100644 GIT binary patch delta 664 zcmV;J0%!fD1KVB8uc$R1tct|5Ik zMzL6T>weEa1&q(ulq8wSPeeH}C@Dt$i<)6&ilZUPmVXEse>zM65zY*1N!FrGDTSbP z-o3to7rqfN{^AgSAi|l!p%{(YByrX%Zy8R$6)?X1A;dW|I3`xg)|~WXGe=MU00PFB z34kteX3!L+NUe4S+r;2dz<3A+qbr;kwD!sEKg^MU@lb|9ugE^(%-}f7z|I2 zGOYUH7-4ScFoO;3F@%q3y{kjJ{*8yW41UkmU(X`FVE-;Z4IW*E2QI+p`iiDMxQ{?C zC0nS$$=)Xl<4bkSMSOrN8P~MU!r2HR*U?pfGU!+9idC!fR&=fDUk@vr3xv`wkM$=r%Rc)%=#363y zz*GGXh2rmyKVR=)JeKhT6EbYiHaGtQhLD#hJJ3yxX-&z zuhLI3qcMqL149EYjjN65wox%Jjb?w{mj+0zF;;b0xgDQxS?F|AA2k~n8sJ5}-_~Ew z?ll4YH>PgGB4#w7>*MZxGISI0{doVA1%!dHcLSqN?Rc~m_gbfG-L0elbV#e#~gRQhWy*QyC1Lg-F5C*!3Vk?N7M%I7I-KL5e zdb@8QM_zy*2<45v>2QBy?N^&p%x*(O{H+NCq1+|jTUAzG|9WQKM74++(5}~3uz)ad zo0@XNy)+}{{?y$QcGE%w9F}*SXlFAXh+9fWEAEuI`(&#-yNlWdq?07=H)@0001UMu)cm0004VQb$4nuFf3k0000mP)t-sfY9g+VkdKO zIT)Nu`1tq;5D=Wzob0U?bEIzdmt39tKk*Yk@wdboLa3)W zJO3Z!MD(Y>3jdinw|y6VVc)k~17ilo80Er=GqQjA09O)GIHnRG7$1Ej{ZqzA;y~a7 z>}1fe#+idh#<{J~7xs0af65SvLxFSnIM7&Abae5Ny{BtDbXS8zXLI7-DB-e{qW*AR9s;W##2f4^U>?^fP3gNOH?{8`np zKD);-?q>`rL>xG1Sr!~LfD{-7)$$Ee&$i4!>)0&#Pq2IMWp;S^XL=;;xa4z+@YoO?si-FuFF) z83wl6XRmj+OES*8=#XIy{uh}x@7nS}AhZJY7}&FB#Bw3zUIl1icA z7$$!iS${JC<*F}dUNL$VYnZs6ngD&ToOSD|I+Dgsn`Z9teP7{oOE_rV_f{X{n0L%5 z^%jZQV`Lml9>U19A+Uj5DsWxZeMlBJu;&~tYiYI@t*Ee0aH-Ik!H`H~fw?5u4Pgvr z2vwhx)%j7_v{{eqF2tDp5`C=B=@1;BLk1vJ34a3pQuNtH(7>`QD?-h$GfDln*$r;H zF!O-5O1-*@&lz5B7CescA14}^f6)UFSBPyZ16P~f;HC>DA>jE}NuizolduWn8}815 zf-M0V5qnDD)nyGHJ|mbeq?l!|fjs`C;8ZZqjnpuVzNH4=@OlFZrrv;$(UVsl(sbE{ zhkrGMqT6;MMW31Bar5BM)!d30&%R~oHMqnp814;R@WNTJ2A1d-&hF=1t9J9nmw+!M ztc}bJc-G?FL@!ASJWGcwhMu52T}VV>cKRCv21t6n0uP*Bd{^4p2Pr~}?*S4FE(&p@ zLw-D0t5B`OWEjc--=K17@%q5i6(Cjoj(@<9sw^#(7f-Qh0}UQxj|&OG$wPKP#*fuN zhM_aWTRhLg6(zfo1x8b$7Oyq#^jD*$LD+71V(1dHEAN9Sy!ksg zEQGw&3D-v_TXy#LPtAShux^!ub?m`5S+=K{a@;C~X$K6_Wf3$Le-qa+Ln lZbYb8N5(IFH1NL~{{atvHt$n(>Q(>%002ovPDHLkV1f&>^5p;k delta 1092 zcmV-K1iSmR2+atP7=Hu<0002CwraKj0004VQb$4nuFf3k00004XF*Lt006O%3;baP z0000aP)t-sfY9hDNN8trH$Zrp&)35T4i2d3Xt}R7V5V0nI55;902rJ~RHdGV00009 za7bBm000id000id0mpBsWB>pIvPnciR7l6|luvKlHWs zlFm2dD)ZVjlE6K~!<0jl#WAs^em(Ea#b1`j0EvT^U8fDj8h9Xai^x14)| zHn_{NZ%`ubF;wJ8&KuqK1hnaLwUkoLx9kgeIqk?rynoINwyx!TIpt{<=a9#6{`Yg) zNPJH~h(|=hs;2WT`vO*~qf(m2&OptT5;Uf;gv%E{-28rI`;~Y{u=hhhZ(tJnD~J@7 zNU4oIxUQIkLv?YI(778pO|ym&)S+@dhsa5t8)q#~=u{0=WEX&18s{k0h9XIpQ~O5J zLEI3q3x72z_%lfD7x!KT1#5YNH5lbP2Bk)E_Vedhm_xlt5Ed1?Py?QcKW~$DMYz-X?y0M#pOE6r8qYbzH z@N1Y<$7MpR8QW0HZ1dOqA(mgvZ1> zVt)#Lxt+M?6X6*C@8H3C*yZBb_Pax+5iF;a!WWo10}M!sV9sD5BXh)ch?);(kC|mq zCI#n%0e@pR9ZyQ41#6I2pGWyNBFxhEa#O}v_f6*=GCWl^YYh^S{in^-PY zVn?t&1=(p>@d;{NEQEb>x6F`ew5uO&UuZn{7s5Yx!O*{=5c&rz7E diff --git a/graphics/pokemon/serperior/overworld_normal.pal b/graphics/pokemon/serperior/overworld_normal.pal index 3733e903b2..6600b8af88 100644 --- a/graphics/pokemon/serperior/overworld_normal.pal +++ b/graphics/pokemon/serperior/overworld_normal.pal @@ -3,17 +3,17 @@ JASC-PAL 16 128 208 232 12 98 39 -106 115 57 +115 112 57 24 156 74 -236 173 21 +248 248 248 8 16 16 156 213 156 236 173 21 115 164 115 -12 98 39 -236 173 21 +5 59 26 +248 128 0 24 156 74 -0 0 0 -0 0 0 -0 0 0 +208 152 8 +12 98 39 +5 59 26 0 0 0 diff --git a/graphics/pokemon/serperior/overworld_shiny.pal b/graphics/pokemon/serperior/overworld_shiny.pal index eafc2d1fda..2a03f663f2 100644 --- a/graphics/pokemon/serperior/overworld_shiny.pal +++ b/graphics/pokemon/serperior/overworld_shiny.pal @@ -8,12 +8,12 @@ JASC-PAL 207 215 195 7 14 14 168 232 104 -185 175 53 +224 248 152 96 166 87 -40 56 48 -212 33 0 +40 48 56 +248 64 24 24 156 74 -0 0 0 -0 0 0 -0 0 0 +184 179 114 +43 99 64 +0 72 40 0 0 0 diff --git a/graphics/pokemon/servine/overworld.png b/graphics/pokemon/servine/overworld.png index b329b478379cf996f25e9d060fe5b6273b4e3b35..5c9caeec8c853772c2b0dea604a97cd6596b0fa1 100644 GIT binary patch delta 608 zcmV-m0-ycH1nmTn7=H)@0001UMu)cm0004VQb$4nuFf3k0000mP)t-sn9!gOQY78O zNh!rjACor#00516F#GezZa@^l!IM8(Ke$LB000000000000000#MCK|0005&NklC*2t{iJS)Bj>-@T~wvMbWM50h+4n`V+j@uEVV<9~SUvBw^J?6Lo3>C-%| zJwkr|k>@}1bL|lE&nAG`UFwUtc@WWJjbfg2-sNnNe1Q?S_>|4a^9gw-vU`iyybd1m zK0r5LK*+H|TfA0HtKboD#unUe;yrHh`{ORJ+VqJ!0weww$dokU=_L?x(+7q3c@;?{ z41t3szQxA?`hOBql9xIHB98ioKvepDZVF#ts$+H2&qa#(7y&CKs&zj81&$_Z*A8b9 zdFw;Fv^;O|?xbSoOz;KX>ui;P&zV)Vl!BiGzh57Wh#v-ujyAc?0Y++8?mr79;&3R8z_^;{WPgAQ+&UEPam%obF4^+D%a4NI z#L&l_j_DS-z;hz2uPx4}Rk$fkr2Jc7#M?nj89U88aD|+>ot4=6+y|VCWoKt4(pjH~ zxarG+kA=)C{0b+VV6rKmDvUTw>gP2_U&LE?ZGAq^|1?A#Tg#3*WPN5Tz8B51|5LnisD(4>!Ke67sAruENKB_O9_b uzO3HH>ygJ8WCLB|p;H)OzB?cLpnU@-FBBX$peQ{60000~gj delta 569 zcmV-90>=IA1jYoA7=Hu<0002CwraKj0004VQb$4nuFf3k00004XF*Lt006O%3;baP z0000RP)t-sn9!gOQY78ONh!rjACor#00516F#GezZa@@6rMO7|000SaNLh0L01m?d z01m?e$8V@)0005BNklilx5pSOw5sWOK&5<_Gj6vhRlD}Yrd1%$%B*sjv5w_7%OiV; zwFOPj1J~kMU4I=e^PE*Szx{nU$4ZBK-}310)o!TF>V1PpTS`g43~XIhk9LEk>VK_3ys{ZCQ7eUiaX2k<0006z0Br41}%e4dMNtcPF8;C`}^P-CstJNBD+mlD43i%YQe%F&-hjdh)Lf1|!5P z5$#Uk=o){=523^N`3)N!GCEm2-D1vVJ1jZJ+ituNJ3NL@8f->~;=BC0K%7ZAHNoYA z?`YWxK5lT=6?!hd%byA)X%G(p0o#j)UgqNly9CwZEKZ?ysQE(@=mZ}(xaU{&;w-*) zD6s$oq=Urc<9`NCR;yZ^&80($1r`2BiN`m=nxJl=@l`~zs>Rt{I+TcNtb|o|ka&C( zaDtYB#yL{WVEP1@oY_i~H#&UzHkLzg^0Zhs*2GfjZgRJ(h?=CIod_<&CF zCYU+Jc~%W{jv9G|O>nP4DZt>;m(8G%9G>7!5GqofF@j>C^EE+Kh4u!ufTDA05Tc^J za;NJx(BL9q>pHI^^b9P{67CF(x?8~J(hlP7#cviIm$1d}0(NgBbPZH42}bS_*QgW_ zi^<_HihmN-4%i&G8R@Q`fya4X&>r=doWmhlutXQbz~&IhZPGAsxa6m~%RFKg=y+N9 z89~d^*LYk~z=O)jz~gk>+mAd$pi;gVPioRM9!DhnR?I1>L%2M*zdeS)pdq%GWp54P z30#Bg4KFW49n0m0g;(IXL5O4}=oQG`WcYjejW!$LAG5Uu+ya9b82z#H`+$KL!7lKX j%Z>d0!QdO;_;~yPiccdgi)=zY00000NkvXXu0mjfXFx{9 delta 774 zcmV+h1Nr>P1(F7k7=Hu<0002CwraKj0016POjJdf(4Zl3fk;Lc2L}f~q~ohx8UMcp zC@3hvz{@Y2KeTfmzyJUOuSrBfRCt{2RZUYGK@jcD6yb_Q@1cmL$I$_2b0ijqqaVm0 zz+E{~PGWDaqU`Vs0{=F>eC+m&yH<`K>;voL^?R>-b|?Wp>VF+n(8&MXTYt3G8VJ>D zl<`4R$u&}^d;b^kBNz0t$Nn&$X3xjFVWW%>`WN@vvmW<*6@$`rJieO?)<&W=x}*je zUA0SjI6a5}B-Em&%nhYb-*|x5EZ!4zhH(U1*5bQisiEj!#FxUrDDI!<1DnUY8@`V2 z7V*A7G!NDRQGfGGDGw*KVur6;vIxlc-C*SLo`4J^fu@#s_=dFNrA9g0ZI})GJ7$PH zERXjEC#_pyXSKY;=V`?Z-)=X|Dtw6;qWdu5@tGjBg`hKx)bp&Hcld_1;*CZ%Vy~d{ z!cGL>^IY-xOb`wVfl#BlI-B1ps4!IB$yiMym5(?XcYoQ5(23c2!~>Ul#C$hz~QU5Y)}KL6}k=P=-g;a4hxq zn=NGXtnkmW7|0iBwQ1PteO?&7_=~Gl?JPEs1)yCmQ+6V*ppK}s292ha2Sk%BR@NYH zJvVU50)Oy(ifjW7=H)@0001UMu)cm0004VQb$4nuFf3k0000mP)t-sn9!gASO5Tz z2LJ#709XM3;xfgZ0AN5Mzqn_=xM%JDqUh-OxL6?n;xfgZ0PX&wIY+B$00057NklO>2@PlH2(?^M~ka3T;n}L;ZypG$Vo&&RDVdv?UcVt13?hR=hz}` zZVoIggq;wzlFJ=vOry`B1Y1ckwqlB?q{&%CEK?{cHHC3o!OAzVw6OIFYHuHs(+3Gf)DlrDsI?-fNg1qs94WnyFx5*_KC)PK*j2Y2Jf?x>ru5zd5=%1 z?^Cm$!9=LJUK6GPN2a@6E7*XKo6ec*W`n{pk0#vhQ~L%cvt6+hz;=`~SNApmwH_z7 zZz)XK)=ENMe#S0G_~i~T<;w7&7DBowWzNqEjBS;T8GmvEm$L&@`GodtZ)_O%dkdT) zw|Q!gw_q|qXevB%wkO8l+2kb3YqEH9jGzm^h!sngYT0)iPF{67egA)xfzlJQ>QbU~!lT zwhv#hZCh|IC(=*#Wgw_lD-lP~Z8iCL)X}lfm$cBURub@WSn2CfG@vpN21X96S4R$O wF9MGS;IQ*wgOU!hGwkvgy|Vz9|7-!g0b*Tq^;Z@+Gynhq07*qoM6N<$g7-)hp#T5? diff --git a/graphics/pokemon/swoobat/overworld.png b/graphics/pokemon/swoobat/overworld.png index ad665f8346656559d227e7c1987ad8a9f34e74a3..4648f80f6381e48b7362fe6e07fc1384f1b769a7 100644 GIT binary patch delta 765 zcmVY4})P0-hDjY_O`eEDs%4N;@>4Z@0U)W;sD>m zm*!x-IT`v8JbnWQvX}8sPcKd?NGV+##CUCRFRKI;Zt}ff^A$eicch0SPnHn^*y^R6 zD+fJ<(<$+4A4B1P6Fw!lXQsN1%=8lCvfgAr}z81I^(3gL4aef4s5A9$IsPG@=D}hs{8OYf2 z1s5NT=7gj%fw_S85u~$2xJOLB!l$tjv&;ZuBeg5V;|B+Sa3M(Kt!z2~@{a!OQJ=;p z{>MG6dH^KZQ8Hv(HTu#0#`^-4z~&540UJL}fJH8UQ z=HJi219y0TLI#I)0JQx^c{CwV81UT5o*;i3eo8%_M*fi>WoYvoyx}W>c?PgrD-m_6 zOPE8X4lVmOJSr%Kh*($(jNSIf)u!+~T$9ML=_6k@U*SFf6gct(<0!CJ5yl2Mf<%f< z*-@7n&sqw6<7q5_`9V~KFymkN$QOYfpAOmrA5Fr4H-(u!n*%xIINowny1Q|Q=7Wl2 zOD9bECvNgZ8#fjB7!C?EeH%n#)4L7~9(*g(Oeq|*^{PYTRkkJn#7+J~YMcq2>TvTx z%qqa_cy`?2AlEu-9MLL(rflDq{1Z3%d6e?u!md{*Jyjp zB&GD29iqJmu@1=~^TY`j;=ddaF>-mf*#2-mi%RsiE2p4G)rz|kg#uH5|s`hPD+uz+rI?@hXIRfs$|O`FSmQ zRUV-76H810WbvFBDu+zPO1`BBE<%4^HEe}6^)BB4YMKp#P&J6b9~*?RE4XI7WP5g% z(s-Z9fQKjR9x81DaQ;St7bY3|_S3gcS4GsurjgI|B6;f84t zNDj1r-S_?WqVbYbpC5mmpoNezbqDar!?;8#A?Y0e5-!pRht$e(>And*lR-Gj5N7i>IO zb+L6IJb)7Yt4tak5%Rz^Ad-m*IC}Rj>jfJRASv4YLPjHE4?z9^sTyjakzyKYpZ}Eg z32QG$t$-+ly!gjZPi-iMdRD_3US@p4(CPxMe>Z+cWGcWey;Qq_b4fBjVR%y)$QtAZ w1+1+k8&NfYS)Z`wZ(8IX6};h($ diff --git a/graphics/pokemon/swoobat/overworld_shiny.pal b/graphics/pokemon/swoobat/overworld_shiny.pal index 84b110886f..8a3678398f 100644 --- a/graphics/pokemon/swoobat/overworld_shiny.pal +++ b/graphics/pokemon/swoobat/overworld_shiny.pal @@ -2,18 +2,18 @@ JASC-PAL 0100 16 104 48 152 -72 32 0 +87 48 2 248 192 48 232 144 16 1 1 1 198 217 180 -198 217 180 -72 32 0 +136 192 120 +41 18 0 96 48 16 -167 89 102 -198 217 180 -167 89 102 +144 72 112 198 217 180 +106 48 87 +248 160 232 198 217 180 1 1 1 0 0 0 diff --git a/graphics/pokemon/throh/overworld.png b/graphics/pokemon/throh/overworld.png index dabd0d8ebadc6f8e5cd8519f7449b8ef1a8feeea..69b2fef48608c0d6928889e742706597412a8410 100644 GIT binary patch delta 860 zcmV-i1Ec(}2?Ku4o;Upqr%zqniyz#~xZ@lrw8zm-* zYiuQMhClHK0W*;Jl{+_iiOIP!wu?;UyzTzWd`0gxS?k(PBsI| zQQd7{So55}5mfnihx4{T;@mD#rh@tR0f#9sT<-DLul~y&79BsdkO%Wq+u_4N;dy<; zvPSv_w10v<|KV`=Ph9~)3n=y*4zlZjY;(ATApa=)AlQ%{ST*g7cA%F%dm8kd|hhY_z_{)Sx$6R}IK z(N)QF)@br?855st+Z5H9y8>G6$cPW0n*tbL6d1ljxN2CoQ^7=Hu<0002CwraKj0004VQb$4nuFf3k00004XF*Lt006O%3;baP z0000mP)t-sn9!hC5)xoA7$G4U0002!a44WqATKX3*yzxBfM^Q~3n3vPxX7r#wxs3d z_a`SO8R=ZK00009a7bBm000id000id0mpBsWB>pIh)G02RDVdv?UXTSBS#d57tewr zDV!@VxD0kATq+)$9R-!M7fv=R z+&L+fq>+hivfwJ+wU@$a1S#$c!)120v$Jw?*CvG@2=veV^ZoA)%NRFxQ#W-}|D(Ef z>#e+;n3*wNr+O7xdUjvhSze$iN?Cm z^1x!(%xmqKzT71Go z4J;h>f3*6_Uva;zMA&U+#NO{Uo)38QXIf@D0I_{4C%7M`D}+Ch6VM}`o*+%k0oue@ z4TM1%fZ;(#=sqJn05uW9ZyeVc5ZF=!u>FlX{q%k~A|l40{6L+PBi>H)n-vDEMf`N6 zau}R(;D7x=+5y6y8WU|D;9yLI$N~@(`=9lCKW&CAA(T1q{MPIJdL%}GGWP+5oZ$=A zz<08L0g(D*AmOrMt~y?9Fa`mzG_fpLczpcJ@nOLCBmvDazH|BK<)zO>43OFf0gQt$ zMh%ECRszDrp8&bMAy8L}oCX&G0XDiqG|kG;d4G2D$5B8EHR)ap`2Ob`A8kTA0Z1)x zNcP;qssSu-Nb>rLKLN%!-pT?R4KDd`J_=Y|4G`=!I-7oginE3>|FA^D&Sv8fN(n&f ztC$CmhpK_8^H{Ts#Ge2GgA5p^SA;RPq~ZJ^QSUt{AsBSKhi3tL7z2tW(%R{En@~ys zQhz@uG0+;S2BzFt2fK-X1a##O53}#on2hzE(FAXorY>Ie-7|b)#P0{f#uaW^m4mBc z0+4#ii+ggbssYoAdESDNy*HCyT)BWm@1`G_VUmNFyMMug+FgP>&tJX>stT}zrQ5Ak zRRd<AE4bw~11o!*?g{BW7y7LdkL7}Rlna== zHo=yjAO=RK%galHZKao+3)|arQSUF<_Lx4k?WHI;fvjd!eWm{3!KpX74Un#w0Lxq6 zO7UYO)76BU3s9?Bnac19{EWTQ+W9go8%^z$0 gOZ}7ZACzJI4G1cPse3$UwEzGB07*qoM6N<$f&~xi>vz`u}RqO|Nn1&AuJaIm8w1*omlO* z%@~-O7?boko_OMk|0)1rm+(9Mj{_jA8DPNW1Ur1U{0~xAIfx+yoKrxACBYrOVYnG= z6D%D@#pekaHUc*I4h^_}xd$7EdH$dp<|}ZxC}4x5pR{7g>js$2USi`g(+_~tGB$qx z8shB-M=xj1Fb{@B0q-1!K%g}MG;w(@K)h`Pj7cz8U(X$;_Hh)4!MP0>V#qbXzd5sD zxMKu)AXPYxL<>XTVhHDX(p&*z9<2`BDs3L~k7bcqE4an>0%{X~7%QV?{K%qW=$Uh! zr{U-d(6uR2c9?$~jAQ{+1W+SD#9}7^u_+UgA3kLehg;Y%9Lp=EaK2NFy30oe7=&=^ zFbirDQKvpn`D$$tcR3ezX}!hr2gNprY=_!MH}}AB;D4obVHDj$&jbQsnVpN8SF8n) zUTawL;L}2KlZWuxWxOf5eRaQdVGuSbx9CjG6X_Q_} z|CI=93yc0J6hTG~`fUwR9OAGAwhXnyn=hKiose1qQUjI4P7R1VZ@k#3H?~E5S74NH z`*bR>#rrK#7@8Fw!<qlilhpAhLu9~ zie?WBx5LiV*-=dPqwjTk4!*>Ec)91G9P>9mIc~KFXpu}9-i>M3ha9R^q&`m z`RZA3g(H$}?j1QWCJd3Hf6zAyW_P#SP~H;w#q7Qo_AGF9*V#Nxj%|U>E7KBP$Nqh1 zjzd0#ywbl@>Iap-iQOCL66Z~{V1Hx*%Z%U0?wx=8KY{h&wZJEyc;a7-Z_u$2*%8`u QmH+?%07*qoM6N<$f_=}Az6z8MLxGjiKHnyahtJd4qD!keDCRa zIu*rR{I@|^o?%zvtAkZH>jV|oU>4-&GPQO@HMHwQBd)-lk=GXjnPbYTOtBJIV8%$G zSqpz&I_A3Jt34bbVp1=#d4ZAe3KICNW34wjHAMiRia^Yeo)c?ERIkfAd>QA(eH)SUcs1i+^}$fstWh0q|6!*#WP&a@Gc0PlUSO1qfPqmg8L^wDN%$AiY8=J}t7tpB2!LczmElq{##{E)S}e*v-n|#F@_v7I zY?K#};^VLB=_G>y3|6vI*-p(z@I=YV?dS`dG18*h8fC0)`XFFLJ3DTr7f|E=@UYi* zVW1L}RTdwRetm&nU}gk)W-Mrr%chs7rG(Jdbaq^{%S}=EL_a*7NU(?{F{L%7@kOD^ zNQ=+8QE1O#h>S(Cu?G56>+i^Y!p?tj9Y!93Q}O<>rk!sLoFh>7J>HXVc0D>6n#ctk zjEsy<5TL&)l5mbAAZV0+N1oVuZ1ZC{{$ydA5aD3*@ith*F=2FFo&7M-@fo-t#z&t| zkczQ%8mwVEj9}AYb~i%)zi^IYY}_}PL#p${I@&%sM=l}3 z+Y#ybB(T=|n;@LM49O;5ZxG1G^`9e-+Gko&Zy5f=X10cXAzrC=<`5% z%ItENmq?i$i#v|=V}fLg)FE~}too!vT`uQBHIwt@4VUzFEpb(&c08>5Btjj)=V-1< zKjl3~?6`a=2BR1>4D7h1Z}uK>IsD~1mWcbfYxp%j4Wi2;ddw`q<%|jL?P?uUtgfKT ze>rlVTZ~$V!N;>=$HTZ@l7x)EngO44jp#8LB+9WW>0K`Fcy2Meu1@^0N;^IWNb8hI zh5?sT#o|P|@QP7cBbSfFwXP1iE-Hmy;cI|=mtkPXJIpn_`pcZAL2-yOulDueZ^u7T z01lZh?%=Vj$Bf5uIwVe|L=m<2^>EkifA|V2oZv2TF$`=t_13Uc8+N%iK?NN!d4IZ& z@Q8w~c{eDb9xwWRhVSJ(THQ3T_*4GL3k=FZ`8@tTKMmfL9SnBkU;o s9~#!2hasB#z)2qV|143k4II6pZ$H%#R=XW?=l}o!07*qoM6N<$f(gbGH~;_u delta 576 zcmV-G0>Ax*1?U8j7&in10002CwraKj0004VQb$4nuFf3k00004XF*Lt006O%3;baP z0000dP)t-sn9!gL3k!TWNRdAte_FUJ`v3p{32;bRa{vGi!vFvd!vV){sAK>D0m?~4 zK~zY`?bN+$<3JDq;N2~*-nDLp2`TgwL9UdAAHXJg0If5m-k5WhMmFN=1Pm?{Lcnz@ zCv~_7xF^f#4y=`;Q3BVb@Dze??U~uxMPi3I#32sxb%F;h>@nXzy8Vd;eF6oV3c?9omUtyEzU_9EfD5oHXy1=+(+A2LE`Px+-Tju`{`y=M|&pgZA^uP9<_h@lEm>#lNwWaj8Ieow%=<5exhuB$`!~sL<70%)+8=kxS|z_`F!lz?LzsrcMHzSi O0000g7zqdi0001UMu)eNF&hyt008P=0026d000+od=1R9J=Wm)ml~APht;0e0g4|NnMZkhEh!O5)D+#cI=f=3ukBnk>s@mtA(*WtUxc z+25FmE-LadC&ZG^`8g9wIcv^oA~E7vkrRHL00jJ;Nz#TcUu}Bk3bnCZ>I2KS`;-r$}!(ZUYjCDs5CL7y4>*Y1h3~f-DA+UdJ+n`$_ z4t38dl}8EkIc6N?AvS7@Ouw|&UP68jjlS-TAS935WxyR`tzp++KJ z_b9hQH*aO)fX5}*uyD{a#(fWYToBwF^)-R5M&wog6nICH?v4Xfg^#@z zR`~KPkzd0);%yI17p^Ij_l1AYIpR}|j*JGS%h{aNheyL~3Hs!x&LZAct<;A_>%;+{ zTY1>adVJnUN$97B|pYB6Kmz_8Q*)lIEHu}e|yDn z(k%lKwggZ03zH)!oivL$B=Yjh6PW`M;s(Y|OYY1)c(hDp=9~s4^AnsJFTS-+yeT_j zi`bI0JpHevXZ}Cw&*b#3bba;R*YVtGs{7N}nqoem{Zo}`dVaRgE32#-zuW>%{w>~| zwz+d_Oj_;cXB`R~<~=glIcoUZ#CZY?oTH)7IP^;W>eiEVUjKuZgzHTUGDX zeARDq;p9adcjZORGc;XW5~G=1c%@~^{xIFVvggjewvl|>Pkrjq^x7`y_VT;Ddwo{? z{5v%}In!ijpYy-IP0x7UzO{Gz7HYn^Z5@95#y+`kn{Ki5CS6|2$jEB;c-htOZ;!Dr zs+6vJ75pIoyKpA$REi=Jl_$ zHa`1Ov#i;=Xrq72@dTz88>bod#dG(ax@6DL_;Bik7c*51x_0lhGw}R9!C8<`)MX5lF!N|bKNY}tn*U%`$$jHjr#LC1_+rYxgz<_yH iv>8wbLPKtTN@iLmZVg4pA9n#YFnGH9xvX?WedY;0_7Y;1fEEFE7AYaJahSphI(%{qa9 z<*j#)Ka(0E1e6&>C<)Ld0L5hwuT`M)FZ8+o1l55B3?Yat^8Y0Ps~D}kqObFB^sOt9 z4Um0wh@t^DhENlKNWc3?>HzuBNQ0?dy1J%8J7l8HN zx`Sh&FGKp2S;L3U0_IF}NIvJ?Sp*iyJe@9-5CI~UPAZpw+<=@PEl?a#UH&-FlVj*_ zLp}=|zMp`^r|c3?+AOTE5VwKI^>d@e2HXRdS}7Ya_VSSmjQ$$*xj<-m5DYM%G4e&f z@Z$Apm*m|E#b;F+urz#=7DSF=3<&ZrSa}!>Kojx6Kl+mf+&Q3JULG)-KDwP~ozeoh zJRKnDr&AhNzL!|>EB$H!l-GrnTpm!~6*L7J8yg!NAA=uEZ4OgYKQIRX00007xV6onmGLW}_-b*_op zH7Ii0mEfZ8!JZMpet@b{)wvAi5g04-27STWCh<>zqDpkjSYG zo0lPqZGdhpH3(DA@*L%JTGo$V9GEo;g0AEpyk_Y?u3s zq6xOp%<74P(FH;=Z5TjKBtMmAz{h_h!Hd0ZNH#X6)K&%}^1gc|VNIB>HS^knsUT8w zZf=Pb8$SU3&5W<@GgFOaUO-T7cbl(-;4+ujIn-2|>5<9y%;QF0000WFmsfh Stku@u&B8hEKJPuTY9s`pnixL- delta 60 zcmeC#te27bwNRz_38WVanV!SFhbW PFeAaX_(H(OEEN_2CR!VT diff --git a/graphics/pokemon/zebstrika/overworld.png b/graphics/pokemon/zebstrika/overworld.png index fbe6fa8f566437b23a8deed106413bd0e9586aef..36f7228a62b4417a79039b86c8b840a70cfa2360 100644 GIT binary patch delta 916 zcmV;F18e-(2c8Fz7=H)@0001UMu)cm0004VQb$4nuFf3k0000mP)t-sn9!g(K|viU zDfIRC%*@OO2L~7+AO{Brq@<)dK|yeEaCE3&_}~BlsMrSw2LJ#7t-w?z0009VNkl>5*PTXuV^3N^6wqcGF7<1e=TszRn5CVHyurxah0jUz`hc{ zZFul5(8iM&TuHfzV=esk8Hd2itV6%o_$iQX0x5A|&XouP4FV}~Am>_2)$27=xWIR_ zt5o|*7Tz`qh$b^UbXIw=&1f~&~;-f%w!pI$%a^;&qP8>+NMo?f$`7iK6AqfNu zWfK?NYhm;lE;UKPjB|rRVs&wkx&ZZyM3fz}0D>cE^kRf0f#W;K*>E>yZkktnir zqg&v^0_CFANG~N3u;Qrh0)eC{hXcjW90K(sP*_~Lynj;Kq2;9bZ6Cc}uHe^8ngVlf ziVQ)c{mRQKaF3O^VpM z1Fzgw8KEU<$nz#Q(*?F7MdVco&PYOvkSCXc1$PuD1PU7MFvo%;0%9i)g&G--(Tayb z<}-!HxPPAw(#{K@M-n<^Dqzlm;X(AgVUB?lEA;z`LsN*9P}m~b(RO+aG{eZB))fEQ zc>xFViGUeL^;X1K8S_RV>RhFbIRK*D1RV!cP^F=zo zpqiv$rS1R^IhWSA9@R>5b5kwH4b~mEj&sz8fJTO0H##7((isuMIgy2-8*c!ioW&+qA zpMPKQ2oFx1{Pm9mzGlYVyw<9Rf8ct&7u@C&hMFV z*Q|cnSRGwP)Z<%E?kUG-O$E$skNU(xkhjdZt@-k3A1$Q)+aY>i=2LQ?u%$QI$CPts qbaOu)ZKI#|!+H5u^Rs_!e*i&49Da->lnspl0000pIJV``BR7l6|mcMV>KorMqq<_P!pKWTyR68IlIvqAm zmCXSf$&-KJqNEF?YRE_uQb*ZPn^LKBQdOOt5Vh)7sg)w-pQ|AT-a#FyONXitB=qt5 zzTdldckkf-$N%_iA;zCnW}7(vj|Dg`L-}ed^A@Y6h^zWM<>`HVuK}T~nEx9CQq9yD zrab1LSIw-ya(_~|#Tt;hx}q<RlfwSf?Q=W>;aHAKad)PgyLL0MW93;%s7e8RVNovOR zbj)(@){+N~?{5SSzYsjHeP#?;&U$O+;d9IbLr?fL_xVQNv|4n-n2cG7wr_`KF;|zb z43J^gVSoQSz1c$oOHA}NQ)d>rXw3N7`w6yGX~Z$fkq|s~l}I1Q*p%yyWVN&F5UEd) z!4e;hie~txk9c5~6Fv?=g2H+jj+?>Mzy%Gi!tk`=5W}8z7`}dRfCZNLL_KI~dBjk% z!i0q|aIM0I1r?>?#B&Ib0|lVNON^}^uPR{8PW49M3nT*dCA{@i{q?BZ?O?S=dJWGl7y?nA_SFEAGd-lXmcn#$YB z-R6}iUmUv~ZjUJyoyntl@P=VA7oh@mV}8vD@6RSbCnH`=-YJi`lZT8!ufr7?0devO zu`M2A-t89}^Y?}JG#g}5OWJMjn90y2mPQ2FMrABAhP{q5o*NwAWkXmbrCsI@R}7W} v*hZdTuJEw Date: Fri, 23 Aug 2024 18:21:40 +0200 Subject: [PATCH 05/32] add missing break for poison puppeteer (#5243) --- src/battle_util.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/battle_util.c b/src/battle_util.c index c2e05cbd4e..2935afc1ff 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -6028,6 +6028,7 @@ u32 AbilityBattleEffects(u32 caseID, u32 battler, u32 ability, u32 special, u32 gBattlescriptCurrInstr = BattleScript_AbilityStatusEffect; effect++; } + break; } break; case ABILITYEFFECT_MOVE_END_OTHER: // Abilities that activate on *another* battler's moveend: Dancer, Soul-Heart, Receiver, Symbiosis From 85fe398b5080d584254104c49f177708d71a5171 Mon Sep 17 00:00:00 2001 From: PhallenTree <168426989+PhallenTree@users.noreply.github.com> Date: Sat, 24 Aug 2024 13:28:24 +0100 Subject: [PATCH 06/32] Fix Starting Status being passed on to future wild battles (#5248) --- src/battle_main.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/battle_main.c b/src/battle_main.c index cba22fa5ef..ad7f877fd9 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -3755,7 +3755,7 @@ static void DoBattleIntro(void) gBattleStruct->startingStatus = GetTrainerStartingStatusFromId(gTrainerBattleOpponent_B); gBattleStruct->startingStatusTimer = 0; // infinite } - else if (GetTrainerStartingStatusFromId(gTrainerBattleOpponent_A)) + else if (gBattleTypeFlags & BATTLE_TYPE_TRAINER && GetTrainerStartingStatusFromId(gTrainerBattleOpponent_A)) { gBattleStruct->startingStatus = GetTrainerStartingStatusFromId(gTrainerBattleOpponent_A); gBattleStruct->startingStatusTimer = 0; // infinite From 2fed75f7c5a1d9744b5f7815f5cf6c6a014be4ac Mon Sep 17 00:00:00 2001 From: kittenchilly Date: Sat, 24 Aug 2024 09:53:19 -0500 Subject: [PATCH 07/32] Adaptability, Aerilate, Aftermath tests (#5242) * Adaptability, Aerilate, Aftermath tests * Update test/battle/ability/aerilate.c Co-authored-by: Eduardo Quezada --------- Co-authored-by: Eduardo Quezada --- src/battle_main.c | 4 +++- test/battle/ability/adaptability.c | 20 +++++++++++++++++++- test/battle/ability/aerilate.c | 25 ++++++++++++++++++++++++- test/battle/ability/aftermath.c | 20 +++++++++++++++++++- 4 files changed, 65 insertions(+), 4 deletions(-) diff --git a/src/battle_main.c b/src/battle_main.c index ad7f877fd9..4165dea20d 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -5746,8 +5746,10 @@ bool32 TrySetAteType(u32 move, u32 battlerAtk, u32 attackerAbility) break; case EFFECT_HIDDEN_POWER: case EFFECT_WEATHER_BALL: - case EFFECT_CHANGE_TYPE_ON_ITEM: case EFFECT_NATURAL_GIFT: + case EFFECT_CHANGE_TYPE_ON_ITEM: + case EFFECT_REVELATION_DANCE: + case EFFECT_TERRAIN_PULSE: return FALSE; } diff --git a/test/battle/ability/adaptability.c b/test/battle/ability/adaptability.c index fecdc6b7e2..4c1c8439b7 100644 --- a/test/battle/ability/adaptability.c +++ b/test/battle/ability/adaptability.c @@ -1,7 +1,25 @@ #include "global.h" #include "test/battle.h" -TO_DO_BATTLE_TEST("Adaptability increases same-type attack bonus from x1.5 to x2"); +SINGLE_BATTLE_TEST("Adaptability increases same-type attack bonus from x1.5 to x2", s16 damage) +{ + u32 ability; + PARAMETRIZE { ability = ABILITY_HYPER_CUTTER; } + PARAMETRIZE { ability = ABILITY_ADAPTABILITY; } + GIVEN { + PLAYER(SPECIES_CRAWDAUNT) { Ability(ability); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(player, MOVE_WATER_GUN); } + } SCENE { + MESSAGE("Crawdaunt used Water Gun!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_WATER_GUN, player); + HP_BAR(opponent, captureDamage: &results[i].damage); + } FINALLY { + // The jump from 1.5x STAB to 2.0x STAB is a 1.33x boost. + EXPECT_MUL_EQ(results[0].damage, Q_4_12(1.33), results[1].damage); + } +} SINGLE_BATTLE_TEST("(TERA) Terastallizing into a different type with Adaptability gives 2.0x STAB", s16 damage) { diff --git a/test/battle/ability/aerilate.c b/test/battle/ability/aerilate.c index 8a5f889a66..4386034a59 100644 --- a/test/battle/ability/aerilate.c +++ b/test/battle/ability/aerilate.c @@ -21,7 +21,30 @@ SINGLE_BATTLE_TEST("Aerilate turns a Normal-type move into Flying-type move") } } -TO_DO_BATTLE_TEST("Aerilate can not turn certain moves into Flying type moves"); +SINGLE_BATTLE_TEST("Aerilate can not turn certain moves into Flying type moves") +{ + u32 move; + PARAMETRIZE { move = MOVE_WEATHER_BALL; } + // PARAMETRIZE { move = MOVE_NATURAL_GIFT; } TODO: handle this case via Skill Swap + PARAMETRIZE { move = MOVE_JUDGMENT; } + PARAMETRIZE { move = MOVE_TECHNO_BLAST; } + PARAMETRIZE { move = MOVE_REVELATION_DANCE; } + PARAMETRIZE { move = MOVE_MULTI_ATTACK; } + PARAMETRIZE { move = MOVE_TERRAIN_PULSE; } + GIVEN { + PLAYER(SPECIES_MEGANIUM); + OPPONENT(SPECIES_SALAMENCE) { Item(ITEM_SALAMENCITE); } + } WHEN { + TURN { MOVE(opponent, move, gimmick: GIMMICK_MEGA); } + } SCENE { + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_MEGA_EVOLUTION, opponent); + ANIMATION(ANIM_TYPE_MOVE, move, opponent); + NONE_OF { + MESSAGE("It's super effective!"); + } + } +} + TO_DO_BATTLE_TEST("Aerilate boosts power of affected moves by 20% (Gen7+)"); TO_DO_BATTLE_TEST("Aerilate boosts power of affected moves by 30% (Gen6)"); diff --git a/test/battle/ability/aftermath.c b/test/battle/ability/aftermath.c index 65c0be7dfd..5cfd5ef034 100644 --- a/test/battle/ability/aftermath.c +++ b/test/battle/ability/aftermath.c @@ -1,4 +1,22 @@ #include "global.h" #include "test/battle.h" -TO_DO_BATTLE_TEST("Aftermath damages the attacker by 1/4th of its max HP if they faint the target has this ability by a contact move"); +SINGLE_BATTLE_TEST("Aftermath damages the attacker by 1/4th of its max HP if fainted by a contact move") +{ + s16 aftermathDamage; + + GIVEN { + PLAYER(SPECIES_VOLTORB) { HP(1); Ability(ABILITY_AFTERMATH); }; + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN {MOVE(opponent, MOVE_TACKLE);} + } SCENE { + MESSAGE("Foe Wobbuffet used Tackle!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_TACKLE, opponent); + MESSAGE("Voltorb fainted!"); + ABILITY_POPUP(player, ABILITY_AFTERMATH); + HP_BAR(opponent, captureDamage: &aftermathDamage); + } THEN { + EXPECT_EQ(aftermathDamage, opponent->maxHP / 4); + } +} From 572972235e5c72877f20b845ebcf4b92b9a544fb Mon Sep 17 00:00:00 2001 From: hedara90 <90hedara@gmail.com> Date: Sat, 24 Aug 2024 20:22:50 +0200 Subject: [PATCH 08/32] Disguise tests (#5249) * Start new Disguise tests * Finished disguise tests --------- Co-authored-by: Hedara --- test/battle/ability/disguise.c | 39 ++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/test/battle/ability/disguise.c b/test/battle/ability/disguise.c index c4f79d8fe3..5ab2035325 100644 --- a/test/battle/ability/disguise.c +++ b/test/battle/ability/disguise.c @@ -134,3 +134,42 @@ SINGLE_BATTLE_TEST("Disguised Mimikyu is ignored by Mold Breaker") NOT ABILITY_POPUP(player, ABILITY_DISGUISE); } } + +SINGLE_BATTLE_TEST("Disguised Mimikyu's types revert back to Ghost/Fairy when Disguise is broken") +{ + GIVEN { + ASSUME(gMovesInfo[MOVE_SHADOW_CLAW].type == TYPE_GHOST); + PLAYER(SPECIES_MIMIKYU_DISGUISED) { Ability(ABILITY_DISGUISE); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(opponent, MOVE_SOAK); } + TURN { MOVE(opponent, MOVE_TACKLE); } + TURN { MOVE(opponent, MOVE_SHADOW_CLAW); } + } SCENE { + MESSAGE("Foe Wobbuffet used Soak!"); + MESSAGE("Mimikyu transformed into the Water type!"); + MESSAGE("Foe Wobbuffet used Tackle!"); + ABILITY_POPUP(player, ABILITY_DISGUISE); + MESSAGE("Foe Wobbuffet used Shadow Claw!"); + MESSAGE("It's super effective!"); + } +} + +SINGLE_BATTLE_TEST("Disguised Mimikyu blocks a move after getting Gastro Acid Batton Passed") +{ + GIVEN { + ASSUME(gMovesInfo[MOVE_BATON_PASS].effect == EFFECT_BATON_PASS); + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_MIMIKYU_DISGUISED) { Ability(ABILITY_DISGUISE); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(opponent, MOVE_GASTRO_ACID); MOVE(player, MOVE_BATON_PASS); SEND_OUT(player, 1); } + TURN { MOVE(opponent, MOVE_SHADOW_CLAW); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_GASTRO_ACID, opponent); + MESSAGE("Wobbuffet's ability was suppressed!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_BATON_PASS, player); + ANIMATION(ANIM_TYPE_MOVE, MOVE_SHADOW_CLAW, opponent); + ABILITY_POPUP(player, ABILITY_DISGUISE); + } +} From 36a5c6ed4f47ade2f2cb5d034e5ea54d7e73ff7c Mon Sep 17 00:00:00 2001 From: Hiram Anderson <37224753+hjk321@users.noreply.github.com> Date: Sun, 25 Aug 2024 01:03:33 -0700 Subject: [PATCH 09/32] Basculin graphics config fix (#5256) This fixes a compilation error that occurs if OW_POKEMON_OBJECT_EVENTS is true but P_HISUIAN_FORMS is false. --- src/data/graphics/pokemon.h | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/src/data/graphics/pokemon.h b/src/data/graphics/pokemon.h index 4c86c0adcd..e75425823a 100644 --- a/src/data/graphics/pokemon.h +++ b/src/data/graphics/pokemon.h @@ -12202,6 +12202,17 @@ const u32 gObjectEventPic_Substitute[] = INCBIN_COMP("graphics/pokemon/question_ const u32 gMonShinyPalette_BasculinBlueStriped[] = INCBIN_U32("graphics/pokemon/basculin/blue_striped/shiny.gbapal.lz"); const u8 gMonIcon_BasculinBlueStriped[] = INCBIN_U8("graphics/pokemon/basculin/blue_striped/icon.4bpp"); +#if OW_POKEMON_OBJECT_EVENTS + const u32 gObjectEventPic_BasculinRedStriped[] = INCBIN_COMP("graphics/pokemon/basculin/overworld.4bpp"); + const u32 gObjectEventPic_BasculinBlueStriped[] = INCBIN_COMP("graphics/pokemon/basculin/blue_striped/overworld.4bpp"); +#if OW_PKMN_OBJECTS_SHARE_PALETTES == FALSE + const u32 gOverworldPalette_BasculinRedStriped[] = INCBIN_U32("graphics/pokemon/basculin/overworld_normal.gbapal.lz"); + const u32 gOverworldPalette_BasculinBlueStriped[] = INCBIN_U32("graphics/pokemon/basculin/blue_striped/overworld_normal.gbapal.lz"); + const u32 gShinyOverworldPalette_BasculinRedStriped[] = INCBIN_U32("graphics/pokemon/basculin/overworld_shiny.gbapal.lz"); + const u32 gShinyOverworldPalette_BasculinBlueStriped[] = INCBIN_U32("graphics/pokemon/basculin/blue_striped/overworld_shiny.gbapal.lz"); +#endif //OW_PKMN_OBJECTS_SHARE_PALETTES +#endif //OW_POKEMON_OBJECT_EVENTS + #if P_HISUIAN_FORMS const u32 gMonFrontPic_BasculinWhiteStriped[] = INCBIN_U32("graphics/pokemon/basculin/white_striped/anim_front.4bpp.lz"); const u32 gMonPalette_BasculinWhiteStriped[] = INCBIN_U32("graphics/pokemon/basculin/white_striped/normal.gbapal.lz"); @@ -12210,15 +12221,9 @@ const u32 gObjectEventPic_Substitute[] = INCBIN_COMP("graphics/pokemon/question_ const u8 gMonIcon_BasculinWhiteStriped[] = INCBIN_U8("graphics/pokemon/basculin/white_striped/icon.4bpp"); #if OW_POKEMON_OBJECT_EVENTS - const u32 gObjectEventPic_BasculinRedStriped[] = INCBIN_COMP("graphics/pokemon/basculin/overworld.4bpp"); - const u32 gObjectEventPic_BasculinBlueStriped[] = INCBIN_COMP("graphics/pokemon/basculin/blue_striped/overworld.4bpp"); const u32 gObjectEventPic_BasculinWhiteStriped[] = INCBIN_COMP("graphics/pokemon/basculin/white_striped/overworld.4bpp"); #if OW_PKMN_OBJECTS_SHARE_PALETTES == FALSE - const u32 gOverworldPalette_BasculinRedStriped[] = INCBIN_U32("graphics/pokemon/basculin/overworld_normal.gbapal.lz"); - const u32 gOverworldPalette_BasculinBlueStriped[] = INCBIN_U32("graphics/pokemon/basculin/blue_striped/overworld_normal.gbapal.lz"); const u32 gOverworldPalette_BasculinWhiteStriped[] = INCBIN_U32("graphics/pokemon/basculin/white_striped/overworld_normal.gbapal.lz"); - const u32 gShinyOverworldPalette_BasculinRedStriped[] = INCBIN_U32("graphics/pokemon/basculin/overworld_shiny.gbapal.lz"); - const u32 gShinyOverworldPalette_BasculinBlueStriped[] = INCBIN_U32("graphics/pokemon/basculin/blue_striped/overworld_shiny.gbapal.lz"); const u32 gShinyOverworldPalette_BasculinWhiteStriped[] = INCBIN_U32("graphics/pokemon/basculin/white_striped/overworld_shiny.gbapal.lz"); #endif //OW_PKMN_OBJECTS_SHARE_PALETTES #endif //OW_POKEMON_OBJECT_EVENTS From 51a127fcb59abaf5ceadc1e4368023b937dd140e Mon Sep 17 00:00:00 2001 From: hedara90 <90hedara@gmail.com> Date: Sun, 25 Aug 2024 11:20:26 +0200 Subject: [PATCH 10/32] Better implementation of the obedience fix (#5245) Co-authored-by: Hedara --- include/battle.h | 3 +- include/battle_util.h | 11 ++- src/battle_script_commands.c | 32 +++++++- src/battle_util.c | 139 +++++++++++++---------------------- 4 files changed, 93 insertions(+), 92 deletions(-) diff --git a/include/battle.h b/include/battle.h index 0d54f2a614..4db357fca6 100644 --- a/include/battle.h +++ b/include/battle.h @@ -221,7 +221,7 @@ struct SpecialStatus u8 faintedHasReplacement:1; u8 focusBanded:1; u8 focusSashed:1; - u8 unused:1; + u8 unused:2; // End of byte u8 sturdied:1; u8 stormDrainRedirected:1; @@ -801,6 +801,7 @@ struct BattleStruct u8 categoryOverride; // for Z-Moves and Max Moves u32 stellarBoostFlags[NUM_BATTLE_SIDES]; // stored as a bitfield of flags for all types for each side u8 fickleBeamBoosted:1; + u8 obedienceResult:3; }; // The palaceFlags member of struct BattleStruct contains 1 flag per move to indicate which moves the AI should consider, diff --git a/include/battle_util.h b/include/battle_util.h index de05242902..3a64b84462 100644 --- a/include/battle_util.h +++ b/include/battle_util.h @@ -106,6 +106,15 @@ enum CANCELLER_END2, }; +enum { + OBEYS, + DISOBEYS_LOAFS, + DISOBEYS_HITS_SELF, + DISOBEYS_FALL_ASLEEP, + DISOBEYS_WHILE_ASLEEP, + DISOBEYS_RANDOM_MOVE, +}; + extern const struct TypePower gNaturalGiftTable[]; void HandleAction_ThrowBall(void); @@ -171,7 +180,7 @@ void ClearVariousBattlerFlags(u32 battler); void HandleAction_RunBattleScript(void); u32 SetRandomTarget(u32 battler); u32 GetMoveTarget(u16 move, u8 setTarget); -u8 IsMonDisobedient(void); +u8 GetAttackerObedienceForAction(); u32 GetBattlerHoldEffect(u32 battler, bool32 checkNegating); u32 GetBattlerHoldEffectIgnoreAbility(u32 battler, bool32 checkNegating); u32 GetBattlerHoldEffectInternal(u32 battler, bool32 checkNegating, bool32 checkAbility); diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index efa841a631..2e281e6084 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -1284,16 +1284,40 @@ static void Cmd_attackcanceler(void) if (!(gHitMarker & HITMARKER_OBEYS) && !(gBattleMons[gBattlerAttacker].status2 & STATUS2_MULTIPLETURNS)) { - switch (IsMonDisobedient()) + switch (gBattleStruct->obedienceResult) { - case 0: + case OBEYS: break; - case 2: + case DISOBEYS_LOAFS: + // Randomly select, then print a disobedient string + // B_MSG_LOAFING, B_MSG_WONT_OBEY, B_MSG_TURNED_AWAY, or B_MSG_PRETEND_NOT_NOTICE + gBattleCommunication[MULTISTRING_CHOOSER] = MOD(Random(), NUM_LOAF_STRINGS); + gBattlescriptCurrInstr = BattleScript_MoveUsedLoafingAround; + gMoveResultFlags |= MOVE_RESULT_MISSED; + return; + case DISOBEYS_HITS_SELF: + gBattlerTarget = gBattlerAttacker; + gBattleMoveDamage = CalculateMoveDamage(MOVE_NONE, gBattlerAttacker, gBattlerAttacker, TYPE_MYSTERY, 40, FALSE, FALSE, TRUE); + gBattlescriptCurrInstr = BattleScript_IgnoresAndHitsItself; + gHitMarker |= HITMARKER_UNABLE_TO_USE_MOVE; gHitMarker |= HITMARKER_OBEYS; return; - default: + case DISOBEYS_FALL_ASLEEP: + gBattlescriptCurrInstr = BattleScript_IgnoresAndFallsAsleep; gMoveResultFlags |= MOVE_RESULT_MISSED; return; + case DISOBEYS_WHILE_ASLEEP: + gBattlescriptCurrInstr = BattleScript_IgnoresWhileAsleep; + gMoveResultFlags |= MOVE_RESULT_MISSED; + return; + case DISOBEYS_RANDOM_MOVE: + gCalledMove = gBattleMons[gBattlerAttacker].moves[gCurrMovePos]; + SetAtkCancellerForCalledMove(); + gBattlescriptCurrInstr = BattleScript_IgnoresAndUsesRandomMove; + gBattlerTarget = GetMoveTarget(gCalledMove, NO_TARGET_OVERRIDE); + gHitMarker |= HITMARKER_DISOBEDIENT_MOVE; + gHitMarker |= HITMARKER_OBEYS; + return; } } diff --git a/src/battle_util.c b/src/battle_util.c index 2935afc1ff..b1d3eec450 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -145,6 +145,8 @@ void HandleAction_UseMove(void) gBattleScripting.savedMoveEffect = 0; gCurrMovePos = gChosenMovePos = *(gBattleStruct->chosenMovePositions + gBattlerAttacker); + gBattleStruct->obedienceResult = GetAttackerObedienceForAction(); + // choose move if (gProtectStructs[gBattlerAttacker].noValidMoves) { @@ -3566,7 +3568,8 @@ u8 AtkCanceller_UnableToUseMove(u32 moveType) gBattleStruct->atkCancellerTracker++; break; case CANCELLER_Z_MOVES: - if (GetActiveGimmick(gBattlerAttacker) == GIMMICK_Z_MOVE) + if (GetActiveGimmick(gBattlerAttacker) == GIMMICK_Z_MOVE + && gBattleStruct->obedienceResult == OBEYS) { // For Z-Mirror Move, so it doesn't play the animation twice. bool32 alreadyUsed = HasTrainerUsedGimmick(gBattlerAttacker, GIMMICK_Z_MOVE); @@ -8331,12 +8334,7 @@ u32 GetMoveTarget(u16 move, u8 setTarget) return targetBattler; } -static bool32 IsBattlerModernFatefulEncounter(u32 battler) -{ - return TRUE; -} - -u8 IsMonDisobedient(void) +u8 GetAttackerObedienceForAction() { s32 rnd; s32 calc; @@ -8344,40 +8342,37 @@ u8 IsMonDisobedient(void) u8 levelReferenced; if (gBattleTypeFlags & (BATTLE_TYPE_LINK | BATTLE_TYPE_RECORDED_LINK)) - return 0; + return OBEYS; if (BattlerHasAi(gBattlerAttacker)) - return 0; + return OBEYS; - if (IsBattlerModernFatefulEncounter(gBattlerAttacker)) // only false if illegal Mew or Deoxys - { - if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER && GetBattlerPosition(gBattlerAttacker) == B_POSITION_PLAYER_RIGHT) - return 0; - if (gBattleTypeFlags & BATTLE_TYPE_FRONTIER) - return 0; - if (gBattleTypeFlags & BATTLE_TYPE_RECORDED) - return 0; - if (B_OBEDIENCE_MECHANICS < GEN_8 && !IsOtherTrainer(gBattleMons[gBattlerAttacker].otId, gBattleMons[gBattlerAttacker].otName)) - return 0; - if (FlagGet(FLAG_BADGE08_GET)) // Rain Badge, ignore obedience altogether - return 0; + if (gBattleTypeFlags & BATTLE_TYPE_INGAME_PARTNER && GetBattlerPosition(gBattlerAttacker) == B_POSITION_PLAYER_RIGHT) + return OBEYS; + if (gBattleTypeFlags & BATTLE_TYPE_FRONTIER) + return OBEYS; + if (gBattleTypeFlags & BATTLE_TYPE_RECORDED) + return OBEYS; + if (B_OBEDIENCE_MECHANICS < GEN_8 && !IsOtherTrainer(gBattleMons[gBattlerAttacker].otId, gBattleMons[gBattlerAttacker].otName)) + return OBEYS; + if (FlagGet(FLAG_BADGE08_GET)) // Rain Badge, ignore obedience altogether + return OBEYS; - obedienceLevel = 10; + obedienceLevel = 10; - if (FlagGet(FLAG_BADGE01_GET)) // Stone Badge - obedienceLevel = 20; - if (FlagGet(FLAG_BADGE02_GET)) // Knuckle Badge - obedienceLevel = 30; - if (FlagGet(FLAG_BADGE03_GET)) // Dynamo Badge - obedienceLevel = 40; - if (FlagGet(FLAG_BADGE04_GET)) // Heat Badge - obedienceLevel = 50; - if (FlagGet(FLAG_BADGE05_GET)) // Balance Badge - obedienceLevel = 60; - if (FlagGet(FLAG_BADGE06_GET)) // Feather Badge - obedienceLevel = 70; - if (FlagGet(FLAG_BADGE07_GET)) // Mind Badge - obedienceLevel = 80; - } + if (FlagGet(FLAG_BADGE01_GET)) // Stone Badge + obedienceLevel = 20; + if (FlagGet(FLAG_BADGE02_GET)) // Knuckle Badge + obedienceLevel = 30; + if (FlagGet(FLAG_BADGE03_GET)) // Dynamo Badge + obedienceLevel = 40; + if (FlagGet(FLAG_BADGE04_GET)) // Heat Badge + obedienceLevel = 50; + if (FlagGet(FLAG_BADGE05_GET)) // Balance Badge + obedienceLevel = 60; + if (FlagGet(FLAG_BADGE06_GET)) // Feather Badge + obedienceLevel = 70; + if (FlagGet(FLAG_BADGE07_GET)) // Mind Badge + obedienceLevel = 80; if (B_OBEDIENCE_MECHANICS >= GEN_8 && !IsOtherTrainer(gBattleMons[gBattlerAttacker].otId, gBattleMons[gBattlerAttacker].otName)) @@ -8386,86 +8381,58 @@ u8 IsMonDisobedient(void) levelReferenced = gBattleMons[gBattlerAttacker].level; if (levelReferenced <= obedienceLevel) - return 0; - rnd = (Random() & 255); - calc = (levelReferenced + obedienceLevel) * rnd >> 8; + return OBEYS; + + rnd = Random(); + calc = (levelReferenced + obedienceLevel) * (rnd & 255) >> 8; if (calc < obedienceLevel) - return 0; + return OBEYS; + + // Clear the Z-Move flags if the battler is disobedient as to not waste the Z-Move + if (GetActiveGimmick(gBattlerAttacker) == GIMMICK_Z_MOVE) + { + gBattleStruct->gimmick.activated[gBattlerAttacker][GIMMICK_Z_MOVE] = FALSE; + gBattleStruct->gimmick.activeGimmick[GetBattlerSide(gBattlerAttacker)][gBattlerPartyIndexes[gBattlerAttacker]] = GIMMICK_NONE; + } // is not obedient if (gCurrentMove == MOVE_RAGE) gBattleMons[gBattlerAttacker].status2 &= ~STATUS2_RAGE; if (gBattleMons[gBattlerAttacker].status1 & STATUS1_SLEEP && (gCurrentMove == MOVE_SNORE || gCurrentMove == MOVE_SLEEP_TALK)) - { - gBattlescriptCurrInstr = BattleScript_IgnoresWhileAsleep; - return 1; - } + return DISOBEYS_WHILE_ASLEEP; - rnd = (Random() & 255); - calc = (levelReferenced + obedienceLevel) * rnd >> 8; + calc = (levelReferenced + obedienceLevel) * ((rnd >> 8) & 255) >> 8; if (calc < obedienceLevel) { calc = CheckMoveLimitations(gBattlerAttacker, gBitTable[gCurrMovePos], MOVE_LIMITATIONS_ALL); if (calc == ALL_MOVES_MASK) // all moves cannot be used - { - // Randomly select, then print a disobedient string - // B_MSG_LOAFING, B_MSG_WONT_OBEY, B_MSG_TURNED_AWAY, or B_MSG_PRETEND_NOT_NOTICE - gBattleCommunication[MULTISTRING_CHOOSER] = MOD(Random(), NUM_LOAF_STRINGS); - gBattlescriptCurrInstr = BattleScript_MoveUsedLoafingAround; - return 1; - } + return DISOBEYS_LOAFS; else // use a random move - { do - { gCurrMovePos = gChosenMovePos = MOD(Random(), MAX_MON_MOVES); - } while (gBitTable[gCurrMovePos] & calc); - - gCalledMove = gBattleMons[gBattlerAttacker].moves[gCurrMovePos]; - SetAtkCancellerForCalledMove(); - gBattlescriptCurrInstr = BattleScript_IgnoresAndUsesRandomMove; - gBattlerTarget = GetMoveTarget(gCalledMove, NO_TARGET_OVERRIDE); - gHitMarker |= HITMARKER_DISOBEDIENT_MOVE; - return 2; - } + while (gBitTable[gCurrMovePos] & calc); + return DISOBEYS_RANDOM_MOVE; } else { obedienceLevel = levelReferenced - obedienceLevel; - calc = (Random() & 255); + calc = ((rnd >> 16) & 255); if (calc < obedienceLevel && CanBeSlept(gBattlerAttacker, GetBattlerAbility(gBattlerAttacker))) { // try putting asleep int i; for (i = 0; i < gBattlersCount; i++) - { if (gBattleMons[i].status2 & STATUS2_UPROAR) break; - } if (i == gBattlersCount) - { - gBattlescriptCurrInstr = BattleScript_IgnoresAndFallsAsleep; - return 1; - } + return DISOBEYS_FALL_ASLEEP; } calc -= obedienceLevel; if (calc < obedienceLevel) - { - gBattleMoveDamage = CalculateMoveDamage(MOVE_NONE, gBattlerAttacker, gBattlerAttacker, TYPE_MYSTERY, 40, FALSE, FALSE, TRUE); - gBattlerTarget = gBattlerAttacker; - gBattlescriptCurrInstr = BattleScript_IgnoresAndHitsItself; - gHitMarker |= HITMARKER_UNABLE_TO_USE_MOVE; - return 2; - } + return DISOBEYS_HITS_SELF; else - { - // Randomly select, then print a disobedient string - // B_MSG_LOAFING, B_MSG_WONT_OBEY, B_MSG_TURNED_AWAY, or B_MSG_PRETEND_NOT_NOTICE - gBattleCommunication[MULTISTRING_CHOOSER] = MOD(Random(), NUM_LOAF_STRINGS); - gBattlescriptCurrInstr = BattleScript_MoveUsedLoafingAround; - return 1; - } + return DISOBEYS_LOAFS; } } From 92038129e214ef61a115c81fba6355fbdc2602ca Mon Sep 17 00:00:00 2001 From: Alex <93446519+AlexOn1ine@users.noreply.github.com> Date: Sun, 25 Aug 2024 15:06:03 +0200 Subject: [PATCH 11/32] Fixes Purifying Salt being poisoned by Toxic Spikes (#5252) --- src/battle_script_commands.c | 6 ++++-- test/battle/ability/purifying_salt.c | 16 ++++++++++++++++ 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 2e281e6084..0fc9d7b3b1 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -7184,7 +7184,7 @@ static void UpdateSentMonFlags(u32 battler) static bool32 DoSwitchInEffectsForBattler(u32 battler) { - u32 i; + u32 i = 0; // Neutralizing Gas announces itself before hazards if (gBattleMons[battler].ability == ABILITY_NEUTRALIZING_GAS && gSpecialStatuses[battler].announceNeutralizingGas == 0) { @@ -7252,9 +7252,11 @@ static bool32 DoSwitchInEffectsForBattler(u32 battler) } else if (IsBattlerAffectedByHazards(battler, TRUE)) { + i = GetBattlerAbility(battler); if (!(gBattleMons[battler].status1 & STATUS1_ANY) && !IS_BATTLER_OF_TYPE(battler, TYPE_STEEL) - && GetBattlerAbility(battler) != ABILITY_IMMUNITY + && i != ABILITY_IMMUNITY + && i != ABILITY_PURIFYING_SALT && !IsAbilityOnSide(battler, ABILITY_PASTEL_VEIL) && !(gSideStatuses[GetBattlerSide(battler)] & SIDE_STATUS_SAFEGUARD) && !(gFieldStatuses & STATUS_FIELD_MISTY_TERRAIN)) diff --git a/test/battle/ability/purifying_salt.c b/test/battle/ability/purifying_salt.c index 4c25321e5f..495ce01a46 100644 --- a/test/battle/ability/purifying_salt.c +++ b/test/battle/ability/purifying_salt.c @@ -84,3 +84,19 @@ SINGLE_BATTLE_TEST("Purifying Salt grants immunity to status effects") } } } + +SINGLE_BATTLE_TEST("Purifying Salt user can't be poisoned by Toxic Spikes") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_GARGANACL) { Ability(ABILITY_PURIFYING_SALT); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(opponent, MOVE_TOXIC_SPIKES); } + TURN { SWITCH(player, 1); } + } SCENE { + SEND_IN_MESSAGE("Garganacl"); + } THEN { + EXPECT_EQ(player->status1, STATUS1_NONE); + } +} From ceec17ec7b93cd645336b8a28555bf586728e20b Mon Sep 17 00:00:00 2001 From: Salem <65783283+u8-Salem@users.noreply.github.com> Date: Sun, 25 Aug 2024 23:13:40 +0200 Subject: [PATCH 12/32] remove unused bs signature (#5257) --- include/battle_scripts.h | 1 - 1 file changed, 1 deletion(-) diff --git a/include/battle_scripts.h b/include/battle_scripts.h index cd35e1de82..e8c71d32c2 100644 --- a/include/battle_scripts.h +++ b/include/battle_scripts.h @@ -469,7 +469,6 @@ extern const u8 BattleScript_AngerShellActivates[]; extern const u8 BattleScript_WellBakedBodyActivates[]; extern const u8 BattleScript_WindRiderActivatesMoveEnd[]; extern const u8 BattleScript_WindPowerActivates[]; -extern const u8 BattleScript_WindPowerActivatesEnd2[]; extern const u8 BattleScript_ProtosynthesisActivates[]; extern const u8 BattleScript_QuarkDriveActivates[]; extern const u8 BattleScript_GoodAsGoldActivates[]; From afd18f06b4e6d0929da226e44d195a6678aa9786 Mon Sep 17 00:00:00 2001 From: kittenchilly Date: Sun, 25 Aug 2024 16:29:33 -0500 Subject: [PATCH 13/32] Fix switch out move message (#5258) --- src/battle_message.c | 2 +- test/battle/move_effect/chilly_reception.c | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/battle_message.c b/src/battle_message.c index 497e617601..58eda8aed7 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -547,7 +547,7 @@ static const u8 sText_TargetIdentified[] = _("{B_DEF_NAME_WITH_PREFIX} was\niden static const u8 sText_TargetWokeUp[] = _("{B_DEF_NAME_WITH_PREFIX} woke up!"); static const u8 sText_PkmnStoleAndAteItem[] = _("{B_ATK_NAME_WITH_PREFIX} stole and\nate {B_DEF_NAME_WITH_PREFIX}'s {B_LAST_ITEM}!"); static const u8 sText_TailWindBlew[] = _("The tailwind blew from\nbehind {B_ATK_TEAM2} team!"); -static const u8 sText_PkmnWentBack[] = _("{B_ATK_NAME_WITH_PREFIX} went back\nto {B_ATK_TRAINER_CLASS} {B_ATK_TRAINER_NAME}"); +static const u8 sText_PkmnWentBack[] = _("{B_ATK_NAME_WITH_PREFIX} went back\nto {B_ATK_TRAINER_NAME}!"); static const u8 sText_PkmnCantUseItemsAnymore[] = _("{B_DEF_NAME_WITH_PREFIX} can't use\nitems anymore!"); static const u8 sText_PkmnFlung[] = _("{B_ATK_NAME_WITH_PREFIX} flung its\n{B_LAST_ITEM}!"); static const u8 sText_PkmnPreventedFromHealing[] = _("{B_DEF_NAME_WITH_PREFIX} was prevented\nfrom healing!"); diff --git a/test/battle/move_effect/chilly_reception.c b/test/battle/move_effect/chilly_reception.c index a52c83eb5d..8b64a30f28 100644 --- a/test/battle/move_effect/chilly_reception.c +++ b/test/battle/move_effect/chilly_reception.c @@ -18,7 +18,7 @@ SINGLE_BATTLE_TEST("Chilly Reception sets up snow and switches the user out") MESSAGE("Slowking is preparing to tell a chillingly bad joke!"); ANIMATION(ANIM_TYPE_MOVE, MOVE_CHILLY_RECEPTION, player); MESSAGE("It started to snow!"); - MESSAGE("Slowking went back to 1"); + MESSAGE("Slowking went back to 1!"); SEND_IN_MESSAGE("Slowpoke"); ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_SNOW_CONTINUES); } @@ -36,7 +36,7 @@ SINGLE_BATTLE_TEST("Chilly Reception switches the user out, even if the weather MESSAGE("Slowking is preparing to tell a chillingly bad joke!"); ANIMATION(ANIM_TYPE_MOVE, MOVE_CHILLY_RECEPTION, player); MESSAGE("There is no relief from this heavy rain!"); - MESSAGE("Slowking went back to 1"); + MESSAGE("Slowking went back to 1!"); SEND_IN_MESSAGE("Slowpoke"); MESSAGE("Rain continues to fall."); } @@ -53,7 +53,7 @@ SINGLE_BATTLE_TEST("Chilly Reception does not switch the user out if no replacem MESSAGE("Slowking is preparing to tell a chillingly bad joke!"); ANIMATION(ANIM_TYPE_MOVE, MOVE_CHILLY_RECEPTION, player); MESSAGE("It started to snow!"); - NOT MESSAGE("Slowking went back to 1"); + NOT MESSAGE("Slowking went back to 1!"); } } @@ -69,7 +69,7 @@ SINGLE_BATTLE_TEST("Chilly Reception does not switch the user out if replacement MESSAGE("Slowking is preparing to tell a chillingly bad joke!"); ANIMATION(ANIM_TYPE_MOVE, MOVE_CHILLY_RECEPTION, player); MESSAGE("It started to snow!"); - NOT MESSAGE("Slowking went back to 1"); + NOT MESSAGE("Slowking went back to 1!"); } } @@ -84,7 +84,7 @@ SINGLE_BATTLE_TEST("Chilly Reception changes the weather, even if the user canno MESSAGE("Slowking is preparing to tell a chillingly bad joke!"); ANIMATION(ANIM_TYPE_MOVE, MOVE_CHILLY_RECEPTION, player); MESSAGE("It started to snow!"); - NOT MESSAGE("Slowking went back to 1"); + NOT MESSAGE("Slowking went back to 1!"); } } From 5de0f3cb4adb2930dff5b887f45e43e659f5732e Mon Sep 17 00:00:00 2001 From: SarnPoke <77281351+SarnPoke@users.noreply.github.com> Date: Sun, 25 Aug 2024 23:38:40 +0200 Subject: [PATCH 14/32] Add Anger Point/Crit Moves Doubles AI Interaction (#5244) * Add Anger Point/Crit Moves AI Interaction Encourages the AI to use an "always crit" move on its partner, if that partner has the Anger Point ability. * Add OHKO check Makes sure that the crit move does not OHKO the partner with Anger Point. * Fix mistake Fixes small mistake * Add Speed Check Checks if mon is faster than its Anger Point partner when scoring. --- src/battle_ai_main.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/battle_ai_main.c b/src/battle_ai_main.c index 63bab46ec9..67e9b90a24 100644 --- a/src/battle_ai_main.c +++ b/src/battle_ai_main.c @@ -2868,6 +2868,15 @@ static s32 AI_DoubleBattle(u32 battlerAtk, u32 battlerDef, u32 move, s32 score) { switch (atkPartnerAbility) { + case ABILITY_ANGER_POINT: + if (gMovesInfo[move].alwaysCriticalHit == TRUE + && BattlerStatCanRise(battlerAtkPartner, atkPartnerAbility, STAT_ATK) + && AI_IsFaster(battlerAtk, battlerAtkPartner, move) + && !CanIndexMoveFaintTarget(battlerAtk, battlerAtkPartner, AI_THINKING_STRUCT->movesetIndex, 1)) + { + RETURN_SCORE_PLUS(GOOD_EFFECT); + } + break; case ABILITY_VOLT_ABSORB: if (!(AI_THINKING_STRUCT->aiFlags[battlerAtk] & AI_FLAG_HP_AWARE)) { From 8d47db6160530855804c62bc449eaeeba5726638 Mon Sep 17 00:00:00 2001 From: kittenchilly Date: Sun, 25 Aug 2024 16:39:25 -0500 Subject: [PATCH 15/32] Add Population Bomb animation (#5194) * Population Bomb animation * Update battle_anim_new.c * Update battle_anim_new.c --- data/battle_anim_scripts.s | 23 ++++++++++++++++++++++- src/battle_anim_new.c | 10 ++++++++++ 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index 2f1a3cb73c..fdc7a59e4e 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -17630,9 +17630,30 @@ Move_MALIGNANT_CHAIN:: waitforvisualfinish end +Move_POPULATION_BOMB:: + loadspritegfx ANIM_TAG_CUT + monbg ANIM_TARGET + setalpha 12, 8 + playsewithpan SE_M_CUT, SOUND_PAN_TARGET + createvisualtask AnimTask_RandomBool, 2 + jumpretfalse PopulationBombSliceRight + jumprettrue PopulationBombSliceLeft +PopulationBombSliceRight: + createsprite gCuttingSliceSpriteTemplate, ANIM_ATTACKER, 2, 40, -32, 0 + goto PopulationBombContinue +PopulationBombSliceLeft: + createsprite gCuttingSliceSpriteTemplate, ANIM_ATTACKER, 2, 40, -32, 1 +PopulationBombContinue: + delay 5 + createvisualtask AnimTask_ShakeMon, 2, ANIM_TARGET, 0, 3, 10, 1 + waitforvisualfinish + clearmonbg ANIM_TARGET + blendoff + waitforvisualfinish + end + Move_TERA_BLAST:: Move_ORDER_UP:: -Move_POPULATION_BOMB:: Move_GLAIVE_RUSH:: Move_REVIVAL_BLESSING:: Move_SALT_CURE:: diff --git a/src/battle_anim_new.c b/src/battle_anim_new.c index a704a73f40..fd821250fc 100644 --- a/src/battle_anim_new.c +++ b/src/battle_anim_new.c @@ -9285,3 +9285,13 @@ static void AnimMakingItRain(struct Sprite *sprite) sprite->callback = TranslateSpriteInEllipse; sprite->callback(sprite); } + +void AnimTask_RandomBool(u8 taskId) +{ + if (RandomPercentage(RNG_NONE, 50)) + gBattleAnimArgs[ARG_RET_ID] = TRUE; + else + gBattleAnimArgs[ARG_RET_ID] = FALSE; + + DestroyAnimVisualTask(taskId); +} From 03e0472cbe93e10b3ec6e9dca8c1b459b54ece24 Mon Sep 17 00:00:00 2001 From: kittenchilly Date: Mon, 26 Aug 2024 08:58:12 -0500 Subject: [PATCH 16/32] Add I_REPEL_INCLUDE_FAINTED config and behavior (#5239) * Add I_REPEL_INCLUDE_FAINTED config * Update src/wild_encounter.c Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com> * Update wild_encounter.c * Update wild_encounter.c * Update src/wild_encounter.c --------- Co-authored-by: Alex <93446519+AlexOn1ine@users.noreply.github.com> --- include/config/item.h | 1 + src/wild_encounter.c | 10 +++------- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/include/config/item.h b/include/config/item.h index 2f60739335..272848e82e 100644 --- a/include/config/item.h +++ b/include/config/item.h @@ -20,6 +20,7 @@ #define I_POWER_ITEM_BOOST GEN_LATEST // In Gen7+, Power Items grant 8 EVs instead of 4 EVs. #define I_PREMIER_BALL_BONUS GEN_LATEST // In LGPE onwards (Gen8+ here), you are given a Premier Ball for every 10 Poké Balls of any type and in the same purchase. Previously, it only applied to regular Poké Balls and only 1 could be obtained per purchase. #define I_ROTOM_CATALOG_THUNDER_SHOCK GEN_LATEST // In Gen9+, reverting Rotom to its base form will teach it Thunder Shock even if it knows another move. +#define I_REPEL_INCLUDE_FAINTED GEN_LATEST // In Gen1 and Gen6+, Repels always use the level of the first member of the party to check which wild Pokémon to prevent encounters with, even if that member is fainted. In Gen2-5, it only uses the level of the first non-fainted Pokémon. // TM config #define I_REUSABLE_TMS FALSE // In Gen5-8, TMs are reusable. Setting this to TRUE will make all vanilla TMs reusable, though they can also be cherry-picked by setting their importance to 1. diff --git a/src/wild_encounter.c b/src/wild_encounter.c index ae7770aa3a..033eec56da 100644 --- a/src/wild_encounter.c +++ b/src/wild_encounter.c @@ -1002,14 +1002,10 @@ static bool8 IsWildLevelAllowedByRepel(u8 wildLevel) for (i = 0; i < PARTY_SIZE; i++) { - if (GetMonData(&gPlayerParty[i], MON_DATA_HP) && !GetMonData(&gPlayerParty[i], MON_DATA_IS_EGG)) + if (I_REPEL_INCLUDE_FAINTED == GEN_1 || I_REPEL_INCLUDE_FAINTED >= GEN_6 || GetMonData(&gPlayerParty[i], MON_DATA_HP)) { - u8 ourLevel = GetMonData(&gPlayerParty[i], MON_DATA_LEVEL); - - if (wildLevel < ourLevel) - return FALSE; - else - return TRUE; + if (!GetMonData(&gPlayerParty[i], MON_DATA_IS_EGG)) + return wildLevel >= GetMonData(&gPlayerParty[i], MON_DATA_LEVEL); } } From 80ad7f15cc6806bad97d05e5a9bb0591fc760334 Mon Sep 17 00:00:00 2001 From: kittenchilly Date: Mon, 26 Aug 2024 13:09:50 -0500 Subject: [PATCH 17/32] Chilly Reception AI --- src/battle_ai_main.c | 15 ++++++++++++++- src/battle_ai_switch_items.c | 2 +- src/battle_ai_util.c | 3 ++- test/battle/ai/ai_flag_sequence_switching.c | 4 +++- 4 files changed, 20 insertions(+), 4 deletions(-) diff --git a/src/battle_ai_main.c b/src/battle_ai_main.c index 67e9b90a24..a7133fe363 100644 --- a/src/battle_ai_main.c +++ b/src/battle_ai_main.c @@ -1739,6 +1739,15 @@ static s32 AI_CheckBadMove(u32 battlerAtk, u32 battlerDef, u32 move, s32 score) break; case EFFECT_HIT_ESCAPE: break; + case EFFECT_CHILLY_RECEPTION: + if (CountUsablePartyMons(battlerAtk) == 0) + ADJUST_SCORE(-10); + else if (weather & (B_WEATHER_SNOW | B_WEATHER_PRIMAL_ANY) + || IsMoveEffectWeather(aiData->partnerMove)) + ADJUST_SCORE(-8); + else if (weather & B_WEATHER_HAIL) + ADJUST_SCORE(-2); // mainly to prevent looping between hail and snow + break; case EFFECT_BELLY_DRUM: case EFFECT_FILLET_AWAY: if (aiData->abilities[battlerAtk] == ABILITY_CONTRARY) @@ -2773,6 +2782,7 @@ static s32 AI_DoubleBattle(u32 battlerAtk, u32 battlerDef, u32 move, s32 score) case EFFECT_SNOWSCAPE: case EFFECT_RAIN_DANCE: case EFFECT_SANDSTORM: + case EFFECT_CHILLY_RECEPTION: if (IsMoveEffectWeather(move)) ADJUST_SCORE(-10); break; @@ -2852,6 +2862,7 @@ static s32 AI_DoubleBattle(u32 battlerAtk, u32 battlerDef, u32 move, s32 score) } break; case EFFECT_SNOWSCAPE: + case EFFECT_CHILLY_RECEPTION: if (IsBattlerAlive(battlerAtkPartner) && ShouldSetSnow(battlerAtkPartner, atkPartnerAbility, atkPartnerHoldEffect)) { @@ -2869,7 +2880,7 @@ static s32 AI_DoubleBattle(u32 battlerAtk, u32 battlerDef, u32 move, s32 score) switch (atkPartnerAbility) { case ABILITY_ANGER_POINT: - if (gMovesInfo[move].alwaysCriticalHit == TRUE + if (gMovesInfo[move].alwaysCriticalHit == TRUE && BattlerStatCanRise(battlerAtkPartner, atkPartnerAbility, STAT_ATK) && AI_IsFaster(battlerAtk, battlerAtkPartner, move) && !CanIndexMoveFaintTarget(battlerAtk, battlerAtkPartner, AI_THINKING_STRUCT->movesetIndex, 1)) @@ -3630,6 +3641,7 @@ static u32 AI_CalcMoveEffectScore(u32 battlerAtk, u32 battlerDef, u32 move) //fallthrough case EFFECT_HIT_ESCAPE: case EFFECT_PARTING_SHOT: + case EFFECT_CHILLY_RECEPTION: if (!IsDoubleBattle()) { switch (ShouldPivot(battlerAtk, battlerDef, aiData->abilities[battlerDef], move, movesetIndex)) @@ -4888,6 +4900,7 @@ static s32 AI_SetupFirstTurn(u32 battlerAtk, u32 battlerDef, u32 move, s32 score case EFFECT_SANDSTORM: case EFFECT_HAIL: case EFFECT_SNOWSCAPE: + case EFFECT_CHILLY_RECEPTION: case EFFECT_GEOMANCY: case EFFECT_VICTORY_DANCE: ADJUST_SCORE(DECENT_EFFECT); diff --git a/src/battle_ai_switch_items.c b/src/battle_ai_switch_items.c index e0359ff00f..23a655d5ed 100644 --- a/src/battle_ai_switch_items.c +++ b/src/battle_ai_switch_items.c @@ -2000,7 +2000,7 @@ static u32 GetBestMonIntegrated(struct Pokemon *party, int firstId, int lastId, } // If ace mon is the last available Pokemon and U-Turn/Volt Switch was used - switch to the mon. if (aceMonId != PARTY_SIZE - && (gMovesInfo[gLastUsedMove].effect == EFFECT_HIT_ESCAPE || gMovesInfo[gLastUsedMove].effect == EFFECT_PARTING_SHOT || gMovesInfo[gLastUsedMove].effect == EFFECT_BATON_PASS)) + && (gMovesInfo[gLastUsedMove].effect == EFFECT_HIT_ESCAPE || gMovesInfo[gLastUsedMove].effect == EFFECT_PARTING_SHOT || gMovesInfo[gLastUsedMove].effect == EFFECT_BATON_PASS || gMovesInfo[gLastUsedMove].effect == EFFECT_CHILLY_RECEPTION)) return aceMonId; return PARTY_SIZE; diff --git a/src/battle_ai_util.c b/src/battle_ai_util.c index 08e05e02c1..59ed0d0fd9 100644 --- a/src/battle_ai_util.c +++ b/src/battle_ai_util.c @@ -3263,7 +3263,8 @@ bool32 IsMoveEffectWeather(u32 move) || gMovesInfo[move].effect == EFFECT_RAIN_DANCE || gMovesInfo[move].effect == EFFECT_SANDSTORM || gMovesInfo[move].effect == EFFECT_HAIL - || gMovesInfo[move].effect == EFFECT_SNOWSCAPE)) + || gMovesInfo[move].effect == EFFECT_SNOWSCAPE + || gMovesInfo[move].effect == EFFECT_CHILLY_RECEPTION)) return TRUE; return FALSE; } diff --git a/test/battle/ai/ai_flag_sequence_switching.c b/test/battle/ai/ai_flag_sequence_switching.c index 1b4a264a24..7a0f3528bd 100644 --- a/test/battle/ai/ai_flag_sequence_switching.c +++ b/test/battle/ai/ai_flag_sequence_switching.c @@ -64,7 +64,7 @@ AI_SINGLE_BATTLE_TEST("AI_FLAG_SEQUENCE_SWITCHING: Roar and Dragon Tail still fo } } -AI_SINGLE_BATTLE_TEST("AI_FLAG_SEQUENCE_SWITCHING: AI will always switch into lowest party index after U-Turn, Parting Shot, and Baton Pass") +AI_SINGLE_BATTLE_TEST("AI_FLAG_SEQUENCE_SWITCHING: AI will always switch into lowest party index after U-Turn, Parting Shot, Baton Pass, and Chilly Reception") { u32 j, aiSequenceSwitchingFlag = 0, move = MOVE_NONE; @@ -72,6 +72,7 @@ AI_SINGLE_BATTLE_TEST("AI_FLAG_SEQUENCE_SWITCHING: AI will always switch into lo MOVE_U_TURN, MOVE_PARTING_SHOT, MOVE_BATON_PASS, + MOVE_CHILLY_RECEPTION, }; for (j = 0; j < ARRAY_COUNT(switchMoves); j++) @@ -84,6 +85,7 @@ AI_SINGLE_BATTLE_TEST("AI_FLAG_SEQUENCE_SWITCHING: AI will always switch into lo ASSUME(gMovesInfo[MOVE_U_TURN].effect == EFFECT_HIT_ESCAPE); ASSUME(gMovesInfo[MOVE_PARTING_SHOT].effect == EFFECT_PARTING_SHOT); ASSUME(gMovesInfo[MOVE_BATON_PASS].effect == EFFECT_BATON_PASS); + ASSUME(gMovesInfo[MOVE_CHILLY_RECEPTION].effect == EFFECT_CHILLY_RECEPTION); AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT | aiSequenceSwitchingFlag); PLAYER(SPECIES_SWELLOW) { Level (50); } OPPONENT(SPECIES_MACHOP) { Level(1); Moves(move); } From b6299ac4cef4a95bb50e982673ebe5a5201416a3 Mon Sep 17 00:00:00 2001 From: psf <77138753+pkmnsnfrn@users.noreply.github.com> Date: Mon, 26 Aug 2024 12:16:56 -0700 Subject: [PATCH 18/32] Fix a display issue with B_SHOW_TYPES (#5201) * Moved HandleInputChooseTarget and ShowEntireFieldTargets to non-static and added them as cases to ShouldHideTypeIcon * Made ShouldHideTypeIcon easier to parse * Made ShouldHideTypeIcon a for loop * Fixed identation * Made showTypesControllerFuncs a static const array per https://github.com/rh-hideout/pokeemerald-expansion/pull/5201\#discussion_r1730336265 --- include/battle_controllers.h | 2 ++ src/battle_controller_player.c | 4 ++-- src/type_icons.c | 26 +++++++++++++++++++------- 3 files changed, 23 insertions(+), 9 deletions(-) diff --git a/include/battle_controllers.h b/include/battle_controllers.h index 50860a7285..5e92cac763 100644 --- a/include/battle_controllers.h +++ b/include/battle_controllers.h @@ -313,6 +313,8 @@ void MoveSelectionDestroyCursorAt(u8 cursorPosition); void PlayerHandleChooseMove(u32 battler); void HandleInputChooseMove(u32 battler); void HandleInputChooseTarget(u32 battler); +void HandleInputShowEntireFieldTargets(u32 battler); +void HandleInputShowTargets(u32 battler); void HandleMoveSwitching(u32 battler); void HandleChooseMoveAfterDma3(u32 battler); diff --git a/src/battle_controller_player.c b/src/battle_controller_player.c index 61f2b8162d..52507157e7 100644 --- a/src/battle_controller_player.c +++ b/src/battle_controller_player.c @@ -593,7 +593,7 @@ static void HideShownTargets(u32 battler) } } -static void HandleInputShowEntireFieldTargets(u32 battler) +void HandleInputShowEntireFieldTargets(u32 battler) { if (JOY_HELD(DPAD_ANY) && gSaveBlock2Ptr->optionsButtonMode == OPTIONS_BUTTON_MODE_L_EQUALS_A) gPlayerDpadHoldFrames++; @@ -621,7 +621,7 @@ static void HandleInputShowEntireFieldTargets(u32 battler) } } -static void HandleInputShowTargets(u32 battler) +void HandleInputShowTargets(u32 battler) { if (JOY_HELD(DPAD_ANY) && gSaveBlock2Ptr->optionsButtonMode == OPTIONS_BUTTON_MODE_L_EQUALS_A) gPlayerDpadHoldFrames++; diff --git a/src/type_icons.c b/src/type_icons.c index 2877d22071..361312ab91 100644 --- a/src/type_icons.c +++ b/src/type_icons.c @@ -471,15 +471,27 @@ static void FreeAllTypeIconResources(void) } } +static void (* const sShowTypesControllerFuncs[])(u32 battler) = +{ + PlayerHandleChooseMove, + HandleChooseMoveAfterDma3, + HandleInputChooseTarget, + HandleInputShowTargets, + HandleInputShowEntireFieldTargets, + HandleMoveSwitching, + HandleInputChooseMove, +}; + + static bool32 ShouldHideTypeIcon(u32 battlerId) { - return gBattlerControllerFuncs[battlerId] != PlayerHandleChooseMove - && gBattlerControllerFuncs[battlerId] != HandleInputChooseMove - && gBattlerControllerFuncs[battlerId] != HandleChooseMoveAfterDma3 - && gBattlerControllerFuncs[battlerId] != HandleInputChooseMove - && gBattlerControllerFuncs[battlerId] != HandleInputChooseTarget - && gBattlerControllerFuncs[battlerId] != HandleMoveSwitching - && gBattlerControllerFuncs[battlerId] != HandleInputChooseMove; + u32 funcIndex; + + for (funcIndex = 0; funcIndex < ARRAY_COUNT(sShowTypesControllerFuncs); funcIndex++) + if (gBattlerControllerFuncs[battlerId] == sShowTypesControllerFuncs[funcIndex]) + return FALSE; + + return TRUE; } static s32 GetTypeIconHideMovement(bool32 useDoubleBattleCoords, u32 position) From c075d8e6b1eef6c6948d19647a42e1a9a3c9e3b1 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Mon, 26 Aug 2024 15:59:01 -0400 Subject: [PATCH 19/32] Fixed test system documentation (#5266) --- docs/how_to_testing_system.md | 6 +++--- include/test/battle.h | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/how_to_testing_system.md b/docs/how_to_testing_system.md index 1f25f9847e..56719458ab 100644 --- a/docs/how_to_testing_system.md +++ b/docs/how_to_testing_system.md @@ -4,9 +4,9 @@ To run all the tests use: `make check -j` To run specific tests, e.g. Spikes ones, use: -`make check TESTS='Spikes'` +`make check TESTS="Spikes"` To build a ROM (pokemerald-test.elf) that can be opened in mgba to view specific tests, e.g. Spikes ones, use: -`make pokeemerald-test.elf TESTS='Spikes'` +`make pokeemerald-test.elf TESTS="Spikes"` ## How to Write Tests Manually testing a battle mechanic often follows this pattern: @@ -54,7 +54,7 @@ The `ASSUMPTIONS` block documents that Stun Spore has `EFFECT_PARALYZE`. If Stun Spore did not have that effect it would cause the tests in the file to be skipped. We write our tests like this so that hackers can change the effects of moves without causing tests to fail. `SINGLE_BATTLE_TEST` defines the name of the test. Related tests should start with the same prefix, e.g. Stun Spore tests should start with "Stun Spore", this allows just the Stun Spore-related tests to be run with: -`make check TESTS='Stun Spore'` +`make check TESTS="Stun Spore"` `GIVEN` initializes the parties, `PLAYER` and `OPPONENT` add a Pokémon to their respective parties. They can both accept a block which further customizes the Pokémon's stats, moves, item, ability, etc. diff --git a/include/test/battle.h b/include/test/battle.h index 865afe8e0b..c28410948d 100644 --- a/include/test/battle.h +++ b/include/test/battle.h @@ -3,10 +3,10 @@ * To run all the tests use: * make check -j * To run specific tests, e.g. Spikes ones, use: - * make check TESTS='Spikes' + * make check TESTS="Spikes" * To build a ROM (pokemerald-test.elf) that can be opened in mgba to * view specific tests, e.g. Spikes ones, use: - * make pokeemerald-test.elf TESTS='Spikes' + * make pokeemerald-test.elf TESTS="Spikes" * * Manually testing a battle mechanic often follows this pattern: * 1. Create a party which can activate the mechanic. @@ -55,7 +55,7 @@ * start with the same prefix, e.g. Stun Spore tests should start with * "Stun Spore", this allows just the Stun Spore-related tests to be run * with: - * make check TESTS='Stun Spore' + * make check TESTS="Stun Spore" * * GIVEN initializes the parties, PLAYER and OPPONENT add a Pokémon to * their respective parties. They can both accept a block which further From 2e43ffd5f7f1d9686d1c75d568270429d5d5ec19 Mon Sep 17 00:00:00 2001 From: hedara90 <90hedara@gmail.com> Date: Mon, 26 Aug 2024 21:59:39 +0200 Subject: [PATCH 20/32] Fixed Snore not hitting twice with Parental Bond (#5264) Co-authored-by: Hedara --- src/battle_script_commands.c | 14 +++++++------- test/battle/ability/parental_bond.c | 23 +++++++++++++++++++++++ 2 files changed, 30 insertions(+), 7 deletions(-) diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 0fc9d7b3b1..cd5fd18268 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -1240,10 +1240,10 @@ static void Cmd_attackcanceler(void) } if (gSpecialStatuses[gBattlerAttacker].parentalBondState == PARENTAL_BOND_OFF - && GetBattlerAbility(gBattlerAttacker) == ABILITY_PARENTAL_BOND - && IsMoveAffectedByParentalBond(gCurrentMove, gBattlerAttacker) - && !(gAbsentBattlerFlags & gBitTable[gBattlerTarget]) - && GetActiveGimmick(gBattlerAttacker) != GIMMICK_Z_MOVE) + && GetBattlerAbility(gBattlerAttacker) == ABILITY_PARENTAL_BOND + && IsMoveAffectedByParentalBond(gCurrentMove, gBattlerAttacker) + && !(gAbsentBattlerFlags & gBitTable[gBattlerTarget]) + && GetActiveGimmick(gBattlerAttacker) != GIMMICK_Z_MOVE) { gSpecialStatuses[gBattlerAttacker].parentalBondState = PARENTAL_BOND_1ST_HIT; gMultiHitCounter = 2; @@ -6038,9 +6038,9 @@ static void Cmd_moveend(void) gBattlerTarget = BATTLE_PARTNER(gBattlerTarget); // Target the partner in doubles for second hit. if (gBattleMons[gBattlerAttacker].hp - && gBattleMons[gBattlerTarget].hp - && (gChosenMove == MOVE_SLEEP_TALK || !(gBattleMons[gBattlerAttacker].status1 & STATUS1_SLEEP)) - && !(gBattleMons[gBattlerAttacker].status1 & STATUS1_FREEZE)) + && gBattleMons[gBattlerTarget].hp + && (gChosenMove == MOVE_SLEEP_TALK || (gChosenMove == MOVE_SNORE) || !(gBattleMons[gBattlerAttacker].status1 & STATUS1_SLEEP)) + && !(gBattleMons[gBattlerAttacker].status1 & STATUS1_FREEZE)) { if (gSpecialStatuses[gBattlerAttacker].parentalBondState) gSpecialStatuses[gBattlerAttacker].parentalBondState--; diff --git a/test/battle/ability/parental_bond.c b/test/battle/ability/parental_bond.c index 945e975b77..3ee942e789 100644 --- a/test/battle/ability/parental_bond.c +++ b/test/battle/ability/parental_bond.c @@ -263,6 +263,29 @@ SINGLE_BATTLE_TEST("Parental Bond Smack Down effect triggers after 2nd hit") } } +SINGLE_BATTLE_TEST("Parental Bond Snore strikes twice while asleep") +{ + s16 damage[2]; + GIVEN { + ASSUME(gMovesInfo[MOVE_SNORE].effect == EFFECT_SNORE); + PLAYER(SPECIES_KANGASKHAN_MEGA) { Status1(STATUS1_SLEEP); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(player, MOVE_SNORE); } + } SCENE { + MESSAGE("Kangaskhan is fast asleep."); + ANIMATION(ANIM_TYPE_MOVE, MOVE_SNORE, player); + HP_BAR(opponent, captureDamage: &damage[0]); + HP_BAR(opponent, captureDamage: &damage[1]); + MESSAGE("Hit 2 time(s)!"); + } THEN { + if (B_PARENTAL_BOND_DMG == GEN_6) + EXPECT_MUL_EQ(damage[0], Q_4_12(0.5), damage[1]); + else + EXPECT_MUL_EQ(damage[0], Q_4_12(0.25), damage[1]); + } +} + TO_DO_BATTLE_TEST("Parental Bond tests"); // Temporary TODO: Convert Bulbapedia description into tests. From 03b0d066ce05d59b2261b9c82ec51ae16e012d39 Mon Sep 17 00:00:00 2001 From: kittenchilly Date: Mon, 26 Aug 2024 16:50:58 -0500 Subject: [PATCH 21/32] Update battle_ai_main.c --- src/battle_ai_main.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/battle_ai_main.c b/src/battle_ai_main.c index a7133fe363..a56e6ace3b 100644 --- a/src/battle_ai_main.c +++ b/src/battle_ai_main.c @@ -1742,8 +1742,7 @@ static s32 AI_CheckBadMove(u32 battlerAtk, u32 battlerDef, u32 move, s32 score) case EFFECT_CHILLY_RECEPTION: if (CountUsablePartyMons(battlerAtk) == 0) ADJUST_SCORE(-10); - else if (weather & (B_WEATHER_SNOW | B_WEATHER_PRIMAL_ANY) - || IsMoveEffectWeather(aiData->partnerMove)) + else if (weather & (B_WEATHER_SNOW | B_WEATHER_PRIMAL_ANY) || IsMoveEffectWeather(aiData->partnerMove)) ADJUST_SCORE(-8); else if (weather & B_WEATHER_HAIL) ADJUST_SCORE(-2); // mainly to prevent looping between hail and snow From 74c309e2b08ef07f6294f613f44fab6006f11a74 Mon Sep 17 00:00:00 2001 From: hedara90 <90hedara@gmail.com> Date: Tue, 27 Aug 2024 01:55:54 +0200 Subject: [PATCH 22/32] Replaced all usages of tabs in C files with spaces (#5261) Co-authored-by: Hedara --- src/battle_ai_switch_items.c | 36 +- src/battle_ai_util.c | 40 +- src/battle_anim_dragon.c | 46 +- src/battle_anim_effects_1.c | 52 +- src/battle_anim_electric.c | 16 +- src/battle_anim_fight.c | 28 +- src/battle_anim_fire.c | 14 +- src/battle_anim_flying.c | 2 +- src/battle_anim_mon_movement.c | 22 +- src/battle_anim_new.c | 736 ++--- src/battle_anim_normal.c | 2 +- src/battle_anim_poison.c | 26 +- src/battle_anim_rock.c | 12 +- src/battle_anim_status_effects.c | 38 +- src/battle_anim_water.c | 10 +- src/battle_controllers.c | 4 +- src/battle_util.c | 2 +- src/data/field_effects/field_effect_objects.h | 58 +- src/data/pokemon/level_up_learnsets/gen_3.h | 2 +- src/data/pokemon/pokedex_orders.h | 2 +- src/data/tilesets/graphics.h | 2368 ++++++++--------- src/debug.c | 2 +- src/event_object_movement.c | 44 +- src/mini_printf.c | 6 +- src/pokedex_plus_hgss.c | 16 +- 25 files changed, 1792 insertions(+), 1792 deletions(-) diff --git a/src/battle_ai_switch_items.c b/src/battle_ai_switch_items.c index 23a655d5ed..8c69b695c0 100644 --- a/src/battle_ai_switch_items.c +++ b/src/battle_ai_switch_items.c @@ -71,11 +71,11 @@ void GetAIPartyIndexes(u32 battler, s32 *firstId, s32 *lastId) static bool32 HasBadOdds(u32 battler, bool32 emitResult) { //Variable initialization - u8 opposingPosition, atkType1, atkType2, defType1, defType2, effectiveness; + u8 opposingPosition, atkType1, atkType2, defType1, defType2, effectiveness; s32 i, damageDealt = 0, maxDamageDealt = 0, damageTaken = 0, maxDamageTaken = 0; u32 aiMove, playerMove, aiBestMove = MOVE_NONE, aiAbility = AI_DATA->abilities[battler], opposingBattler, weather = AI_GetWeather(AI_DATA); bool32 getsOneShot = FALSE, hasStatusMove = FALSE, hasSuperEffectiveMove = FALSE; - u16 typeEffectiveness = UQ_4_12(1.0), aiMoveEffect; //baseline typing damage + u16 typeEffectiveness = UQ_4_12(1.0), aiMoveEffect; //baseline typing damage // Only use this if AI_FLAG_SMART_SWITCHING is set for the trainer if (!(AI_THINKING_STRUCT->aiFlags[battler] & AI_FLAG_SMART_SWITCHING)) @@ -85,14 +85,14 @@ static bool32 HasBadOdds(u32 battler, bool32 emitResult) if (gBattleTypeFlags & BATTLE_TYPE_DOUBLE) return FALSE; - opposingPosition = BATTLE_OPPOSITE(GetBattlerPosition(battler)); + opposingPosition = BATTLE_OPPOSITE(GetBattlerPosition(battler)); opposingBattler = GetBattlerAtPosition(opposingPosition); // Gets types of player (opposingBattler) and computer (battler) - atkType1 = gBattleMons[opposingBattler].types[0]; - atkType2 = gBattleMons[opposingBattler].types[1]; - defType1 = gBattleMons[battler].types[0]; - defType2 = gBattleMons[battler].types[1]; + atkType1 = gBattleMons[opposingBattler].types[0]; + atkType2 = gBattleMons[opposingBattler].types[1]; + defType1 = gBattleMons[battler].types[0]; + defType2 = gBattleMons[battler].types[1]; // Check AI moves for damage dealt for (i = 0; i < MAX_MON_MOVES; i++) @@ -191,13 +191,13 @@ static bool32 HasBadOdds(u32 battler, bool32 emitResult) } // General bad type matchups have more wiggle room - if (typeEffectiveness >= UQ_4_12(2.0)) // If the player has at least a 2x type advantage - { - if (!hasSuperEffectiveMove // If the AI doesn't have a super effective move - && (gBattleMons[battler].hp >= gBattleMons[battler].maxHP / 2 // And the current mon has at least 1/2 their HP, or 1/4 HP and Regenerator + if (typeEffectiveness >= UQ_4_12(2.0)) // If the player has at least a 2x type advantage + { + if (!hasSuperEffectiveMove // If the AI doesn't have a super effective move + && (gBattleMons[battler].hp >= gBattleMons[battler].maxHP / 2 // And the current mon has at least 1/2 their HP, or 1/4 HP and Regenerator || (aiAbility == ABILITY_REGENERATOR && gBattleMons[battler].hp >= gBattleMons[battler].maxHP / 4))) - { + { // Then check if they have an important status move, which is worth using even in a bad matchup if (hasStatusMove) return FALSE; @@ -207,13 +207,13 @@ static bool32 HasBadOdds(u32 battler, bool32 emitResult) return FALSE; // Switch mon out - gBattleStruct->AI_monToSwitchIntoId[battler] = PARTY_SIZE; - if (emitResult) + gBattleStruct->AI_monToSwitchIntoId[battler] = PARTY_SIZE; + if (emitResult) BtlController_EmitTwoReturnValues(battler, 1, B_ACTION_SWITCH, 0); - return TRUE; - } - } - return FALSE; + return TRUE; + } + } + return FALSE; } static bool32 ShouldSwitchIfAllBadMoves(u32 battler, bool32 emitResult) diff --git a/src/battle_ai_util.c b/src/battle_ai_util.c index 59ed0d0fd9..ad22ed8fda 100644 --- a/src/battle_ai_util.c +++ b/src/battle_ai_util.c @@ -2197,7 +2197,7 @@ bool32 IsAttackBoostMoveEffect(u32 effect) switch (effect) { case EFFECT_ATTACK_UP: - case EFFECT_ATTACK_UP_2: + case EFFECT_ATTACK_UP_2: case EFFECT_ATTACK_ACCURACY_UP: case EFFECT_ATTACK_SPATK_UP: case EFFECT_DRAGON_DANCE: @@ -2217,34 +2217,34 @@ bool32 IsStatRaisingEffect(u32 effect) switch (effect) { case EFFECT_ATTACK_UP: - case EFFECT_ATTACK_UP_2: - case EFFECT_DEFENSE_UP: - case EFFECT_DEFENSE_UP_2: + case EFFECT_ATTACK_UP_2: + case EFFECT_DEFENSE_UP: + case EFFECT_DEFENSE_UP_2: case EFFECT_DEFENSE_UP_3: - case EFFECT_SPEED_UP: - case EFFECT_SPEED_UP_2: - case EFFECT_SPECIAL_ATTACK_UP: - case EFFECT_SPECIAL_ATTACK_UP_2: + case EFFECT_SPEED_UP: + case EFFECT_SPEED_UP_2: + case EFFECT_SPECIAL_ATTACK_UP: + case EFFECT_SPECIAL_ATTACK_UP_2: case EFFECT_SPECIAL_ATTACK_UP_3: - case EFFECT_SPECIAL_DEFENSE_UP: - case EFFECT_SPECIAL_DEFENSE_UP_2: + case EFFECT_SPECIAL_DEFENSE_UP: + case EFFECT_SPECIAL_DEFENSE_UP_2: case EFFECT_ACCURACY_UP: case EFFECT_ACCURACY_UP_2: case EFFECT_EVASION_UP: case EFFECT_EVASION_UP_2: case EFFECT_MINIMIZE: case EFFECT_DEFENSE_CURL: - case EFFECT_CALM_MIND: + case EFFECT_CALM_MIND: case EFFECT_COSMIC_POWER: - case EFFECT_DRAGON_DANCE: - case EFFECT_ACUPRESSURE: - case EFFECT_SHELL_SMASH: - case EFFECT_SHIFT_GEAR: - case EFFECT_ATTACK_ACCURACY_UP: - case EFFECT_ATTACK_SPATK_UP: - case EFFECT_GROWTH: - case EFFECT_COIL: - case EFFECT_QUIVER_DANCE: + case EFFECT_DRAGON_DANCE: + case EFFECT_ACUPRESSURE: + case EFFECT_SHELL_SMASH: + case EFFECT_SHIFT_GEAR: + case EFFECT_ATTACK_ACCURACY_UP: + case EFFECT_ATTACK_SPATK_UP: + case EFFECT_GROWTH: + case EFFECT_COIL: + case EFFECT_QUIVER_DANCE: case EFFECT_BULK_UP: case EFFECT_GEOMANCY: case EFFECT_STOCKPILE: diff --git a/src/battle_anim_dragon.c b/src/battle_anim_dragon.c index 862c0ad069..f3ee2a3818 100644 --- a/src/battle_anim_dragon.c +++ b/src/battle_anim_dragon.c @@ -627,36 +627,36 @@ static void AnimOverheatFlame_Step(struct Sprite *sprite) void AnimDracoMeteorRock(struct Sprite *sprite) { - if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER) - { - sprite->data[0] = sprite->x - gBattleAnimArgs[0]; - sprite->data[2] = sprite->x - gBattleAnimArgs[2]; - } - else - { - sprite->data[0] = sprite->x + gBattleAnimArgs[0]; - sprite->data[2] = sprite->x + gBattleAnimArgs[2]; - } + if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER) + { + sprite->data[0] = sprite->x - gBattleAnimArgs[0]; + sprite->data[2] = sprite->x - gBattleAnimArgs[2]; + } + else + { + sprite->data[0] = sprite->x + gBattleAnimArgs[0]; + sprite->data[2] = sprite->x + gBattleAnimArgs[2]; + } - sprite->data[1] = sprite->y + gBattleAnimArgs[1]; - sprite->data[3] = sprite->y + gBattleAnimArgs[3]; - sprite->data[4] = gBattleAnimArgs[4]; + sprite->data[1] = sprite->y + gBattleAnimArgs[1]; + sprite->data[3] = sprite->y + gBattleAnimArgs[3]; + sprite->data[4] = gBattleAnimArgs[4]; - sprite->data[6] = gBattleAnimArgs[2]; - sprite->data[7] = gBattleAnimArgs[3]; + sprite->data[6] = gBattleAnimArgs[2]; + sprite->data[7] = gBattleAnimArgs[3]; - sprite->x = sprite->data[0]; - sprite->y = sprite->data[1]; - sprite->callback = AnimDracoMeteorRock_Step; + sprite->x = sprite->data[0]; + sprite->y = sprite->data[1]; + sprite->callback = AnimDracoMeteorRock_Step; } static void AnimDracoMeteorRock_Step(struct Sprite *sprite) { - sprite->x2 = ((sprite->data[2] - sprite->data[0]) * sprite->data[5]) / sprite->data[4]; - sprite->y2 = ((sprite->data[3] - sprite->data[1]) * sprite->data[5]) / sprite->data[4]; + sprite->x2 = ((sprite->data[2] - sprite->data[0]) * sprite->data[5]) / sprite->data[4]; + sprite->y2 = ((sprite->data[3] - sprite->data[1]) * sprite->data[5]) / sprite->data[4]; - if (sprite->data[5] == sprite->data[4]) - DestroyAnimSprite(sprite); + if (sprite->data[5] == sprite->data[4]) + DestroyAnimSprite(sprite); - sprite->data[5]++; + sprite->data[5]++; } diff --git a/src/battle_anim_effects_1.c b/src/battle_anim_effects_1.c index b29d9b2b94..c4b50fa797 100644 --- a/src/battle_anim_effects_1.c +++ b/src/battle_anim_effects_1.c @@ -2535,13 +2535,13 @@ const struct SpriteTemplate gTauntFingerSpriteTemplate = const struct SpriteTemplate gPowerOrbs_Float = { - .tileTag = ANIM_TAG_RED_ORB, - .paletteTag = ANIM_TAG_RED_ORB, - .oam = &gOamData_AffineOff_ObjNormal_16x16, - .anims = gSporeParticleAnimTable, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, - .callback = AnimSporeParticle, + .tileTag = ANIM_TAG_RED_ORB, + .paletteTag = ANIM_TAG_RED_ORB, + .oam = &gOamData_AffineOff_ObjNormal_16x16, + .anims = gSporeParticleAnimTable, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = AnimSporeParticle, }; const union AnimCmd gRockPolishStreak_AnimCmd[] = @@ -7234,42 +7234,42 @@ static void AnimNightSlash(struct Sprite *sprite) static const union AffineAnimCmd sCompressTargetHorizontallyAffineAnimCmds[] = { - AFFINEANIMCMD_FRAME(64, 0, 0, 16), //Compress - AFFINEANIMCMD_FRAME(0, 0, 0, 64), - AFFINEANIMCMD_FRAME(-64, 0, 0, 16), - AFFINEANIMCMD_END, + AFFINEANIMCMD_FRAME(64, 0, 0, 16), //Compress + AFFINEANIMCMD_FRAME(0, 0, 0, 64), + AFFINEANIMCMD_FRAME(-64, 0, 0, 16), + AFFINEANIMCMD_END, }; static const union AffineAnimCmd sCompressTargetHorizontallyAffineAnimCmdsFast[] = { - AFFINEANIMCMD_FRAME(32, 0, 0, 16), //Compress - AFFINEANIMCMD_FRAME(0, 0, 0, 32), - AFFINEANIMCMD_FRAME(-32, 0, 0, 16), - AFFINEANIMCMD_END, + AFFINEANIMCMD_FRAME(32, 0, 0, 16), //Compress + AFFINEANIMCMD_FRAME(0, 0, 0, 32), + AFFINEANIMCMD_FRAME(-32, 0, 0, 16), + AFFINEANIMCMD_END, }; static void AnimTask_CompressTargetStep(u8 taskId) { - struct Task* task = &gTasks[taskId]; + struct Task* task = &gTasks[taskId]; - if (!RunAffineAnimFromTaskData(task)) - DestroyAnimVisualTask(taskId); + if (!RunAffineAnimFromTaskData(task)) + DestroyAnimVisualTask(taskId); } void AnimTask_CompressTargetHorizontally(u8 taskId) { - struct Task* task = &gTasks[taskId]; - u8 spriteId = GetAnimBattlerSpriteId(ANIM_TARGET); - PrepareAffineAnimInTaskData(task, spriteId, sCompressTargetHorizontallyAffineAnimCmds); - task->func = AnimTask_CompressTargetStep; + struct Task* task = &gTasks[taskId]; + u8 spriteId = GetAnimBattlerSpriteId(ANIM_TARGET); + PrepareAffineAnimInTaskData(task, spriteId, sCompressTargetHorizontallyAffineAnimCmds); + task->func = AnimTask_CompressTargetStep; } void AnimTask_CompressTargetHorizontallyFast(u8 taskId) { - struct Task* task = &gTasks[taskId]; - u8 spriteId = GetAnimBattlerSpriteId(ANIM_TARGET); - PrepareAffineAnimInTaskData(task, spriteId, sCompressTargetHorizontallyAffineAnimCmdsFast); - task->func = AnimTask_CompressTargetStep; + struct Task* task = &gTasks[taskId]; + u8 spriteId = GetAnimBattlerSpriteId(ANIM_TARGET); + PrepareAffineAnimInTaskData(task, spriteId, sCompressTargetHorizontallyAffineAnimCmdsFast); + task->func = AnimTask_CompressTargetStep; } void AnimTask_CreateSmallSteelBeamOrbs(u8 taskId) diff --git a/src/battle_anim_electric.c b/src/battle_anim_electric.c index 38ca948749..de6d820264 100644 --- a/src/battle_anim_electric.c +++ b/src/battle_anim_electric.c @@ -525,17 +525,17 @@ const struct SpriteTemplate gFlashCannonGrayChargeTemplate = static const union AffineAnimCmd sSpriteAffineAnim_JudgmentBall[] = { - AFFINEANIMCMD_FRAME(16, 16, 0, 0), - AFFINEANIMCMD_FRAME(8, 8, 0, 15), //Half size - AFFINEANIMCMD_FRAME(0, 0, 0, 120), //Delay - AFFINEANIMCMD_FRAME(24, 24, 0, 5), //Normal size - AFFINEANIMCMD_FRAME(0, 0, 0, 10), //Delay - AFFINEANIMCMD_FRAME(-16, -16, 0, 15), //Revert to 1 px - AFFINEANIMCMD_END, + AFFINEANIMCMD_FRAME(16, 16, 0, 0), + AFFINEANIMCMD_FRAME(8, 8, 0, 15), //Half size + AFFINEANIMCMD_FRAME(0, 0, 0, 120), //Delay + AFFINEANIMCMD_FRAME(24, 24, 0, 5), //Normal size + AFFINEANIMCMD_FRAME(0, 0, 0, 10), //Delay + AFFINEANIMCMD_FRAME(-16, -16, 0, 15), //Revert to 1 px + AFFINEANIMCMD_END, }; static const union AffineAnimCmd* const sSpriteAffineAnimTable_JudgmentBall[] = { - sSpriteAffineAnim_JudgmentBall, + sSpriteAffineAnim_JudgmentBall, }; const struct SpriteTemplate gJudgmentBlackChargeTemplate = { diff --git a/src/battle_anim_fight.c b/src/battle_anim_fight.c index 0db2a92afc..e150a2a57d 100644 --- a/src/battle_anim_fight.c +++ b/src/battle_anim_fight.c @@ -403,24 +403,24 @@ const struct SpriteTemplate gFocusPunchFistSpriteTemplate = const struct SpriteTemplate gPalmSpriteTemplate = { - .tileTag = ANIM_TAG_PURPLE_HAND_OUTLINE, - .paletteTag = ANIM_TAG_PURPLE_HAND_OUTLINE, - .oam = &gOamData_AffineOff_ObjNormal_32x32, - .anims = gAnims_HandsAndFeet, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, - .callback = AnimBasicFistOrFoot, + .tileTag = ANIM_TAG_PURPLE_HAND_OUTLINE, + .paletteTag = ANIM_TAG_PURPLE_HAND_OUTLINE, + .oam = &gOamData_AffineOff_ObjNormal_32x32, + .anims = gAnims_HandsAndFeet, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = AnimBasicFistOrFoot, }; const struct SpriteTemplate gAuraSphereBlast = { - .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, - .paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT, - .oam = &gOamData_AffineOff_ObjNormal_64x64, - .anims = gDummySpriteAnimTable, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, - .callback = AnimSuperpowerFireball, + .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, + .paletteTag = ANIM_TAG_CIRCLE_OF_LIGHT, + .oam = &gOamData_AffineOff_ObjNormal_64x64, + .anims = gDummySpriteAnimTable, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = AnimSuperpowerFireball, }; const union AffineAnimCmd gForcePalmAffineAnimCmd_1[] = diff --git a/src/battle_anim_fire.c b/src/battle_anim_fire.c index 3a770a7c8c..401cc09eaf 100644 --- a/src/battle_anim_fire.c +++ b/src/battle_anim_fire.c @@ -530,13 +530,13 @@ const struct SpriteTemplate gSpacialRendBladesTemplate2 = // Sea of Fire const struct SpriteTemplate gTwisterEmberSpriteTemplate = { - .tileTag = ANIM_TAG_SMALL_EMBER, - .paletteTag = ANIM_TAG_SMALL_EMBER, - .oam = &gOamData_AffineOff_ObjNormal_32x32, - .anims = gAnims_BasicFire, - .images = NULL, - .affineAnims = gDummySpriteAffineAnimTable, - .callback = AnimMoveTwisterParticle, + .tileTag = ANIM_TAG_SMALL_EMBER, + .paletteTag = ANIM_TAG_SMALL_EMBER, + .oam = &gOamData_AffineOff_ObjNormal_32x32, + .anims = gAnims_BasicFire, + .images = NULL, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = AnimMoveTwisterParticle, }; static void AnimLavaPlumeOrbitScatter(struct Sprite *sprite) diff --git a/src/battle_anim_flying.c b/src/battle_anim_flying.c index 6afe1e9f36..1fd587fa4c 100644 --- a/src/battle_anim_flying.c +++ b/src/battle_anim_flying.c @@ -527,7 +527,7 @@ void AnimFlyBallAttack(struct Sprite *sprite) sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); sprite->data[3] = sprite->y; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); - sprite->data[5] = gBattleAnimArgs[1]; // if sprite is to remain invisible + sprite->data[5] = gBattleAnimArgs[1]; // if sprite is to remain invisible InitAnimLinearTranslation(sprite); sprite->callback = AnimFlyBallAttack_Step; diff --git a/src/battle_anim_mon_movement.c b/src/battle_anim_mon_movement.c index cbd70817f5..051524a689 100644 --- a/src/battle_anim_mon_movement.c +++ b/src/battle_anim_mon_movement.c @@ -730,13 +730,13 @@ static void AnimTask_DuckDownHop_Step1(u8 taskId) { u8 spriteId; - spriteId = gTasks[taskId].data[0]; - gTasks[taskId].data[12] += gTasks[taskId].data[5]; - gSprites[spriteId].y2 = (gTasks[taskId].data[12] >> 8); - if (--gTasks[taskId].data[6] == 0) - { + spriteId = gTasks[taskId].data[0]; + gTasks[taskId].data[12] += gTasks[taskId].data[5]; + gSprites[spriteId].y2 = (gTasks[taskId].data[12] >> 8); + if (--gTasks[taskId].data[6] == 0) + { gTasks[taskId].func = AnimTask_DuckDownHop_Step2; - } + } } static void AnimTask_DuckDownHop_Step2(u8 taskId) @@ -748,11 +748,11 @@ static void AnimTask_DuckDownHop_Step2(u8 taskId) } else { - spriteId = gTasks[taskId].data[0]; - gTasks[taskId].data[11] += gTasks[taskId].data[1]; - gSprites[spriteId].x2 = gTasks[taskId].data[11] >> 8; - gSprites[spriteId].y2 = Sin((u8)(gTasks[taskId].data[10] >> 8), gTasks[taskId].data[2]) + (gTasks[taskId].data[12] >> 8); - gTasks[taskId].data[10] += gTasks[taskId].data[7]; + spriteId = gTasks[taskId].data[0]; + gTasks[taskId].data[11] += gTasks[taskId].data[1]; + gSprites[spriteId].x2 = gTasks[taskId].data[11] >> 8; + gSprites[spriteId].y2 = Sin((u8)(gTasks[taskId].data[10] >> 8), gTasks[taskId].data[2]) + (gTasks[taskId].data[12] >> 8); + gTasks[taskId].data[10] += gTasks[taskId].data[7]; if (--gTasks[taskId].data[3] == 0) { DestroyAnimVisualTask(taskId); diff --git a/src/battle_anim_new.c b/src/battle_anim_new.c index cd89b6aab7..eba6496f20 100644 --- a/src/battle_anim_new.c +++ b/src/battle_anim_new.c @@ -4202,13 +4202,13 @@ const struct SpriteTemplate gTripleAxelIceCrystalSpriteTemplate = // dual wingbeat static const union AffineAnimCmd sSpriteAffineAnim_WingAttackFeather[] = { - AFFINEANIMCMD_FRAME(0, 0, -1, 14), //Rotate a little right - AFFINEANIMCMD_FRAME(0, 0, 1, 28), //Rotate a little left - AFFINEANIMCMD_END, + AFFINEANIMCMD_FRAME(0, 0, -1, 14), //Rotate a little right + AFFINEANIMCMD_FRAME(0, 0, 1, 28), //Rotate a little left + AFFINEANIMCMD_END, }; static const union AffineAnimCmd* const sSpriteAffineAnimTable_WingAttackFeather[] = { - sSpriteAffineAnim_WingAttackFeather, + sSpriteAffineAnim_WingAttackFeather, }; const struct SpriteTemplate gDualWingbeatFeatherSpriteTemplate = { @@ -4234,11 +4234,11 @@ const struct SpriteTemplate gSpriteTemplate_LargeCrossImpact = { // expanding force static const struct OamData sGeyserOam = { - .affineMode = ST_OAM_AFFINE_OFF, - .objMode = ST_OAM_OBJ_NORMAL, - .shape = SPRITE_SHAPE(32x32), - .size = SPRITE_SIZE(32x32), - .priority = 1, //Above sprites + .affineMode = ST_OAM_AFFINE_OFF, + .objMode = ST_OAM_OBJ_NORMAL, + .shape = SPRITE_SHAPE(32x32), + .size = SPRITE_SIZE(32x32), + .priority = 1, //Above sprites }; const struct SpriteTemplate gSpriteTemplate_ExpandingForceExplode = { .tileTag = ANIM_TAG_EXPLOSION_2, @@ -4252,12 +4252,12 @@ const struct SpriteTemplate gSpriteTemplate_ExpandingForceExplode = { // spirit break static const union AffineAnimCmd sSpriteAffineAnim_SpiritBreakBall[] = { - AFFINEANIMCMD_FRAME(16, 16, 0, 0), - AFFINEANIMCMD_FRAME(2, 2, 0, 50), //Grow slowly to half size - AFFINEANIMCMD_END, + AFFINEANIMCMD_FRAME(16, 16, 0, 0), + AFFINEANIMCMD_FRAME(2, 2, 0, 50), //Grow slowly to half size + AFFINEANIMCMD_END, }; static const union AffineAnimCmd* const sSpriteAffineAnimTable_SpiritBreakBall[] = { - sSpriteAffineAnim_SpiritBreakBall, + sSpriteAffineAnim_SpiritBreakBall, }; const struct SpriteTemplate gSpriteTemplate_SpiritBreakChargeBall = { .tileTag = ANIM_TAG_CIRCLE_OF_LIGHT, @@ -4281,11 +4281,11 @@ const struct SpriteTemplate gSpriteTemplate_SpiritBreakExplode = { // chloroblast const union AffineAnimCmd sSpriteAffineAnim_HydroCannonBall[] = { - AFFINEANIMCMD_FRAME(16, 16, 0, 16), //Double in size - AFFINEANIMCMD_END + AFFINEANIMCMD_FRAME(16, 16, 0, 16), //Double in size + AFFINEANIMCMD_END }; const union AffineAnimCmd* const sSpriteAffineAnimTable_HydroCannonBall[] = { - sSpriteAffineAnim_HydroCannonBall, + sSpriteAffineAnim_HydroCannonBall, }; const struct SpriteTemplate gSpriteTemplate_ChloroblastShot = { .tileTag = ANIM_TAG_HYDRO_PUMP, @@ -4394,12 +4394,12 @@ const struct SpriteTemplate gSpriteTemplate_FlipTurnBack = { // wicked blow static const union AffineAnimCmd sSpriteAffineAnim_DrainPunchFist[] = { - AFFINEANIMCMD_FRAME(256, 256, 0, 1), //Double sprite size - AFFINEANIMCMD_FRAME(-32, -32, 0, 8), - AFFINEANIMCMD_END, + AFFINEANIMCMD_FRAME(256, 256, 0, 1), //Double sprite size + AFFINEANIMCMD_FRAME(-32, -32, 0, 8), + AFFINEANIMCMD_END, }; static const union AffineAnimCmd* const sSpriteAffineAnimTable_DrainPunchFist[] = { - sSpriteAffineAnim_DrainPunchFist, + sSpriteAffineAnim_DrainPunchFist, }; const struct SpriteTemplate gSpriteTemplate_WickedBlowFist = { @@ -4432,14 +4432,14 @@ const struct SpriteTemplate gSpriteTemplate_WickedBlowRedStars = { // surging strikes static const union AnimCmd sAnimCmdSurgingStrike[] = { - //Only tthe first three frames of the animation - ANIMCMD_FRAME(64, 4), - ANIMCMD_FRAME(48, 4), - ANIMCMD_FRAME(32, 4), - ANIMCMD_END, + //Only tthe first three frames of the animation + ANIMCMD_FRAME(64, 4), + ANIMCMD_FRAME(48, 4), + ANIMCMD_FRAME(32, 4), + ANIMCMD_END, }; static const union AnimCmd *const sAnimCmdTable_SurgingStrike[] = { - sAnimCmdSurgingStrike, + sAnimCmdSurgingStrike, }; const struct SpriteTemplate gSpriteTemplate_SurgingStrikesImpact = { .tileTag = ANIM_TAG_IMPACT_2, @@ -4477,22 +4477,22 @@ const struct SpriteTemplate gSpriteTemplate_FieryWrathGeyser = { static const union AffineAnimCmd sSpriteAffineAnim_GlacialLance_Grow[] = { AFFINEANIMCMD_FRAME(0x20, 0x20, 0, 0), AFFINEANIMCMD_FRAME(0x10, 0x10, 0, 30), //Double sprite size - AFFINEANIMCMD_END, + AFFINEANIMCMD_END, }; static const union AffineAnimCmd sSpriteAffineAnim_GlacialLance_OnFoe[] = { - AFFINEANIMCMD_FRAME(256, 256, 0, 1), //Double sprite size - AFFINEANIMCMD_FRAME(0, 0, -8, 4), //Rotate 45 degrees right - AFFINEANIMCMD_END, + AFFINEANIMCMD_FRAME(256, 256, 0, 1), //Double sprite size + AFFINEANIMCMD_FRAME(0, 0, -8, 4), //Rotate 45 degrees right + AFFINEANIMCMD_END, }; static const union AffineAnimCmd sSpriteAffineAnim_GlacialLance_OnPlayer[] = { - AFFINEANIMCMD_FRAME(256, 256, 0, 1), //Double sprite size - AFFINEANIMCMD_FRAME(0, 0, 24, 4), //Rotate 135 degrees left - AFFINEANIMCMD_END, + AFFINEANIMCMD_FRAME(256, 256, 0, 1), //Double sprite size + AFFINEANIMCMD_FRAME(0, 0, 24, 4), //Rotate 135 degrees left + AFFINEANIMCMD_END, }; static const union AffineAnimCmd* const sSpriteAffineAnimTable_GlacialLance[] = { - sSpriteAffineAnim_GlacialLance_Grow, - sSpriteAffineAnim_GlacialLance_OnFoe, - sSpriteAffineAnim_GlacialLance_OnPlayer, + sSpriteAffineAnim_GlacialLance_Grow, + sSpriteAffineAnim_GlacialLance_OnFoe, + sSpriteAffineAnim_GlacialLance_OnPlayer, }; const struct SpriteTemplate gSpriteTemplate_GlacialLance = { .tileTag = ANIM_TAG_ICICLE_SPEAR, @@ -4562,11 +4562,11 @@ const struct SpriteTemplate gSpriteTemplate_PowerShiftDefenseBall = { // stone axe static const union AnimCmd sAnimCmdFlippedX[] = { - ANIMCMD_FRAME(0, 1, .hFlip = TRUE), - ANIMCMD_END, + ANIMCMD_FRAME(0, 1, .hFlip = TRUE), + ANIMCMD_END, }; static const union AnimCmd *const sAnimCmdTable_FlippedX[] = { - sAnimCmdFlippedX, + sAnimCmdFlippedX, }; const struct SpriteTemplate gSpriteTemplate_StoneAxeSlash = { .tileTag = ANIM_TAG_SLAM_HIT_2, @@ -4600,12 +4600,12 @@ const struct SpriteTemplate gSpriteTemplate_VioletMind = { // also psystrike .callback = AnimSpriteOnMonPos }; static const union AffineAnimCmd sSpriteAffineAnim_MysticalPowerRing[] = { - AFFINEANIMCMD_FRAME(16, 16, 0, 0), //Start small - AFFINEANIMCMD_FRAME(16, 16, 0, 15), //Grow sprite + AFFINEANIMCMD_FRAME(16, 16, 0, 0), //Start small + AFFINEANIMCMD_FRAME(16, 16, 0, 15), //Grow sprite AFFINEANIMCMD_END, }; static const union AffineAnimCmd* const sSpriteAffineAnimTable_MysticalPowerRing[] = { - sSpriteAffineAnim_MysticalPowerRing, + sSpriteAffineAnim_MysticalPowerRing, }; const struct SpriteTemplate gSpriteTemplate_MysticalPowerRing = { .tileTag = ANIM_TAG_THIN_RING, @@ -4703,17 +4703,17 @@ const struct SpriteTemplate gSpriteTemplate_TripleArrowKick = { // infernal parade static const union AffineAnimCmd sSpriteAffineAnim_FlutterbyPulsate[] = { - AFFINEANIMCMD_FRAME(16, 16, 0, 4), - AFFINEANIMCMD_FRAME(-16, -16, 0, 4), - AFFINEANIMCMD_JUMP(0), + AFFINEANIMCMD_FRAME(16, 16, 0, 4), + AFFINEANIMCMD_FRAME(-16, -16, 0, 4), + AFFINEANIMCMD_JUMP(0), }; static const union AffineAnimCmd sSpriteAffineAnim_FlutterbyGrow[] = { - AFFINEANIMCMD_FRAME(8, 8, 0, 16), //Double in size - AFFINEANIMCMD_END, + AFFINEANIMCMD_FRAME(8, 8, 0, 16), //Double in size + AFFINEANIMCMD_END, }; static const union AffineAnimCmd* const sSpriteAffineAnimTable_Flutterby[] = { - sSpriteAffineAnim_FlutterbyPulsate, - sSpriteAffineAnim_FlutterbyGrow, + sSpriteAffineAnim_FlutterbyPulsate, + sSpriteAffineAnim_FlutterbyGrow, }; const struct SpriteTemplate gSpriteTemplate_InfernalParadeFlame = { .tileTag = ANIM_TAG_PURPLE_FLAME, @@ -4738,13 +4738,13 @@ const struct SpriteTemplate gSpriteTemplate_CeaselessEdgeSlash = { // wildbolt storm static const union AnimCmd sAnimCmdAnimatedSpark2[] = { - ANIMCMD_FRAME((16 * 16) / (8 * 8) * 0, 8), - ANIMCMD_FRAME((16 * 16) / (8 * 8) * 1, 8), - ANIMCMD_FRAME((16 * 16) / (8 * 8) * 2, 8), - ANIMCMD_JUMP(0) + ANIMCMD_FRAME((16 * 16) / (8 * 8) * 0, 8), + ANIMCMD_FRAME((16 * 16) / (8 * 8) * 1, 8), + ANIMCMD_FRAME((16 * 16) / (8 * 8) * 2, 8), + ANIMCMD_JUMP(0) }; static const union AnimCmd *const sAnimCmdTable_AnimatedSpark2[] = { - sAnimCmdAnimatedSpark2, + sAnimCmdAnimatedSpark2, }; const struct SpriteTemplate gSpriteTemplate_WildboltStormSpark = { .tileTag = ANIM_TAG_SPARK_2, @@ -8318,69 +8318,69 @@ static void SpriteCB_GeyserTarget(struct Sprite *sprite) //// Anim Tasks Functions void AnimTask_IsAttackerPlayerSide(u8 taskId) { - if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_OPPONENT) - gBattleAnimArgs[7] = 0; - else - gBattleAnimArgs[7] = 1; + if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_OPPONENT) + gBattleAnimArgs[7] = 0; + else + gBattleAnimArgs[7] = 1; - DestroyAnimVisualTask(taskId); + DestroyAnimVisualTask(taskId); } static void AnimTask_FadeOutParticlesHelper(u8 taskId) { - if (gTasks[taskId].data[1] == 0) //Target reached - { - DestroyAnimVisualTask(taskId); - } - else if (gTasks[taskId].data[4]++ >= gTasks[taskId].data[3]) - { - gTasks[taskId].data[4] = 0; //Reset timer - gTasks[taskId].data[1]--; - gTasks[taskId].data[2]++; - SetGpuReg(REG_OFFSET_BLDALPHA, (gTasks[taskId].data[2] * 256) + gTasks[taskId].data[1]); - } + if (gTasks[taskId].data[1] == 0) //Target reached + { + DestroyAnimVisualTask(taskId); + } + else if (gTasks[taskId].data[4]++ >= gTasks[taskId].data[3]) + { + gTasks[taskId].data[4] = 0; //Reset timer + gTasks[taskId].data[1]--; + gTasks[taskId].data[2]++; + SetGpuReg(REG_OFFSET_BLDALPHA, (gTasks[taskId].data[2] * 256) + gTasks[taskId].data[1]); + } } void AnimTask_FadeOutParticles(u8 taskId) { - u8 existingTaskId = FindTaskIdByFunc(AnimTask_FadeOutParticlesHelper); - if (existingTaskId != 0xFF) - DestroyAnimVisualTask(existingTaskId); //Can only have one of these tasks going at a time + u8 existingTaskId = FindTaskIdByFunc(AnimTask_FadeOutParticlesHelper); + if (existingTaskId != 0xFF) + DestroyAnimVisualTask(existingTaskId); //Can only have one of these tasks going at a time - SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(16, 0)); - SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_ALL); //Blend sprites out - gTasks[taskId].data[1] = 16; - gTasks[taskId].data[2] = 0; - gTasks[taskId].data[3] = gBattleAnimArgs[0]; //Delay - gTasks[taskId].data[4] = 0; //Delay Timer - gTasks[taskId].func = AnimTask_FadeOutParticlesHelper; + SetGpuReg(REG_OFFSET_BLDALPHA, BLDALPHA_BLEND(16, 0)); + SetGpuReg(REG_OFFSET_BLDCNT, BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_ALL); //Blend sprites out + gTasks[taskId].data[1] = 16; + gTasks[taskId].data[2] = 0; + gTasks[taskId].data[3] = gBattleAnimArgs[0]; //Delay + gTasks[taskId].data[4] = 0; //Delay Timer + gTasks[taskId].func = AnimTask_FadeOutParticlesHelper; } static const union AffineAnimCmd sShellSmashShrinkAffineAnimCmds[] = { - AFFINEANIMCMD_FRAME(64, 64, 0, 16), //Flatten - AFFINEANIMCMD_FRAME(0, 0, 0, 48), - AFFINEANIMCMD_FRAME(-64, -64, 0, 16), - AFFINEANIMCMD_END, + AFFINEANIMCMD_FRAME(64, 64, 0, 16), //Flatten + AFFINEANIMCMD_FRAME(0, 0, 0, 48), + AFFINEANIMCMD_FRAME(-64, -64, 0, 16), + AFFINEANIMCMD_END, }; //Shrinks the attacker, pauses, then scales up the attacker again void AnimTask_ShellSmashShrinkAttacker(u8 taskId) { - struct Task* task = &gTasks[taskId]; - u8 spriteId; + struct Task* task = &gTasks[taskId]; + u8 spriteId; - task->data[0] = gBattleAnimArgs[0]; //Pause - spriteId = GetAnimBattlerSpriteId(ANIM_TARGET); - PrepareAffineAnimInTaskData(task, spriteId, sShellSmashShrinkAffineAnimCmds); - task->func = AnimTask_DynamaxGrowthStep; + task->data[0] = gBattleAnimArgs[0]; //Pause + spriteId = GetAnimBattlerSpriteId(ANIM_TARGET); + PrepareAffineAnimInTaskData(task, spriteId, sShellSmashShrinkAffineAnimCmds); + task->func = AnimTask_DynamaxGrowthStep; } static void AnimTask_DynamaxGrowthStep(u8 taskId) // from CFRU { - struct Task* task = &gTasks[taskId]; - if (!RunAffineAnimFromTaskData(task)) - DestroyAnimVisualTask(taskId); + struct Task* task = &gTasks[taskId]; + if (!RunAffineAnimFromTaskData(task)) + DestroyAnimVisualTask(taskId); } void AnimTask_AllBattlersInvisible(u8 taskId) @@ -8398,14 +8398,14 @@ void AnimTask_AllBattlersInvisible(u8 taskId) void AnimTask_AllBattlersVisible(u8 taskId) { u32 i, spriteId; - for (i = 0; i < gBattlersCount; ++i) - { - spriteId = gBattlerSpriteIds[i]; - if (IsBattlerSpriteVisible(i) && spriteId != 0xFF) - gSprites[spriteId].invisible = FALSE; - } + for (i = 0; i < gBattlersCount; ++i) + { + spriteId = gBattlerSpriteIds[i]; + if (IsBattlerSpriteVisible(i) && spriteId != 0xFF) + gSprites[spriteId].invisible = FALSE; + } - DestroyAnimVisualTask(taskId); + DestroyAnimVisualTask(taskId); } void AnimTask_AllBattlersInvisibleExceptAttackerAndTarget(u8 taskId) @@ -8747,24 +8747,24 @@ void AnimTask_AffectionHangedOn(u8 taskId) //arg 5: Wave Amplitude static void SpriteCB_PowerShiftBall(struct Sprite* sprite) { - InitSpritePosToAnimAttacker(sprite, TRUE); + InitSpritePosToAnimAttacker(sprite, TRUE); - if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_OPPONENT) - gBattleAnimArgs[2] *= -1; //Flip X + if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_OPPONENT) + gBattleAnimArgs[2] *= -1; //Flip X - sprite->data[0] = gBattleAnimArgs[4]; //Duration - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + gBattleAnimArgs[2]; //Target X - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[3]; //Target Y - sprite->data[5] = gBattleAnimArgs[5]; //Wave Amplitude + sprite->data[0] = gBattleAnimArgs[4]; //Duration + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + gBattleAnimArgs[2]; //Target X + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[3]; //Target Y + sprite->data[5] = gBattleAnimArgs[5]; //Wave Amplitude - InitAnimArcTranslation(sprite); - sprite->callback = SpriteCB_PowerShiftBallStep; + InitAnimArcTranslation(sprite); + sprite->callback = SpriteCB_PowerShiftBallStep; } static void SpriteCB_PowerShiftBallStep(struct Sprite* sprite) // Also used by Triple Arrows { - if (TranslateAnimHorizontalArc(sprite)) - DestroySpriteAndMatrix(sprite); + if (TranslateAnimHorizontalArc(sprite)) + DestroySpriteAndMatrix(sprite); } //Creates a sprite that moves left or right along the target. @@ -8775,28 +8775,28 @@ static void SpriteCB_PowerShiftBallStep(struct Sprite* sprite) // Also used by T //arg 4: direction static void SpriteCB_HorizontalSlice(struct Sprite *sprite) { - sprite->x2 = gBattleAnimArgs[0]; - sprite->y2 = gBattleAnimArgs[1]; + sprite->x2 = gBattleAnimArgs[0]; + sprite->y2 = gBattleAnimArgs[1]; - sprite->data[0] = gBattleAnimArgs[2]; //Slice distance - sprite->data[1] = gBattleAnimArgs[3]; //Slice speed - sprite->data[2] = gBattleAnimArgs[4]; //Slice direction - sprite->data[3] = 0; //Timer + sprite->data[0] = gBattleAnimArgs[2]; //Slice distance + sprite->data[1] = gBattleAnimArgs[3]; //Slice speed + sprite->data[2] = gBattleAnimArgs[4]; //Slice direction + sprite->data[3] = 0; //Timer - sprite->callback = SpriteCB_HorizontalSliceStep; + sprite->callback = SpriteCB_HorizontalSliceStep; } void SpriteCB_HorizontalSliceStep(struct Sprite *sprite) { - if (sprite->data[2] == 1) //Move left - sprite->x2 -= sprite->data[1]; - else - sprite->x2 += sprite->data[1]; + if (sprite->data[2] == 1) //Move left + sprite->x2 -= sprite->data[1]; + else + sprite->x2 += sprite->data[1]; - sprite->data[3] += sprite->data[1]; + sprite->data[3] += sprite->data[1]; - if (sprite->data[3] >= sprite->data[0]) - DestroySpriteAndMatrix(sprite); + if (sprite->data[3] >= sprite->data[0]) + DestroySpriteAndMatrix(sprite); } //Creates the slam hit for LashOut @@ -8805,27 +8805,27 @@ void SpriteCB_HorizontalSliceStep(struct Sprite *sprite) //arg 2: flip static void SpriteCB_LashOutStrike(struct Sprite* sprite) { - bool8 flip = GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER; + bool8 flip = GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER; - if (gBattleAnimArgs[2]) - flip ^= 1; + if (gBattleAnimArgs[2]) + flip ^= 1; - sprite->data[0] = 11; + sprite->data[0] = 11; - if (flip) - { - sprite->x -= gBattleAnimArgs[0]; - sprite->data[0] *= -1; - StartSpriteAffineAnim(sprite, 1); - } - else - { - sprite->x += gBattleAnimArgs[0]; - } + if (flip) + { + sprite->x -= gBattleAnimArgs[0]; + sprite->data[0] *= -1; + StartSpriteAffineAnim(sprite, 1); + } + else + { + sprite->x += gBattleAnimArgs[0]; + } - sprite->y += gBattleAnimArgs[1]; - sprite->data[1] = 192; - sprite->callback = AnimKnockOffStrike_Step; + sprite->y += gBattleAnimArgs[1]; + sprite->data[1] = 192; + sprite->callback = AnimKnockOffStrike_Step; } /* TODO - Use the ShellSmash Anim @@ -8836,91 +8836,91 @@ static void SpriteCB_LashOutStrike(struct Sprite* sprite) //arg 3: Affine anim static void SpriteCB_ShellSmashShell(struct Sprite* sprite) { - //Init Position - sprite->x = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_X_2) + gBattleAnimArgs[0]; - sprite->y = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) + 2; //2 to slightly encompass the entire sprite + //Init Position + sprite->x = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_X_2) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) + 2; //2 to slightly encompass the entire sprite - //Prepare linear movement - sprite->data[0] = gBattleAnimArgs[2]; //Duration - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + gBattleAnimArgs[1]; - sprite->data[4] = sprite->y; - sprite->callback = StartAnimLinearTranslation; - StoreSpriteCallbackInData6(sprite, SpriteCB_ShellSmashShell_DestroyDuringFadeOut); + //Prepare linear movement + sprite->data[0] = gBattleAnimArgs[2]; //Duration + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + gBattleAnimArgs[1]; + sprite->data[4] = sprite->y; + sprite->callback = StartAnimLinearTranslation; + StoreSpriteCallbackInData6(sprite, SpriteCB_ShellSmashShell_DestroyDuringFadeOut); - //Rotate properly - StartSpriteAffineAnim(sprite, gBattleAnimArgs[3]); + //Rotate properly + StartSpriteAffineAnim(sprite, gBattleAnimArgs[3]); } static void SpriteCB_ShellSmashShell_DestroyDuringFadeOut(struct Sprite* sprite) { - if (GetGpuReg(REG_OFFSET_BLDALPHA) >= BLDALPHA_BLEND(0, 8)) //Fade out 1/2 done - DestroyAnimSprite(sprite); + if (GetGpuReg(REG_OFFSET_BLDALPHA) >= BLDALPHA_BLEND(0, 8)) //Fade out 1/2 done + DestroyAnimSprite(sprite); } */ static void SpriteCB_AnimSpriteOnTargetSideCentre(struct Sprite *sprite) { - u8 target = LoadBattleAnimTarget(2); + u8 target = LoadBattleAnimTarget(2); - if (!sprite->data[0]) - { - if (IsAlly(gBattleAnimAttacker, target)) - { - if (IsDoubleBattle()) - InitSpritePosToAnimAttackersCentre(sprite, FALSE); - else - InitSpritePosToAnimAttacker(sprite, FALSE); - } - else - { - if (IsDoubleBattle()) - InitSpritePosToAnimTargetsCentre(sprite, FALSE); - else - InitSpritePosToAnimTarget(sprite, FALSE); - } + if (!sprite->data[0]) + { + if (IsAlly(gBattleAnimAttacker, target)) + { + if (IsDoubleBattle()) + InitSpritePosToAnimAttackersCentre(sprite, FALSE); + else + InitSpritePosToAnimAttacker(sprite, FALSE); + } + else + { + if (IsDoubleBattle()) + InitSpritePosToAnimTargetsCentre(sprite, FALSE); + else + InitSpritePosToAnimTarget(sprite, FALSE); + } - sprite->data[0]++; - } - else if (sprite->animEnded || sprite->affineAnimEnded) - { - DestroySpriteAndMatrix(sprite); - } + sprite->data[0]++; + } + else if (sprite->animEnded || sprite->affineAnimEnded) + { + DestroySpriteAndMatrix(sprite); + } } static void SpriteCB_SpriteOnMonUntilAffineAnimEnds(struct Sprite* sprite) { - u8 target = LoadBattleAnimTarget(0); + u8 target = LoadBattleAnimTarget(0); - if (!IsBattlerSpriteVisible(target)) - DestroyAnimSprite(sprite); - else - { - sprite->x = GetBattlerSpriteCoord(target, BATTLER_COORD_X_2); - sprite->y = GetBattlerSpriteCoord(target, BATTLER_COORD_Y_PIC_OFFSET); - StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); - sprite->callback = RunStoredCallbackWhenAffineAnimEnds; - } + if (!IsBattlerSpriteVisible(target)) + DestroyAnimSprite(sprite); + else + { + sprite->x = GetBattlerSpriteCoord(target, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(target, BATTLER_COORD_Y_PIC_OFFSET); + StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); + sprite->callback = RunStoredCallbackWhenAffineAnimEnds; + } } static void SpriteCB_SpriteOnMonForDurationUseY(struct Sprite *sprite) { - u8 target = LoadBattleAnimTarget(0); + u8 target = LoadBattleAnimTarget(0); - if (!IsBattlerSpriteVisible(target)) - DestroyAnimSprite(sprite); - else - { - sprite->x = GetBattlerSpriteCoord(target, BATTLER_COORD_X); - sprite->y = GetBattlerSpriteCoord(target, BATTLER_COORD_Y_PIC_OFFSET); + if (!IsBattlerSpriteVisible(target)) + DestroyAnimSprite(sprite); + else + { + sprite->x = GetBattlerSpriteCoord(target, BATTLER_COORD_X); + sprite->y = GetBattlerSpriteCoord(target, BATTLER_COORD_Y_PIC_OFFSET); - sprite->x2 = gBattleAnimArgs[1]; - sprite->y2 = gBattleAnimArgs[2]; - sprite->data[0] = 0; - sprite->data[1] = gBattleAnimArgs[3]; - sprite->data[2] = gBattleAnimArgs[4]; - sprite->data[3] = 0; - sprite->callback = AnimBrickBreakWall_Step; - } + sprite->x2 = gBattleAnimArgs[1]; + sprite->y2 = gBattleAnimArgs[2]; + sprite->data[0] = 0; + sprite->data[1] = gBattleAnimArgs[3]; + sprite->data[2] = gBattleAnimArgs[4]; + sprite->data[3] = 0; + sprite->callback = AnimBrickBreakWall_Step; + } } //Moves a sprite upward for set amount of time @@ -8931,28 +8931,28 @@ static void SpriteCB_SpriteOnMonForDurationUseY(struct Sprite *sprite) //arg 4: Duration static void SpriteCB_MoveSpriteUpwardsForDuration(struct Sprite* sprite) { - if (gBattleAnimArgs[0] == ANIM_ATTACKER) - { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + gBattleAnimArgs[1]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + gBattleAnimArgs[2]; - } - else - { - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0) + gBattleAnimArgs[1]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + gBattleAnimArgs[2]; - } + if (gBattleAnimArgs[0] == ANIM_ATTACKER) + { + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + gBattleAnimArgs[2]; + } + else + { + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + gBattleAnimArgs[2]; + } - sprite->data[0] = 0; - sprite->data[1] = gBattleAnimArgs[3]; //Speed - sprite->data[2] = gBattleAnimArgs[4]; //Duration - sprite->callback = SpriteCB_MoveSpriteUpwardsForDurationStep; + sprite->data[0] = 0; + sprite->data[1] = gBattleAnimArgs[3]; //Speed + sprite->data[2] = gBattleAnimArgs[4]; //Duration + sprite->callback = SpriteCB_MoveSpriteUpwardsForDurationStep; } static void SpriteCB_MoveSpriteUpwardsForDurationStep(struct Sprite* sprite) { - sprite->y -= sprite->data[1]; - if (sprite->data[0]++ > sprite->data[2]) - DestroyAnimSprite(sprite); + sprite->y -= sprite->data[1]; + if (sprite->data[0]++ > sprite->data[2]) + DestroyAnimSprite(sprite); } //Creates arc impacts for Surging Strikes @@ -8964,13 +8964,13 @@ static void SpriteCB_MoveSpriteUpwardsForDurationStep(struct Sprite* sprite) //arg 5: wave amplitude static void SpriteCB_SurgingStrikes(struct Sprite* sprite) { - InitSpritePosToAnimTarget(sprite, TRUE); - sprite->data[0] = gBattleAnimArgs[4]; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[2]; //Target X - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[3]; //Target Y - sprite->data[5] = gBattleAnimArgs[5]; - InitAnimArcTranslation(sprite); - sprite->callback = AnimMissileArc_Step; + InitSpritePosToAnimTarget(sprite, TRUE); + sprite->data[0] = gBattleAnimArgs[4]; + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[2]; //Target X + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[3]; //Target Y + sprite->data[5] = gBattleAnimArgs[5]; + InitAnimArcTranslation(sprite); + sprite->callback = AnimMissileArc_Step; } //Creates the moving Steel Wheel for Steel Roller @@ -8981,34 +8981,34 @@ static void SpriteCB_SurgingStrikes(struct Sprite* sprite) //arg 4: horizontal speed static void SpriteCB_SteelRoller(struct Sprite* sprite) { - sprite->x = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_X); - sprite->y = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_Y); + sprite->x = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_X); + sprite->y = GetBattlerSpriteCoord2(gBattleAnimTarget, BATTLER_COORD_Y); - sprite->x2 = gBattleAnimArgs[0]; - sprite->y2 += gBattleAnimArgs[1]; + sprite->x2 = gBattleAnimArgs[0]; + sprite->y2 += gBattleAnimArgs[1]; - sprite->data[4] = gBattleAnimArgs[3]; //Left/Right distance - sprite->data[5] = gBattleAnimArgs[4]; //Left/Right speed + sprite->data[4] = gBattleAnimArgs[3]; //Left/Right distance + sprite->data[5] = gBattleAnimArgs[4]; //Left/Right speed - sprite->data[3] = gBattleAnimArgs[2]; //Falling Speed - sprite->callback = SpriteCB_SteelRoller_Down; + sprite->data[3] = gBattleAnimArgs[2]; //Falling Speed + sprite->callback = SpriteCB_SteelRoller_Down; } static void SpriteCB_SteelRoller_Down(struct Sprite *sprite) { - sprite->y2 += sprite->data[3]; - if (sprite->y2 >= 0) - { - sprite->y2 = 0; - sprite->callback = SpriteCB_SteelRoller_LeftRight; - } + sprite->y2 += sprite->data[3]; + if (sprite->y2 >= 0) + { + sprite->y2 = 0; + sprite->callback = SpriteCB_SteelRoller_LeftRight; + } } static void SpriteCB_SteelRoller_LeftRight(struct Sprite* sprite) { - sprite->data[0] = -sprite->data[4]; //Slice distance - sprite->data[1] = sprite->data[5]; //Slice speed - sprite->callback = SpriteCB_LeftRightSliceStep0; + sprite->data[0] = -sprite->data[4]; //Slice distance + sprite->data[1] = sprite->data[5]; //Slice speed + sprite->callback = SpriteCB_LeftRightSliceStep0; } //Creates slashes that can be flipped. @@ -9018,63 +9018,63 @@ static void SpriteCB_SteelRoller_LeftRight(struct Sprite* sprite) //arg 3: flip y static void SpriteCB_FlippableSlash(struct Sprite* sprite) { - InitSpritePosToAnimTarget(sprite, TRUE); + InitSpritePosToAnimTarget(sprite, TRUE); - if (gBattleAnimArgs[2]) //Flip X - sprite->hFlip = TRUE; + if (gBattleAnimArgs[2]) //Flip X + sprite->hFlip = TRUE; - if (gBattleAnimArgs[3]) //Flip Y - sprite->vFlip = TRUE; + if (gBattleAnimArgs[3]) //Flip Y + sprite->vFlip = TRUE; - sprite->data[0] = 0; - sprite->data[1] = 0; - StoreSpriteCallbackInData6(sprite, AnimFalseSwipeSlice_Step3); - sprite->callback = RunStoredCallbackWhenAnimEnds; + sprite->data[0] = 0; + sprite->data[1] = 0; + StoreSpriteCallbackInData6(sprite, AnimFalseSwipeSlice_Step3); + sprite->callback = RunStoredCallbackWhenAnimEnds; } //Moves the balls for Dragon Energy sideways along the target side //arg 0: Duration static void SpriteCB_DragonEnergyShot(struct Sprite* sprite) { - s16 startingX, finishingX, y; - u8 def1 = gBattleAnimTarget; - u8 def2 = BATTLE_PARTNER(def1); + s16 startingX, finishingX, y; + u8 def1 = gBattleAnimTarget; + u8 def2 = BATTLE_PARTNER(def1); - if (!IsDoubleBattle() || IsAlly(gBattleAnimAttacker, gBattleAnimTarget)) - y = GetBattlerSpriteCoord(def1, BATTLER_COORD_Y_PIC_OFFSET); - else - { - y = 0; + if (!IsDoubleBattle() || IsAlly(gBattleAnimAttacker, gBattleAnimTarget)) + y = GetBattlerSpriteCoord(def1, BATTLER_COORD_Y_PIC_OFFSET); + else + { + y = 0; - if (IsBattlerSpritePresent(def1)) - y = GetBattlerSpriteCoord(def1, BATTLER_COORD_Y_PIC_OFFSET); + if (IsBattlerSpritePresent(def1)) + y = GetBattlerSpriteCoord(def1, BATTLER_COORD_Y_PIC_OFFSET); - if (IsBattlerSpritePresent(def2)) - y += GetBattlerSpriteCoord(def2, BATTLER_COORD_Y_PIC_OFFSET); + if (IsBattlerSpritePresent(def2)) + y += GetBattlerSpriteCoord(def2, BATTLER_COORD_Y_PIC_OFFSET); - if (IsBattlerSpritePresent(def1) && IsBattlerSpritePresent(def2)) //Both targets are visible - y /= 2; - } + if (IsBattlerSpritePresent(def1) && IsBattlerSpritePresent(def2)) //Both targets are visible + y /= 2; + } - if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_OPPONENT) - { - startingX = 0; - finishingX = 255; - } - else - { - startingX = 255; - finishingX = 0; - } + if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_OPPONENT) + { + startingX = 0; + finishingX = 255; + } + else + { + startingX = 255; + finishingX = 0; + } - sprite->x = startingX; - sprite->y = y; - sprite->x2 = 0; - sprite->data[0] = gBattleAnimArgs[0]; - sprite->data[2] = finishingX; - sprite->data[4] = y; - sprite->callback = StartAnimLinearTranslation; - StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); + sprite->x = startingX; + sprite->y = y; + sprite->x2 = 0; + sprite->data[0] = gBattleAnimArgs[0]; + sprite->data[2] = finishingX; + sprite->data[4] = y; + sprite->callback = StartAnimLinearTranslation; + StoreSpriteCallbackInData6(sprite, DestroySpriteAndMatrix); } //Moves the butterflies created in Max Flutterby @@ -9083,42 +9083,42 @@ static void SpriteCB_DragonEnergyShot(struct Sprite* sprite) //arg 2: wave amplitude static void SpriteCB_MaxFlutterby(struct Sprite* sprite) { - InitSpritePosToAnimAttacker(sprite, FALSE); + InitSpritePosToAnimAttacker(sprite, FALSE); - sprite->data[0] = 0x10; //Speed delay - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); //Target X - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); //Target Y - sprite->data[5] = gBattleAnimArgs[2]; //Wave amplitude + sprite->data[0] = 0x10; //Speed delay + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); //Target X + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); //Target Y + sprite->data[5] = gBattleAnimArgs[2]; //Wave amplitude - sprite->callback = SpriteCB_MaxFlutterbyStep1; + sprite->callback = SpriteCB_MaxFlutterbyStep1; } //The butterflies prepare to move towards the target static void SpriteCB_MaxFlutterbyStep1(struct Sprite* sprite) { - if (!FuncIsActiveTask(AnimTask_DynamaxGrowthStep)) - { - if (gAnimMoveIndex != MOVE_INFERNAL_PARADE) - PlaySE(SE_M_SAND_ATTACK); + if (!FuncIsActiveTask(AnimTask_DynamaxGrowthStep)) + { + if (gAnimMoveIndex != MOVE_INFERNAL_PARADE) + PlaySE(SE_M_SAND_ATTACK); - StartSpriteAffineAnim(sprite, 1); - InitAnimArcTranslation(sprite); - sprite->callback = SpriteCB_MaxFlutterbyStep2; - } + StartSpriteAffineAnim(sprite, 1); + InitAnimArcTranslation(sprite); + sprite->callback = SpriteCB_MaxFlutterbyStep2; + } } //Destroys the butterflies when they reach the target static void SpriteCB_MaxFlutterbyStep2(struct Sprite* sprite) { - sprite->invisible = FALSE; + sprite->invisible = FALSE; - if (TranslateAnimHorizontalArc(sprite)) - { - if (gAnimMoveIndex == MOVE_INFERNAL_PARADE) - PlaySE(SE_M_FLAME_WHEEL2); + if (TranslateAnimHorizontalArc(sprite)) + { + if (gAnimMoveIndex == MOVE_INFERNAL_PARADE) + PlaySE(SE_M_FLAME_WHEEL2); - DestroySpriteAndMatrix(sprite); - } + DestroySpriteAndMatrix(sprite); + } } //Moves the ice lance for Glacial Lance @@ -9131,56 +9131,56 @@ static void SpriteCB_MaxFlutterbyStep2(struct Sprite* sprite) //arg 6: duration to target static void SpriteCB_GlacialLance(struct Sprite* sprite) { - u8 def1 = gBattleAnimTarget; - u8 def2 = BATTLE_PARTNER(def1); + u8 def1 = gBattleAnimTarget; + u8 def2 = BATTLE_PARTNER(def1); - InitSpritePosToAnimAttacker(sprite, TRUE); - sprite->data[5] = gBattleAnimArgs[4]; - sprite->data[6] = gBattleAnimArgs[5]; + InitSpritePosToAnimAttacker(sprite, TRUE); + sprite->data[5] = gBattleAnimArgs[4]; + sprite->data[6] = gBattleAnimArgs[5]; - sprite->data[0] = gBattleAnimArgs[6]; + sprite->data[0] = gBattleAnimArgs[6]; - if (!IsDoubleBattle() || IsAlly(gBattleAnimAttacker, gBattleAnimTarget)) - { - sprite->data[2] = GetBattlerSpriteCoord(def1, BATTLER_COORD_X_2) + gBattleAnimArgs[2]; //Converge on target - sprite->data[4] = GetBattlerSpriteCoord(def1, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[3]; - } - else - { - sprite->data[2] = (GetBattlerSpriteCoord(def1, BATTLER_COORD_X_2) + GetBattlerSpriteCoord(def2, BATTLER_COORD_X_2)) / 2 + gBattleAnimArgs[2]; //Converge on target - sprite->data[4] = (GetBattlerSpriteCoord(def1, BATTLER_COORD_Y_PIC_OFFSET) + GetBattlerSpriteCoord(def2, BATTLER_COORD_Y_PIC_OFFSET)) / 2 + gBattleAnimArgs[3]; - } + if (!IsDoubleBattle() || IsAlly(gBattleAnimAttacker, gBattleAnimTarget)) + { + sprite->data[2] = GetBattlerSpriteCoord(def1, BATTLER_COORD_X_2) + gBattleAnimArgs[2]; //Converge on target + sprite->data[4] = GetBattlerSpriteCoord(def1, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[3]; + } + else + { + sprite->data[2] = (GetBattlerSpriteCoord(def1, BATTLER_COORD_X_2) + GetBattlerSpriteCoord(def2, BATTLER_COORD_X_2)) / 2 + gBattleAnimArgs[2]; //Converge on target + sprite->data[4] = (GetBattlerSpriteCoord(def1, BATTLER_COORD_Y_PIC_OFFSET) + GetBattlerSpriteCoord(def2, BATTLER_COORD_Y_PIC_OFFSET)) / 2 + gBattleAnimArgs[3]; + } - sprite->oam.priority = 1; //Above the ice cube - sprite->callback = SpriteCB_GlacialLance_Step1; + sprite->oam.priority = 1; //Above the ice cube + sprite->callback = SpriteCB_GlacialLance_Step1; } static void SpriteCB_GlacialLance_Step1(struct Sprite* sprite) { - if (sprite->data[7]++ >= sprite->data[5]) - { - sprite->data[7] = 0; - sprite->callback = SpriteCB_GlacialLance_Step2; - } - else - --sprite->y; //Move up + if (sprite->data[7]++ >= sprite->data[5]) + { + sprite->data[7] = 0; + sprite->callback = SpriteCB_GlacialLance_Step2; + } + else + --sprite->y; //Move up } static void SpriteCB_GlacialLance_Step2(struct Sprite* sprite) { - if (sprite->data[7]++ >= sprite->data[6]) - { - if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER) - StartSpriteAffineAnim(sprite, 2); - else - StartSpriteAffineAnim(sprite, 1); + if (sprite->data[7]++ >= sprite->data[6]) + { + if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER) + StartSpriteAffineAnim(sprite, 2); + else + StartSpriteAffineAnim(sprite, 1); - sprite->data[5] = 0; - sprite->data[6] = 0; - sprite->data[7] = 0; - sprite->callback = StartAnimLinearTranslation; - StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); - } + sprite->data[5] = 0; + sprite->data[6] = 0; + sprite->data[7] = 0; + sprite->callback = StartAnimLinearTranslation; + StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); + } } @@ -9191,46 +9191,46 @@ static void SpriteCB_GlacialLance_Step2(struct Sprite* sprite) //arg 3: Wave Amplitude static void SpriteCB_TripleArrowKick(struct Sprite* sprite) { - InitSpritePosToAnimTarget(sprite, TRUE); - StartSpriteAnim(sprite, 1); //Feet + InitSpritePosToAnimTarget(sprite, TRUE); + StartSpriteAnim(sprite, 1); //Feet - sprite->data[0] = gBattleAnimArgs[2]; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); //Target X - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); //Target Y - sprite->data[5] = gBattleAnimArgs[3]; + sprite->data[0] = gBattleAnimArgs[2]; + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); //Target X + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); //Target Y + sprite->data[5] = gBattleAnimArgs[3]; - InitAnimArcTranslation(sprite); - sprite->callback = SpriteCB_PowerShiftBallStep; //Arc until complete + InitAnimArcTranslation(sprite); + sprite->callback = SpriteCB_PowerShiftBallStep; //Arc until complete } // DYNAMAX static const union AffineAnimCmd sDynamaxGrowthAffineAnimCmds[] = // from CFRU { - AFFINEANIMCMD_FRAME(-2, -2, 0, 64), //Double in size over 1 second - AFFINEANIMCMD_FRAME(0, 0, 0, 64), //Pause for 1 seconds - AFFINEANIMCMD_FRAME(16, 16, 0, 8), //Shrink back down in 1/8 of a second - AFFINEANIMCMD_END, + AFFINEANIMCMD_FRAME(-2, -2, 0, 64), //Double in size over 1 second + AFFINEANIMCMD_FRAME(0, 0, 0, 64), //Pause for 1 seconds + AFFINEANIMCMD_FRAME(16, 16, 0, 8), //Shrink back down in 1/8 of a second + AFFINEANIMCMD_END, }; static const union AffineAnimCmd sDynamaxGrowthAttackAnimationAffineAnimCmds[] = { - AFFINEANIMCMD_FRAME(-4, -4, 0, 32), //Double in size quicker - AFFINEANIMCMD_FRAME(0, 0, 0, 32), //Pause for less - AFFINEANIMCMD_FRAME(16, 16, 0, 8), - AFFINEANIMCMD_END, + AFFINEANIMCMD_FRAME(-4, -4, 0, 32), //Double in size quicker + AFFINEANIMCMD_FRAME(0, 0, 0, 32), //Pause for less + AFFINEANIMCMD_FRAME(16, 16, 0, 8), + AFFINEANIMCMD_END, }; //Arg 0: Animation for attack void AnimTask_DynamaxGrowth(u8 taskId) // from CFRU { - struct Task* task = &gTasks[taskId]; - u8 spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER); + struct Task* task = &gTasks[taskId]; + u8 spriteId = GetAnimBattlerSpriteId(ANIM_ATTACKER); - if (gBattleAnimArgs[0] == 0) - PrepareAffineAnimInTaskData(task, spriteId, sDynamaxGrowthAffineAnimCmds); - else - PrepareAffineAnimInTaskData(task, spriteId, sDynamaxGrowthAttackAnimationAffineAnimCmds); - task->func = AnimTask_DynamaxGrowthStep; + if (gBattleAnimArgs[0] == 0) + PrepareAffineAnimInTaskData(task, spriteId, sDynamaxGrowthAffineAnimCmds); + else + PrepareAffineAnimInTaskData(task, spriteId, sDynamaxGrowthAttackAnimationAffineAnimCmds); + task->func = AnimTask_DynamaxGrowthStep; } void AnimTask_GetWeatherToSet(u8 taskId) @@ -9250,7 +9250,7 @@ void AnimTask_GetWeatherToSet(u8 taskId) gBattleAnimArgs[ARG_RET_ID] = 4; break; } - DestroyAnimVisualTask(taskId); + DestroyAnimVisualTask(taskId); } void AnimTask_SyrupBomb(u8 taskId) diff --git a/src/battle_anim_normal.c b/src/battle_anim_normal.c index 759c410946..d9fc8aa412 100644 --- a/src/battle_anim_normal.c +++ b/src/battle_anim_normal.c @@ -830,7 +830,7 @@ void AnimTask_InvertScreenColor(u8 taskId) selectedPalettes |= (0x10000 << gBattleAnimTarget); if (gBattleAnimArgs[0] & 0x8 && IsBattlerAlive(BATTLE_PARTNER(gBattleAnimTarget))) selectedPalettes |= (0x10000 << BATTLE_PARTNER(gBattleAnimTarget)); - if (gBattleAnimArgs[0] & 0x10 && IsBattlerAlive(BATTLE_PARTNER(gBattleAnimAttacker))) + if (gBattleAnimArgs[0] & 0x10 && IsBattlerAlive(BATTLE_PARTNER(gBattleAnimAttacker))) selectedPalettes |= (0x10000 << BATTLE_PARTNER(gBattleAnimAttacker)); InvertPlttBuffer(selectedPalettes); diff --git a/src/battle_anim_poison.c b/src/battle_anim_poison.c index dfaa32cc5e..301cdd4643 100644 --- a/src/battle_anim_poison.c +++ b/src/battle_anim_poison.c @@ -182,24 +182,24 @@ const struct SpriteTemplate gWaterBubbleSpriteTemplate = const struct SpriteTemplate gGreenPoisonDrip = { - .tileTag = ANIM_TAG_GREEN_POISON_BUBBLE, - .paletteTag = ANIM_TAG_GREEN_POISON_BUBBLE, - .oam = &gOamData_AffineDouble_ObjNormal_16x16, + .tileTag = ANIM_TAG_GREEN_POISON_BUBBLE, + .paletteTag = ANIM_TAG_GREEN_POISON_BUBBLE, + .oam = &gOamData_AffineDouble_ObjNormal_16x16, .anims = &gAnims_PoisonProjectile[1], - .images = NULL, - .affineAnims = gAffineAnims_Droplet, - .callback = AnimAcidPoisonDroplet, + .images = NULL, + .affineAnims = gAffineAnims_Droplet, + .callback = AnimAcidPoisonDroplet, }; const struct SpriteTemplate gGreenPoisonBubble = { - .tileTag = ANIM_TAG_GREEN_POISON_BUBBLE, - .paletteTag = ANIM_TAG_GREEN_POISON_BUBBLE, - .oam = &gOamData_AffineDouble_ObjNormal_16x16, - .anims = gAnims_PoisonProjectile, - .images = NULL, - .affineAnims = gAffineAnims_PoisonProjectile, - .callback = AnimAcidPoisonBubble, + .tileTag = ANIM_TAG_GREEN_POISON_BUBBLE, + .paletteTag = ANIM_TAG_GREEN_POISON_BUBBLE, + .oam = &gOamData_AffineDouble_ObjNormal_16x16, + .anims = gAnims_PoisonProjectile, + .images = NULL, + .affineAnims = gAffineAnims_PoisonProjectile, + .callback = AnimAcidPoisonBubble, }; const union AnimCmd gSuckerPunchAnimCmd[] = diff --git a/src/battle_anim_rock.c b/src/battle_anim_rock.c index f9b93a727a..5aa14ffa34 100644 --- a/src/battle_anim_rock.c +++ b/src/battle_anim_rock.c @@ -314,18 +314,18 @@ const struct SpriteTemplate gStealthRockSpriteTemplate = static const union AffineAnimCmd sSpriteAffineAnim_CrushGripHandEnemyAttack[] = { - AFFINEANIMCMD_FRAME(0, 0, 96, 1), //180 degree turn - AFFINEANIMCMD_END + AFFINEANIMCMD_FRAME(0, 0, 96, 1), //180 degree turn + AFFINEANIMCMD_END }; static const union AffineAnimCmd sSpriteAffineAnim_DoNothing[] = { - AFFINEANIMCMD_FRAME(0, 0, 0, 1), //Do nothing - AFFINEANIMCMD_END + AFFINEANIMCMD_FRAME(0, 0, 0, 1), //Do nothing + AFFINEANIMCMD_END }; static const union AffineAnimCmd* const sSpriteAffineAnimTable_CrushGripHand[] = { - sSpriteAffineAnim_DoNothing, - sSpriteAffineAnim_CrushGripHandEnemyAttack, + sSpriteAffineAnim_DoNothing, + sSpriteAffineAnim_CrushGripHandEnemyAttack, }; const struct SpriteTemplate gCrushGripHandTemplate = { diff --git a/src/battle_anim_status_effects.c b/src/battle_anim_status_effects.c index 7e7ded7676..f746f186aa 100644 --- a/src/battle_anim_status_effects.c +++ b/src/battle_anim_status_effects.c @@ -398,28 +398,28 @@ void AnimTask_FrozenIceCubeAttacker(u8 taskId) void AnimTask_CentredFrozenIceCube(u8 taskId) { // same as AnimTask_FrozenIceCube but center position on target(s) - s16 x, y; - u8 spriteId; - u8 battler1 = gBattleAnimTarget; - u8 battler2 = BATTLE_PARTNER(battler1); + s16 x, y; + u8 spriteId; + u8 battler1 = gBattleAnimTarget; + u8 battler2 = BATTLE_PARTNER(battler1); - if (!IsDoubleBattle() || IsAlly(gBattleAnimAttacker, gBattleAnimTarget)) - { - x = GetBattlerSpriteCoord(battler1, BATTLER_COORD_X_2); - y = GetBattlerSpriteCoord(battler1, BATTLER_COORD_Y_PIC_OFFSET); - } - else - { - x = (GetBattlerSpriteCoord(battler1, BATTLER_COORD_X_2) + GetBattlerSpriteCoord(battler2, BATTLER_COORD_X_2)) / 2; - y = (GetBattlerSpriteCoord(battler1, BATTLER_COORD_Y_PIC_OFFSET) + GetBattlerSpriteCoord(battler2, BATTLER_COORD_Y_PIC_OFFSET)) / 2; - } + if (!IsDoubleBattle() || IsAlly(gBattleAnimAttacker, gBattleAnimTarget)) + { + x = GetBattlerSpriteCoord(battler1, BATTLER_COORD_X_2); + y = GetBattlerSpriteCoord(battler1, BATTLER_COORD_Y_PIC_OFFSET); + } + else + { + x = (GetBattlerSpriteCoord(battler1, BATTLER_COORD_X_2) + GetBattlerSpriteCoord(battler2, BATTLER_COORD_X_2)) / 2; + y = (GetBattlerSpriteCoord(battler1, BATTLER_COORD_Y_PIC_OFFSET) + GetBattlerSpriteCoord(battler2, BATTLER_COORD_Y_PIC_OFFSET)) / 2; + } - x -= 32; - y -= 36; + x -= 32; + y -= 36; - spriteId = CreateSprite(&sFrozenIceCubeSpriteTemplate, x, y, 4); - if (GetSpriteTileStartByTag(ANIM_TAG_ICE_CUBE) == 0xFFFF) - gSprites[spriteId].invisible = TRUE; + spriteId = CreateSprite(&sFrozenIceCubeSpriteTemplate, x, y, 4); + if (GetSpriteTileStartByTag(ANIM_TAG_ICE_CUBE) == 0xFFFF) + gSprites[spriteId].invisible = TRUE; SetSubspriteTables(&gSprites[spriteId], sFrozenIceCubeSubspriteTable); gTasks[taskId].data[15] = spriteId; diff --git a/src/battle_anim_water.c b/src/battle_anim_water.c index 159b27dec9..65f8178d13 100644 --- a/src/battle_anim_water.c +++ b/src/battle_anim_water.c @@ -585,14 +585,14 @@ const struct SpriteTemplate gAquaTailHitSpriteTemplate = }; static const union AnimCmd sAnimCmdAnimatedSpark2[] = { - ANIMCMD_FRAME((8 * 8) / (16 * 16) * 0, 8), - ANIMCMD_FRAME((8 * 8) / (16 * 16) * 1, 8), - ANIMCMD_FRAME((8 * 8) / (16 * 16) * 2, 8), - ANIMCMD_JUMP(0) + ANIMCMD_FRAME((8 * 8) / (16 * 16) * 0, 8), + ANIMCMD_FRAME((8 * 8) / (16 * 16) * 1, 8), + ANIMCMD_FRAME((8 * 8) / (16 * 16) * 2, 8), + ANIMCMD_JUMP(0) }; static const union AnimCmd *const sAnimCmdTable_AnimatedSpark2[] = { - sAnimCmdAnimatedSpark2, + sAnimCmdAnimatedSpark2, }; const struct SpriteTemplate gSparkBeamSpriteTemplate = diff --git a/src/battle_controllers.c b/src/battle_controllers.c index d6b2fbdc3a..929aa2a59d 100644 --- a/src/battle_controllers.c +++ b/src/battle_controllers.c @@ -75,7 +75,7 @@ void SetUpBattleVarsAndBirchZigzagoon(void) gBattleControllerExecFlags = 0; ClearBattleAnimationVars(); BattleAI_SetupItems(); - BattleAI_SetupFlags(); + BattleAI_SetupFlags(); if (gBattleTypeFlags & BATTLE_TYPE_FIRST_BATTLE) { @@ -611,7 +611,7 @@ bool32 IsValidForBattle(struct Pokemon *mon) { u32 species = GetMonData(mon, MON_DATA_SPECIES_OR_EGG); return (species != SPECIES_NONE - && species != SPECIES_EGG + && species != SPECIES_EGG && GetMonData(mon, MON_DATA_HP) != 0 && GetMonData(mon, MON_DATA_IS_EGG) == FALSE); } diff --git a/src/battle_util.c b/src/battle_util.c index b1d3eec450..b7c61862fc 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -2954,7 +2954,7 @@ u8 DoBattlerEndTurnEffects(void) && --gBattleStruct->dynamax.dynamaxTurns[battler] == 0) { gBattleScripting.battler = battler; - UndoDynamax(battler); + UndoDynamax(battler); BattleScriptExecute(BattleScript_DynamaxEnds); effect++; } diff --git a/src/data/field_effects/field_effect_objects.h b/src/data/field_effects/field_effect_objects.h index 3b9dafd2cb..1a169007c5 100755 --- a/src/data/field_effects/field_effect_objects.h +++ b/src/data/field_effects/field_effect_objects.h @@ -432,33 +432,33 @@ const struct SpriteTemplate gFieldEffectObjectTemplate_DeepSandFootprints = { }; static const struct SpriteFrameImage sPicTable_BugTracks[] = { - overworld_frame(gFieldEffectObjectPic_BugTracks, 2, 2, 0), - overworld_frame(gFieldEffectObjectPic_BugTracks, 2, 2, 1), + overworld_frame(gFieldEffectObjectPic_BugTracks, 2, 2, 0), + overworld_frame(gFieldEffectObjectPic_BugTracks, 2, 2, 1), }; static const struct SpriteFrameImage sPicTable_SpotTracks[] = { - overworld_frame(gFieldEffectObjectPic_SpotTracks, 2, 2, 0), - overworld_frame(gFieldEffectObjectPic_SpotTracks, 2, 2, 1), + overworld_frame(gFieldEffectObjectPic_SpotTracks, 2, 2, 0), + overworld_frame(gFieldEffectObjectPic_SpotTracks, 2, 2, 1), }; const struct SpriteTemplate gFieldEffectObjectTemplate_BugTracks = { - .tileTag = 0xFFFF, - .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, - .oam = &gObjectEventBaseOam_16x16, - .anims = sAnimTable_DeepSandFootprints, - .images = sPicTable_BugTracks, - .affineAnims = gDummySpriteAffineAnimTable, - .callback = UpdateFootprintsTireTracksFieldEffect, + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, + .oam = &gObjectEventBaseOam_16x16, + .anims = sAnimTable_DeepSandFootprints, + .images = sPicTable_BugTracks, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateFootprintsTireTracksFieldEffect, }; const struct SpriteTemplate gFieldEffectObjectTemplate_SpotTracks = { - .tileTag = 0xFFFF, - .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, - .oam = &gObjectEventBaseOam_16x16, - .anims = sAnimTable_DeepSandFootprints, - .images = sPicTable_SpotTracks, - .affineAnims = gDummySpriteAffineAnimTable, - .callback = UpdateFootprintsTireTracksFieldEffect, + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, + .oam = &gObjectEventBaseOam_16x16, + .anims = sAnimTable_DeepSandFootprints, + .images = sPicTable_SpotTracks, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateFootprintsTireTracksFieldEffect, }; static const struct SpriteFrameImage sPicTable_BikeTireTracks[] = { @@ -470,10 +470,10 @@ static const struct SpriteFrameImage sPicTable_BikeTireTracks[] = { static const struct SpriteFrameImage sPicTable_SlitherTracks[] = { - overworld_frame(gFieldEffectObjectPic_SlitherTracks, 2, 2, 0), - overworld_frame(gFieldEffectObjectPic_SlitherTracks, 2, 2, 1), - overworld_frame(gFieldEffectObjectPic_SlitherTracks, 2, 2, 2), - overworld_frame(gFieldEffectObjectPic_SlitherTracks, 2, 2, 3), + overworld_frame(gFieldEffectObjectPic_SlitherTracks, 2, 2, 0), + overworld_frame(gFieldEffectObjectPic_SlitherTracks, 2, 2, 1), + overworld_frame(gFieldEffectObjectPic_SlitherTracks, 2, 2, 2), + overworld_frame(gFieldEffectObjectPic_SlitherTracks, 2, 2, 3), }; static const union AnimCmd sBikeTireTracksAnim_South[] = @@ -549,13 +549,13 @@ const struct SpriteTemplate gFieldEffectObjectTemplate_BikeTireTracks = { const struct SpriteTemplate gFieldEffectObjectTemplate_SlitherTracks = { - .tileTag = 0xFFFF, - .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, - .oam = &gObjectEventBaseOam_16x16, - .anims = sAnimTable_BikeTireTracks, - .images = sPicTable_SlitherTracks, - .affineAnims = gDummySpriteAffineAnimTable, - .callback = UpdateFootprintsTireTracksFieldEffect, + .tileTag = 0xFFFF, + .paletteTag = FLDEFF_PAL_TAG_GENERAL_0, + .oam = &gObjectEventBaseOam_16x16, + .anims = sAnimTable_BikeTireTracks, + .images = sPicTable_SlitherTracks, + .affineAnims = gDummySpriteAffineAnimTable, + .callback = UpdateFootprintsTireTracksFieldEffect, }; static const struct SpriteFrameImage sPicTable_JumpBigSplash[] = { diff --git a/src/data/pokemon/level_up_learnsets/gen_3.h b/src/data/pokemon/level_up_learnsets/gen_3.h index 35af1dfbe6..99b8cc397f 100644 --- a/src/data/pokemon/level_up_learnsets/gen_3.h +++ b/src/data/pokemon/level_up_learnsets/gen_3.h @@ -3620,7 +3620,7 @@ static const struct LevelUpMove sMoltresGalarianLevelUpLearnset[] = { LEVEL_UP_MOVE(60, MOVE_ENDURE), LEVEL_UP_MOVE(65, MOVE_MEMENTO), LEVEL_UP_MOVE(70, MOVE_SKY_ATTACK), - LEVEL_UP_END + LEVEL_UP_END }; #endif //P_GALARIAN_FORMS #endif //P_FAMILY_MOLTRES diff --git a/src/data/pokemon/pokedex_orders.h b/src/data/pokemon/pokedex_orders.h index f7bd77cf12..21968dd6ea 100644 --- a/src/data/pokemon/pokedex_orders.h +++ b/src/data/pokemon/pokedex_orders.h @@ -1604,7 +1604,7 @@ const u16 gPokedexOrder_Weight[] = NATIONAL_DEX_MORGREM, // 28.7 lbs / 13.0 kg NATIONAL_DEX_IVYSAUR, - //NATIONAL_DEX_VOLTORB_HISUIAN, + //NATIONAL_DEX_VOLTORB_HISUIAN, //NATIONAL_DEX_BANETTE_MEGA, NATIONAL_DEX_MIME_JR, NATIONAL_DEX_LAMPENT, diff --git a/src/data/tilesets/graphics.h b/src/data/tilesets/graphics.h index 2fdc28d213..a4cec62cf5 100644 --- a/src/data/tilesets/graphics.h +++ b/src/data/tilesets/graphics.h @@ -2,528 +2,528 @@ const u32 gTilesetTiles_Petalburg[] = INCBIN_U32("data/tilesets/secondary/petalb const u16 gTilesetPalettes_Petalburg[][16] = { - INCBIN_U16("data/tilesets/secondary/petalburg/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg/palettes/15.gbapal"), }; const u32 gTilesetTiles_Rustboro[] = INCBIN_U32("data/tilesets/secondary/rustboro/tiles.4bpp.lz"); const u16 gTilesetPalettes_Rustboro[][16] = { - INCBIN_U16("data/tilesets/secondary/rustboro/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro/palettes/15.gbapal"), }; const u32 gTilesetTiles_Dewford[] = INCBIN_U32("data/tilesets/secondary/dewford/tiles.4bpp.lz"); const u16 gTilesetPalettes_Dewford[][16] = { - INCBIN_U16("data/tilesets/secondary/dewford/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford/palettes/15.gbapal"), }; const u32 gTilesetTiles_Slateport[] = INCBIN_U32("data/tilesets/secondary/slateport/tiles.4bpp.lz"); const u16 gTilesetPalettes_Slateport[][16] = { - INCBIN_U16("data/tilesets/secondary/slateport/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/slateport/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/slateport/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/slateport/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/slateport/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/slateport/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/slateport/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/slateport/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/slateport/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/slateport/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/slateport/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/slateport/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/slateport/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/slateport/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/slateport/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/slateport/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/slateport/palettes/15.gbapal"), }; const u32 gTilesetTiles_Mauville[] = INCBIN_U32("data/tilesets/secondary/mauville/tiles.4bpp.lz"); const u16 gTilesetPalettes_Mauville[][16] = { - INCBIN_U16("data/tilesets/secondary/mauville/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville/palettes/15.gbapal"), }; const u32 gTilesetTiles_Lavaridge[] = INCBIN_U32("data/tilesets/secondary/lavaridge/tiles.4bpp.lz"); const u16 gTilesetPalettes_Lavaridge[][16] = { - INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge/palettes/15.gbapal"), }; const u32 gTilesetTiles_Fallarbor[] = INCBIN_U32("data/tilesets/secondary/fallarbor/tiles.4bpp.lz"); const u16 gTilesetPalettes_Fallarbor[][16] = { - INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/fallarbor/palettes/15.gbapal"), }; const u32 gTilesetTiles_Fortree[] = INCBIN_U32("data/tilesets/secondary/fortree/tiles.4bpp.lz"); const u16 gTilesetPalettes_Fortree[][16] = { - INCBIN_U16("data/tilesets/secondary/fortree/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree/palettes/15.gbapal"), }; const u32 gTilesetTiles_Lilycove[] = INCBIN_U32("data/tilesets/secondary/lilycove/tiles.4bpp.lz"); const u16 gTilesetPalettes_Lilycove[][16] = { - INCBIN_U16("data/tilesets/secondary/lilycove/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove/palettes/15.gbapal"), }; const u32 gTilesetTiles_Mossdeep[] = INCBIN_U32("data/tilesets/secondary/mossdeep/tiles.4bpp.lz"); const u16 gTilesetPalettes_Mossdeep[][16] = { - INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep/palettes/15.gbapal"), }; const u32 gTilesetTiles_EverGrande[] = INCBIN_U32("data/tilesets/secondary/ever_grande/tiles.4bpp.lz"); const u16 gTilesetPalettes_EverGrande[][16] = { - INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/ever_grande/palettes/15.gbapal"), }; const u32 gTilesetTiles_Pacifidlog[] = INCBIN_U32("data/tilesets/secondary/pacifidlog/tiles.4bpp.lz"); const u16 gTilesetPalettes_Pacifidlog[][16] = { - INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/pacifidlog/palettes/15.gbapal"), }; const u32 gTilesetTiles_Sootopolis[] = INCBIN_U32("data/tilesets/secondary/sootopolis/tiles.4bpp.lz"); const u16 gTilesetPalettes_Sootopolis[][16] = { - INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis/palettes/15.gbapal"), }; const u32 gTilesetTiles_BattleFrontierOutsideWest[] = INCBIN_U32("data/tilesets/secondary/battle_frontier_outside_west/tiles.4bpp.lz"); const u16 gTilesetPalettes_BattleFrontierOutsideWest[][16] = { - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_west/palettes/15.gbapal"), }; const u32 gTilesetTiles_BattleFrontierOutsideEast[] = INCBIN_U32("data/tilesets/secondary/battle_frontier_outside_east/tiles.4bpp.lz"); const u16 gTilesetPalettes_BattleFrontierOutsideEast[][16] = { - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_outside_east/palettes/15.gbapal"), }; const u32 gTilesetTiles_InsideBuilding[] = INCBIN_U32("data/tilesets/primary/building/tiles.4bpp.lz"); const u16 gTilesetPalettes_InsideBuilding[][16] = { - INCBIN_U16("data/tilesets/primary/building/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/primary/building/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/primary/building/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/primary/building/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/primary/building/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/primary/building/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/primary/building/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/primary/building/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/primary/building/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/primary/building/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/primary/building/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/primary/building/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/primary/building/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/primary/building/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/primary/building/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/primary/building/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/primary/building/palettes/15.gbapal"), }; const u32 gTilesetTiles_Shop[] = INCBIN_U32("data/tilesets/secondary/shop/tiles.4bpp.lz"); const u16 gTilesetPalettes_Shop[][16] = { - INCBIN_U16("data/tilesets/secondary/shop/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/shop/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/shop/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/shop/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/shop/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/shop/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/shop/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/shop/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/shop/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/shop/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/shop/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/shop/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/shop/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/shop/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/shop/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/shop/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/shop/palettes/15.gbapal"), }; const u32 gTilesetTiles_PokemonCenter[] = INCBIN_U32("data/tilesets/secondary/pokemon_center/tiles.4bpp.lz"); const u16 gTilesetPalettes_PokemonCenter[][16] = { - INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_center/palettes/15.gbapal"), }; const u32 gTilesetTiles_Cave[] = INCBIN_U32("data/tilesets/secondary/cave/tiles.4bpp.lz"); const u16 gTilesetPalettes_Cave[][16] = { - INCBIN_U16("data/tilesets/secondary/cave/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/cave/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/cave/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/cave/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/cave/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/cave/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/cave/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/cave/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/cave/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/cave/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/cave/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/cave/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/cave/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/cave/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/cave/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/cave/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/cave/palettes/15.gbapal"), }; const u32 gTilesetTiles_PokemonSchool[] = INCBIN_U32("data/tilesets/secondary/pokemon_school/tiles.4bpp.lz"); const u16 gTilesetPalettes_PokemonSchool[][16] = { - INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_school/palettes/15.gbapal"), }; const u32 gTilesetTiles_PokemonFanClub[] = INCBIN_U32("data/tilesets/secondary/pokemon_fan_club/tiles.4bpp.lz"); const u16 gTilesetPalettes_PokemonFanClub[][16] = { - INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_fan_club/palettes/15.gbapal"), }; const u32 gTilesetTiles_Unused1[] = INCBIN_U32("data/tilesets/secondary/unused_1/tiles.4bpp.lz"); const u16 gTilesetPalettes_Unused1[][16] = { - INCBIN_U16("data/tilesets/secondary/unused_1/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_1/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_1/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_1/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_1/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_1/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_1/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_1/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_1/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_1/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_1/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_1/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_1/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_1/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_1/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_1/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_1/palettes/15.gbapal"), }; const u32 gTilesetTiles_MeteorFalls[] = INCBIN_U32("data/tilesets/secondary/meteor_falls/tiles.4bpp.lz"); const u16 gTilesetPalettes_MeteorFalls[][16] = { - INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/meteor_falls/palettes/15.gbapal"), }; const u32 gTilesetTiles_OceanicMuseum[] = INCBIN_U32("data/tilesets/secondary/oceanic_museum/tiles.4bpp.lz"); const u16 gTilesetPalettes_OceanicMuseum[][16] = { - INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/oceanic_museum/palettes/15.gbapal"), }; const u32 gTilesetTiles_CableClub[] = INCBIN_U32("data/tilesets/secondary/cable_club/tiles.4bpp"); @@ -531,286 +531,286 @@ const u32 gTilesetTiles_UnknownCableClub[] = INCBIN_U32("data/tilesets/secondary const u16 gTilesetPalettes_CableClub[][16] = { - INCBIN_U16("data/tilesets/secondary/cable_club/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/cable_club/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/cable_club/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/cable_club/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/cable_club/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/cable_club/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/cable_club/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/cable_club/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/cable_club/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/cable_club/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/cable_club/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/cable_club/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/cable_club/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/cable_club/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/cable_club/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/cable_club/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/cable_club/palettes/15.gbapal"), }; const u32 gTilesetTiles_SeashoreHouse[] = INCBIN_U32("data/tilesets/secondary/seashore_house/tiles.4bpp.lz"); const u16 gTilesetPalettes_SeashoreHouse[][16] = { - INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/seashore_house/palettes/15.gbapal"), }; const u32 gTilesetTiles_PrettyPetalFlowerShop[] = INCBIN_U32("data/tilesets/secondary/pretty_petal_flower_shop/tiles.4bpp.lz"); const u16 gTilesetPalettes_PrettyPetalFlowerShop[][16] = { - INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/pretty_petal_flower_shop/palettes/15.gbapal"), }; const u32 gTilesetTiles_PokemonDayCare[] = INCBIN_U32("data/tilesets/secondary/pokemon_day_care/tiles.4bpp.lz"); const u16 gTilesetPalettes_PokemonDayCare[][16] = { - INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/pokemon_day_care/palettes/15.gbapal"), }; const u32 gTilesetTiles_Facility[] = INCBIN_U32("data/tilesets/secondary/facility/tiles.4bpp.lz"); const u16 gTilesetPalettes_Facility[][16] = { - INCBIN_U16("data/tilesets/secondary/facility/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/facility/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/facility/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/facility/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/facility/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/facility/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/facility/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/facility/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/facility/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/facility/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/facility/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/facility/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/facility/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/facility/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/facility/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/facility/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/facility/palettes/15.gbapal"), }; const u32 gTilesetTiles_BikeShop[] = INCBIN_U32("data/tilesets/secondary/bike_shop/tiles.4bpp.lz"); const u16 gTilesetPalettes_BikeShop[][16] = { - INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/bike_shop/palettes/15.gbapal"), }; const u32 gTilesetTiles_RusturfTunnel[] = INCBIN_U32("data/tilesets/secondary/rusturf_tunnel/tiles.4bpp.lz"); const u16 gTilesetPalettes_RusturfTunnel[][16] = { - INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/rusturf_tunnel/palettes/15.gbapal"), }; const u32 gTilesetTiles_SecretBaseBrownCaveCompressed[] = INCBIN_U32("data/tilesets/secondary/secret_base/brown_cave/unused_tiles.4bpp.lz"); const u16 gTilesetPalettes_SecretBaseBrownCave[][16] = { - INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/brown_cave/palettes/15.gbapal"), }; const u32 gTilesetTiles_SecretBaseTreeCompressed[] = INCBIN_U32("data/tilesets/secondary/secret_base/tree/unused_tiles.4bpp.lz"); const u16 gTilesetPalettes_SecretBaseTree[][16] = { - INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/tree/palettes/15.gbapal"), }; const u32 gTilesetTiles_SecretBaseShrubCompressed[] = INCBIN_U32("data/tilesets/secondary/secret_base/shrub/unused_tiles.4bpp.lz"); const u16 gTilesetPalettes_SecretBaseShrub[][16] = { - INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/shrub/palettes/15.gbapal"), }; const u32 gTilesetTiles_SecretBaseBlueCaveCompressed[] = INCBIN_U32("data/tilesets/secondary/secret_base/blue_cave/unused_tiles.4bpp.lz"); const u16 gTilesetPalettes_SecretBaseBlueCave[][16] = { - INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/blue_cave/palettes/15.gbapal"), }; const u32 gTilesetTiles_SecretBaseYellowCaveCompressed[] = INCBIN_U32("data/tilesets/secondary/secret_base/yellow_cave/unused_tiles.4bpp.lz"); const u16 gTilesetPalettes_SecretBaseYellowCave[][16] = { - INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/yellow_cave/palettes/15.gbapal"), }; const u32 gTilesetTiles_SecretBaseRedCaveCompressed[] = INCBIN_U32("data/tilesets/secondary/secret_base/red_cave/unused_tiles.4bpp.lz"); const u16 gTilesetPalettes_SecretBaseRedCave[][16] = { - INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/secret_base/red_cave/palettes/15.gbapal"), }; const u32 gTilesetTiles_SecretBaseBrownCave[] = INCBIN_U32("data/tilesets/secondary/secret_base/brown_cave/tiles.4bpp"); @@ -824,418 +824,418 @@ const u32 gTilesetTiles_InsideOfTruck[] = INCBIN_U32("data/tilesets/secondary/in const u16 gTilesetPalettes_InsideOfTruck[][16] = { - INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_of_truck/palettes/15.gbapal"), }; const u32 gTilesetTiles_Contest[] = INCBIN_U32("data/tilesets/secondary/contest/tiles.4bpp.lz"); const u16 gTilesetPalettes_Contest[][16] = { - INCBIN_U16("data/tilesets/secondary/contest/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/contest/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/contest/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/contest/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/contest/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/contest/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/contest/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/contest/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/contest/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/contest/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/contest/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/contest/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/contest/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/contest/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/contest/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/contest/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/contest/palettes/15.gbapal"), }; const u32 gTilesetTiles_LilycoveMuseum[] = INCBIN_U32("data/tilesets/secondary/lilycove_museum/tiles.4bpp.lz"); const u16 gTilesetPalettes_LilycoveMuseum[][16] = { - INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/lilycove_museum/palettes/15.gbapal"), }; const u32 gTilesetTiles_BrendansMaysHouse[] = INCBIN_U32("data/tilesets/secondary/brendans_mays_house/tiles.4bpp.lz"); const u16 gTilesetPalettes_BrendansMaysHouse[][16] = { - INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/brendans_mays_house/palettes/15.gbapal"), }; const u32 gTilesetTiles_Lab[] = INCBIN_U32("data/tilesets/secondary/lab/tiles.4bpp.lz"); const u16 gTilesetPalettes_Lab[][16] = { - INCBIN_U16("data/tilesets/secondary/lab/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/lab/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/lab/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/lab/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/lab/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/lab/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/lab/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/lab/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/lab/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/lab/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/lab/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/lab/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/lab/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/lab/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/lab/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/lab/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/lab/palettes/15.gbapal"), }; const u32 gTilesetTiles_Underwater[] = INCBIN_U32("data/tilesets/secondary/underwater/tiles.4bpp.lz"); const u16 gTilesetPalettes_Underwater[][16] = { - INCBIN_U16("data/tilesets/secondary/underwater/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/underwater/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/underwater/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/underwater/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/underwater/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/underwater/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/underwater/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/underwater/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/underwater/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/underwater/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/underwater/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/underwater/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/underwater/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/underwater/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/underwater/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/underwater/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/underwater/palettes/15.gbapal"), }; const u32 gTilesetTiles_GenericBuilding[] = INCBIN_U32("data/tilesets/secondary/generic_building/tiles.4bpp.lz"); const u16 gTilesetPalettes_GenericBuilding[][16] = { - INCBIN_U16("data/tilesets/secondary/generic_building/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/generic_building/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/generic_building/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/generic_building/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/generic_building/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/generic_building/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/generic_building/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/generic_building/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/generic_building/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/generic_building/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/generic_building/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/generic_building/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/generic_building/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/generic_building/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/generic_building/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/generic_building/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/generic_building/palettes/15.gbapal"), }; const u32 gTilesetTiles_MauvilleGameCorner[] = INCBIN_U32("data/tilesets/secondary/mauville_game_corner/tiles.4bpp.lz"); const u16 gTilesetPalettes_MauvilleGameCorner[][16] = { - INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_game_corner/palettes/15.gbapal"), }; const u32 gTilesetTiles_Unused2[] = INCBIN_U32("data/tilesets/secondary/unused_2/tiles.4bpp.lz"); const u16 gTilesetPalettes_Unused2[][16] = { - INCBIN_U16("data/tilesets/secondary/unused_2/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_2/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_2/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_2/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_2/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_2/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_2/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_2/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_2/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_2/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_2/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_2/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_2/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_2/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_2/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/unused_2/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/unused_2/palettes/15.gbapal"), }; const u32 gTilesetTiles_RustboroGym[] = INCBIN_U32("data/tilesets/secondary/rustboro_gym/tiles.4bpp.lz"); const u16 gTilesetPalettes_RustboroGym[][16] = { - INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/rustboro_gym/palettes/15.gbapal"), }; const u32 gTilesetTiles_DewfordGym[] = INCBIN_U32("data/tilesets/secondary/dewford_gym/tiles.4bpp.lz"); const u16 gTilesetPalettes_DewfordGym[][16] = { - INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/dewford_gym/palettes/15.gbapal"), }; const u32 gTilesetTiles_MauvilleGym[] = INCBIN_U32("data/tilesets/secondary/mauville_gym/tiles.4bpp.lz"); const u16 gTilesetPalettes_MauvilleGym[][16] = { - INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/mauville_gym/palettes/15.gbapal"), }; const u32 gTilesetTiles_LavaridgeGym[] = INCBIN_U32("data/tilesets/secondary/lavaridge_gym/tiles.4bpp.lz"); const u16 gTilesetPalettes_LavaridgeGym[][16] = { - INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/lavaridge_gym/palettes/15.gbapal"), }; const u32 gTilesetTiles_PetalburgGym[] = INCBIN_U32("data/tilesets/secondary/petalburg_gym/tiles.4bpp.lz"); const u16 gTilesetPalettes_PetalburgGym[][16] = { - INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/petalburg_gym/palettes/15.gbapal"), }; const u32 gTilesetTiles_FortreeGym[] = INCBIN_U32("data/tilesets/secondary/fortree_gym/tiles.4bpp.lz"); const u16 gTilesetPalettes_FortreeGym[][16] = { - INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/fortree_gym/palettes/15.gbapal"), }; const u32 gTilesetTiles_MossdeepGym[] = INCBIN_U32("data/tilesets/secondary/mossdeep_gym/tiles.4bpp.lz"); const u16 gTilesetPalettes_MossdeepGym[][16] = { - INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_gym/palettes/15.gbapal"), }; const u32 gTilesetTiles_SootopolisGym[] = INCBIN_U32("data/tilesets/secondary/sootopolis_gym/tiles.4bpp.lz"); const u16 gTilesetPalettes_SootopolisGym[][16] = { - INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/sootopolis_gym/palettes/15.gbapal"), }; const u32 gTilesetTiles_TrickHousePuzzle[] = INCBIN_U32("data/tilesets/secondary/trick_house_puzzle/tiles.4bpp.lz"); const u16 gTilesetPalettes_TrickHousePuzzle[][16] = { - INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/trick_house_puzzle/palettes/15.gbapal"), }; const u32 gTilesetTiles_InsideShip[] = INCBIN_U32("data/tilesets/secondary/inside_ship/tiles.4bpp.lz"); const u16 gTilesetPalettes_InsideShip[][16] = { - INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/inside_ship/palettes/15.gbapal"), }; const u32 gTilesetTiles_SecretBase[] = INCBIN_U32("data/tilesets/primary/secret_base/tiles.4bpp"); @@ -1243,394 +1243,394 @@ const u32 gTilesetTiles_UnknownSecretBase[] = INCBIN_U32("data/tilesets/primary/ const u16 gTilesetPalettes_SecretBase[][16] = { - INCBIN_U16("data/tilesets/primary/secret_base/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/primary/secret_base/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/primary/secret_base/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/primary/secret_base/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/primary/secret_base/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/primary/secret_base/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/primary/secret_base/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/primary/secret_base/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/primary/secret_base/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/primary/secret_base/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/primary/secret_base/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/primary/secret_base/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/primary/secret_base/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/primary/secret_base/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/primary/secret_base/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/primary/secret_base/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/primary/secret_base/palettes/15.gbapal"), }; const u32 gTilesetTiles_EliteFour[] = INCBIN_U32("data/tilesets/secondary/elite_four/tiles.4bpp.lz"); const u16 gTilesetPalettes_EliteFour[][16] = { - INCBIN_U16("data/tilesets/secondary/elite_four/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/elite_four/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/elite_four/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/elite_four/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/elite_four/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/elite_four/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/elite_four/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/elite_four/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/elite_four/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/elite_four/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/elite_four/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/elite_four/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/elite_four/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/elite_four/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/elite_four/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/elite_four/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/elite_four/palettes/15.gbapal"), }; const u32 gTilesetTiles_BattleFrontier[] = INCBIN_U32("data/tilesets/secondary/battle_frontier/tiles.4bpp.lz"); const u16 gTilesetPalettes_BattleFrontier[][16] = { - INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier/palettes/15.gbapal"), }; const u32 gTilesetTiles_BattlePalace[] = INCBIN_U32("data/tilesets/secondary/battle_palace/tiles.4bpp.lz"); const u16 gTilesetPalettes_BattlePalace[][16] = { - INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_palace/palettes/15.gbapal"), }; const u32 gTilesetTiles_BattleDome[] = INCBIN_U32("data/tilesets/secondary/battle_dome/tiles.4bpp.lz"); const u16 gTilesetPalettes_BattleDome[][16] = { - INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_dome/palettes/15.gbapal"), }; const u32 gTilesetTiles_BattleFactory[] = INCBIN_U32("data/tilesets/secondary/battle_factory/tiles.4bpp.lz"); const u16 gTilesetPalettes_BattleFactory[][16] = { - INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_factory/palettes/15.gbapal"), }; const u32 gTilesetTiles_BattlePike[] = INCBIN_U32("data/tilesets/secondary/battle_pike/tiles.4bpp.lz"); const u16 gTilesetPalettes_BattlePike[][16] = { - INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pike/palettes/15.gbapal"), }; const u32 gTilesetTiles_BattleArena[] = INCBIN_U32("data/tilesets/secondary/battle_arena/tiles.4bpp.lz"); const u16 gTilesetPalettes_BattleArena[][16] = { - INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_arena/palettes/15.gbapal"), }; const u32 gTilesetTiles_BattlePyramid[] = INCBIN_U32("data/tilesets/secondary/battle_pyramid/tiles.4bpp.lz"); const u16 gTilesetPalettes_BattlePyramid[][16] = { - INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_pyramid/palettes/15.gbapal"), }; const u32 gTilesetTiles_MirageTower[] = INCBIN_U32("data/tilesets/secondary/mirage_tower/tiles.4bpp.lz"); const u16 gTilesetPalettes_MirageTower[][16] = { - INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/mirage_tower/palettes/15.gbapal"), }; const u32 gTilesetTiles_MossdeepGameCorner[] = INCBIN_U32("data/tilesets/secondary/mossdeep_game_corner/tiles.4bpp.lz"); const u16 gTilesetPalettes_MossdeepGameCorner[][16] = { - INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/mossdeep_game_corner/palettes/15.gbapal"), }; const u32 gTilesetTiles_IslandHarbor[] = INCBIN_U32("data/tilesets/secondary/island_harbor/tiles.4bpp.lz"); const u16 gTilesetPalettes_IslandHarbor[][16] = { - INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/island_harbor/palettes/15.gbapal"), }; const u32 gTilesetTiles_TrainerHill[] = INCBIN_U32("data/tilesets/secondary/trainer_hill/tiles.4bpp.lz"); const u16 gTilesetPalettes_TrainerHill[][16] = { - INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/trainer_hill/palettes/15.gbapal"), }; const u32 gTilesetTiles_NavelRock[] = INCBIN_U32("data/tilesets/secondary/navel_rock/tiles.4bpp.lz"); const u16 gTilesetPalettes_NavelRock[][16] = { - INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/navel_rock/palettes/15.gbapal"), }; const u32 gTilesetTiles_BattleFrontierRankingHall[] = INCBIN_U32("data/tilesets/secondary/battle_frontier_ranking_hall/tiles.4bpp.lz"); const u16 gTilesetPalettes_BattleFrontierRankingHall[][16] = { - INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_frontier_ranking_hall/palettes/15.gbapal"), }; const u32 gTilesetTiles_BattleTent[] = INCBIN_U32("data/tilesets/secondary/battle_tent/tiles.4bpp.lz"); const u16 gTilesetPalettes_BattleTent[][16] = { - INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/battle_tent/palettes/15.gbapal"), }; const u32 gTilesetTiles_MysteryEventsHouse[] = INCBIN_U32("data/tilesets/secondary/mystery_events_house/tiles.4bpp.lz"); const u16 gTilesetPalettes_MysteryEventsHouse[][16] = { - INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/mystery_events_house/palettes/15.gbapal"), }; const u16 gTilesetPalettes_UnionRoom[][16] = { - INCBIN_U16("data/tilesets/secondary/union_room/palettes/00.gbapal"), - INCBIN_U16("data/tilesets/secondary/union_room/palettes/01.gbapal"), - INCBIN_U16("data/tilesets/secondary/union_room/palettes/02.gbapal"), - INCBIN_U16("data/tilesets/secondary/union_room/palettes/03.gbapal"), - INCBIN_U16("data/tilesets/secondary/union_room/palettes/04.gbapal"), - INCBIN_U16("data/tilesets/secondary/union_room/palettes/05.gbapal"), - INCBIN_U16("data/tilesets/secondary/union_room/palettes/06.gbapal"), - INCBIN_U16("data/tilesets/secondary/union_room/palettes/07.gbapal"), - INCBIN_U16("data/tilesets/secondary/union_room/palettes/08.gbapal"), - INCBIN_U16("data/tilesets/secondary/union_room/palettes/09.gbapal"), - INCBIN_U16("data/tilesets/secondary/union_room/palettes/10.gbapal"), - INCBIN_U16("data/tilesets/secondary/union_room/palettes/11.gbapal"), - INCBIN_U16("data/tilesets/secondary/union_room/palettes/12.gbapal"), - INCBIN_U16("data/tilesets/secondary/union_room/palettes/13.gbapal"), - INCBIN_U16("data/tilesets/secondary/union_room/palettes/14.gbapal"), - INCBIN_U16("data/tilesets/secondary/union_room/palettes/15.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/00.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/01.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/02.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/03.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/04.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/05.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/06.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/07.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/08.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/09.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/10.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/11.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/12.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/13.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/14.gbapal"), + INCBIN_U16("data/tilesets/secondary/union_room/palettes/15.gbapal"), }; const u32 gTilesetTiles_UnionRoom[] = INCBIN_U32("data/tilesets/secondary/union_room/tiles.4bpp.lz"); diff --git a/src/debug.c b/src/debug.c index f4b6f68840..a2bf55d95a 100644 --- a/src/debug.c +++ b/src/debug.c @@ -649,7 +649,7 @@ static const u8 sDebugText_Give_BattlePoints[] = _("Max Battle Points"); static const u8 sDebugText_Give_DaycareEgg[] = _("Daycare Egg"); // Sound Menu static const u8 sDebugText_Sound_SFX[] = _("SFX…{CLEAR_TO 110}{RIGHT_ARROW}"); -static const u8 sDebugText_Sound_SFX_ID[] = _("SFX ID: {STR_VAR_3} {START_BUTTON} Stop\n{STR_VAR_1} \n{STR_VAR_2}"); +static const u8 sDebugText_Sound_SFX_ID[] = _("SFX ID: {STR_VAR_3} {START_BUTTON} Stop\n{STR_VAR_1} \n{STR_VAR_2}"); static const u8 sDebugText_Sound_Music[] = _("Music…{CLEAR_TO 110}{RIGHT_ARROW}"); static const u8 sDebugText_Sound_Music_ID[] = _("Music ID: {STR_VAR_3} {START_BUTTON} Stop\n{STR_VAR_1} \n{STR_VAR_2}"); // Berry Function Menu diff --git a/src/event_object_movement.c b/src/event_object_movement.c index 1edc986c9b..d82504a32f 100644 --- a/src/event_object_movement.c +++ b/src/event_object_movement.c @@ -9496,30 +9496,30 @@ static void DoTracksGroundEffect_BikeTireTracks(struct ObjectEvent *objEvent, st static void DoTracksGroundEffect_SlitherTracks(struct ObjectEvent *objEvent, struct Sprite *sprite, u8 a) { - // Specifies which bike track shape to show next. - // For example, when the bike turns from up to right, it will show - // a track that curves to the right. - // Each 4-byte row corresponds to the initial direction of the bike, and - // each byte in that row is for the next direction of the bike in the order - // of down, up, left, right. - static const u8 slitherTracks_Transitions[4][4] = { - {1, 2, 7, 8}, - {1, 2, 6, 5}, - {5, 8, 3, 4}, - {6, 7, 3, 4}, - }; + // Specifies which bike track shape to show next. + // For example, when the bike turns from up to right, it will show + // a track that curves to the right. + // Each 4-byte row corresponds to the initial direction of the bike, and + // each byte in that row is for the next direction of the bike in the order + // of down, up, left, right. + static const u8 slitherTracks_Transitions[4][4] = { + {1, 2, 7, 8}, + {1, 2, 6, 5}, + {5, 8, 3, 4}, + {6, 7, 3, 4}, + }; - if (objEvent->currentCoords.x != objEvent->previousCoords.x || objEvent->currentCoords.y != objEvent->previousCoords.y) - { - gFieldEffectArguments[0] = objEvent->previousCoords.x; - gFieldEffectArguments[1] = objEvent->previousCoords.y; - gFieldEffectArguments[2] = 149; - gFieldEffectArguments[3] = 2; - gFieldEffectArguments[4] = - slitherTracks_Transitions[objEvent->previousMovementDirection][objEvent->facingDirection - 5]; + if (objEvent->currentCoords.x != objEvent->previousCoords.x || objEvent->currentCoords.y != objEvent->previousCoords.y) + { + gFieldEffectArguments[0] = objEvent->previousCoords.x; + gFieldEffectArguments[1] = objEvent->previousCoords.y; + gFieldEffectArguments[2] = 149; + gFieldEffectArguments[3] = 2; + gFieldEffectArguments[4] = + slitherTracks_Transitions[objEvent->previousMovementDirection][objEvent->facingDirection - 5]; gFieldEffectArguments[5] = objEvent->previousMetatileBehavior; - FieldEffectStart(FLDEFF_TRACKS_SLITHER); - } + FieldEffectStart(FLDEFF_TRACKS_SLITHER); + } } void GroundEffect_Ripple(struct ObjectEvent *objEvent, struct Sprite *sprite) diff --git a/src/mini_printf.c b/src/mini_printf.c index 7432395b79..2420efbd18 100644 --- a/src/mini_printf.c +++ b/src/mini_printf.c @@ -141,9 +141,9 @@ static s32 _putsEncoded(char *s, s32 len, void *buf) static s32 mini_strlen(const char *s) { - s32 len = 0; - while (s[len] != '\0') len++; - return len; + s32 len = 0; + while (s[len] != '\0') len++; + return len; } static s32 mini_itoa(s32 value, u32 radix, s32 uppercase, bool32 unsig, char *buffer) diff --git a/src/pokedex_plus_hgss.c b/src/pokedex_plus_hgss.c index fa5279441b..e3b7793bbd 100644 --- a/src/pokedex_plus_hgss.c +++ b/src/pokedex_plus_hgss.c @@ -3511,14 +3511,14 @@ static void SpriteCB_DexListStartMenuCursor(struct Sprite *sprite) //************************************ //Stat bars on main screen, code by DizzyEgg, idea by Jaizu -#define PIXEL_COORDS_TO_OFFSET(x, y)( \ -/*Add tiles by X*/ \ -((y / 8) * 32 * 8) \ -/*Add tiles by X*/ \ -+ ((x / 8) * 32) \ -/*Add pixels by Y*/ \ -+ ((((y) - ((y / 8) * 8))) * 4) \ -/*Add pixels by X*/ \ +#define PIXEL_COORDS_TO_OFFSET(x, y)( \ +/*Add tiles by X*/ \ +((y / 8) * 32 * 8) \ +/*Add tiles by X*/ \ ++ ((x / 8) * 32) \ +/*Add pixels by Y*/ \ ++ ((((y) - ((y / 8) * 8))) * 4) \ +/*Add pixels by X*/ \ + ((((x) - ((x / 8) * 8)) / 2))) static inline void WritePixel(u8 *dst, u32 x, u32 y, u32 value) From e9c8bd05487c3fabe332e4541d57ba7d15e6f54d Mon Sep 17 00:00:00 2001 From: Pawkkie <61265402+Pawkkie@users.noreply.github.com> Date: Mon, 26 Aug 2024 19:58:15 -0400 Subject: [PATCH 23/32] Revert "Chilly Reception AI" (#5270) --- src/battle_ai_main.c | 14 +------------- src/battle_ai_switch_items.c | 2 +- src/battle_ai_util.c | 3 +-- test/battle/ai/ai_flag_sequence_switching.c | 4 +--- 4 files changed, 4 insertions(+), 19 deletions(-) diff --git a/src/battle_ai_main.c b/src/battle_ai_main.c index a56e6ace3b..67e9b90a24 100644 --- a/src/battle_ai_main.c +++ b/src/battle_ai_main.c @@ -1739,14 +1739,6 @@ static s32 AI_CheckBadMove(u32 battlerAtk, u32 battlerDef, u32 move, s32 score) break; case EFFECT_HIT_ESCAPE: break; - case EFFECT_CHILLY_RECEPTION: - if (CountUsablePartyMons(battlerAtk) == 0) - ADJUST_SCORE(-10); - else if (weather & (B_WEATHER_SNOW | B_WEATHER_PRIMAL_ANY) || IsMoveEffectWeather(aiData->partnerMove)) - ADJUST_SCORE(-8); - else if (weather & B_WEATHER_HAIL) - ADJUST_SCORE(-2); // mainly to prevent looping between hail and snow - break; case EFFECT_BELLY_DRUM: case EFFECT_FILLET_AWAY: if (aiData->abilities[battlerAtk] == ABILITY_CONTRARY) @@ -2781,7 +2773,6 @@ static s32 AI_DoubleBattle(u32 battlerAtk, u32 battlerDef, u32 move, s32 score) case EFFECT_SNOWSCAPE: case EFFECT_RAIN_DANCE: case EFFECT_SANDSTORM: - case EFFECT_CHILLY_RECEPTION: if (IsMoveEffectWeather(move)) ADJUST_SCORE(-10); break; @@ -2861,7 +2852,6 @@ static s32 AI_DoubleBattle(u32 battlerAtk, u32 battlerDef, u32 move, s32 score) } break; case EFFECT_SNOWSCAPE: - case EFFECT_CHILLY_RECEPTION: if (IsBattlerAlive(battlerAtkPartner) && ShouldSetSnow(battlerAtkPartner, atkPartnerAbility, atkPartnerHoldEffect)) { @@ -2879,7 +2869,7 @@ static s32 AI_DoubleBattle(u32 battlerAtk, u32 battlerDef, u32 move, s32 score) switch (atkPartnerAbility) { case ABILITY_ANGER_POINT: - if (gMovesInfo[move].alwaysCriticalHit == TRUE + if (gMovesInfo[move].alwaysCriticalHit == TRUE && BattlerStatCanRise(battlerAtkPartner, atkPartnerAbility, STAT_ATK) && AI_IsFaster(battlerAtk, battlerAtkPartner, move) && !CanIndexMoveFaintTarget(battlerAtk, battlerAtkPartner, AI_THINKING_STRUCT->movesetIndex, 1)) @@ -3640,7 +3630,6 @@ static u32 AI_CalcMoveEffectScore(u32 battlerAtk, u32 battlerDef, u32 move) //fallthrough case EFFECT_HIT_ESCAPE: case EFFECT_PARTING_SHOT: - case EFFECT_CHILLY_RECEPTION: if (!IsDoubleBattle()) { switch (ShouldPivot(battlerAtk, battlerDef, aiData->abilities[battlerDef], move, movesetIndex)) @@ -4899,7 +4888,6 @@ static s32 AI_SetupFirstTurn(u32 battlerAtk, u32 battlerDef, u32 move, s32 score case EFFECT_SANDSTORM: case EFFECT_HAIL: case EFFECT_SNOWSCAPE: - case EFFECT_CHILLY_RECEPTION: case EFFECT_GEOMANCY: case EFFECT_VICTORY_DANCE: ADJUST_SCORE(DECENT_EFFECT); diff --git a/src/battle_ai_switch_items.c b/src/battle_ai_switch_items.c index 8c69b695c0..c19cbd05c5 100644 --- a/src/battle_ai_switch_items.c +++ b/src/battle_ai_switch_items.c @@ -2000,7 +2000,7 @@ static u32 GetBestMonIntegrated(struct Pokemon *party, int firstId, int lastId, } // If ace mon is the last available Pokemon and U-Turn/Volt Switch was used - switch to the mon. if (aceMonId != PARTY_SIZE - && (gMovesInfo[gLastUsedMove].effect == EFFECT_HIT_ESCAPE || gMovesInfo[gLastUsedMove].effect == EFFECT_PARTING_SHOT || gMovesInfo[gLastUsedMove].effect == EFFECT_BATON_PASS || gMovesInfo[gLastUsedMove].effect == EFFECT_CHILLY_RECEPTION)) + && (gMovesInfo[gLastUsedMove].effect == EFFECT_HIT_ESCAPE || gMovesInfo[gLastUsedMove].effect == EFFECT_PARTING_SHOT || gMovesInfo[gLastUsedMove].effect == EFFECT_BATON_PASS)) return aceMonId; return PARTY_SIZE; diff --git a/src/battle_ai_util.c b/src/battle_ai_util.c index ad22ed8fda..59a4d0c115 100644 --- a/src/battle_ai_util.c +++ b/src/battle_ai_util.c @@ -3263,8 +3263,7 @@ bool32 IsMoveEffectWeather(u32 move) || gMovesInfo[move].effect == EFFECT_RAIN_DANCE || gMovesInfo[move].effect == EFFECT_SANDSTORM || gMovesInfo[move].effect == EFFECT_HAIL - || gMovesInfo[move].effect == EFFECT_SNOWSCAPE - || gMovesInfo[move].effect == EFFECT_CHILLY_RECEPTION)) + || gMovesInfo[move].effect == EFFECT_SNOWSCAPE)) return TRUE; return FALSE; } diff --git a/test/battle/ai/ai_flag_sequence_switching.c b/test/battle/ai/ai_flag_sequence_switching.c index 7a0f3528bd..1b4a264a24 100644 --- a/test/battle/ai/ai_flag_sequence_switching.c +++ b/test/battle/ai/ai_flag_sequence_switching.c @@ -64,7 +64,7 @@ AI_SINGLE_BATTLE_TEST("AI_FLAG_SEQUENCE_SWITCHING: Roar and Dragon Tail still fo } } -AI_SINGLE_BATTLE_TEST("AI_FLAG_SEQUENCE_SWITCHING: AI will always switch into lowest party index after U-Turn, Parting Shot, Baton Pass, and Chilly Reception") +AI_SINGLE_BATTLE_TEST("AI_FLAG_SEQUENCE_SWITCHING: AI will always switch into lowest party index after U-Turn, Parting Shot, and Baton Pass") { u32 j, aiSequenceSwitchingFlag = 0, move = MOVE_NONE; @@ -72,7 +72,6 @@ AI_SINGLE_BATTLE_TEST("AI_FLAG_SEQUENCE_SWITCHING: AI will always switch into lo MOVE_U_TURN, MOVE_PARTING_SHOT, MOVE_BATON_PASS, - MOVE_CHILLY_RECEPTION, }; for (j = 0; j < ARRAY_COUNT(switchMoves); j++) @@ -85,7 +84,6 @@ AI_SINGLE_BATTLE_TEST("AI_FLAG_SEQUENCE_SWITCHING: AI will always switch into lo ASSUME(gMovesInfo[MOVE_U_TURN].effect == EFFECT_HIT_ESCAPE); ASSUME(gMovesInfo[MOVE_PARTING_SHOT].effect == EFFECT_PARTING_SHOT); ASSUME(gMovesInfo[MOVE_BATON_PASS].effect == EFFECT_BATON_PASS); - ASSUME(gMovesInfo[MOVE_CHILLY_RECEPTION].effect == EFFECT_CHILLY_RECEPTION); AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT | aiSequenceSwitchingFlag); PLAYER(SPECIES_SWELLOW) { Level (50); } OPPONENT(SPECIES_MACHOP) { Level(1); Moves(move); } From 74a790f09c60b29522dc4270339813447175a5bd Mon Sep 17 00:00:00 2001 From: kittenchilly Date: Mon, 26 Aug 2024 19:11:33 -0500 Subject: [PATCH 24/32] Chilly Reception AI --- src/battle_ai_main.c | 12 ++++++++++++ src/battle_ai_switch_items.c | 2 +- src/battle_ai_util.c | 3 ++- test/battle/ai/ai_flag_sequence_switching.c | 4 +++- 4 files changed, 18 insertions(+), 3 deletions(-) diff --git a/src/battle_ai_main.c b/src/battle_ai_main.c index df055d62ba..55b38f7ad7 100644 --- a/src/battle_ai_main.c +++ b/src/battle_ai_main.c @@ -1739,6 +1739,14 @@ static s32 AI_CheckBadMove(u32 battlerAtk, u32 battlerDef, u32 move, s32 score) break; case EFFECT_HIT_ESCAPE: break; + case EFFECT_CHILLY_RECEPTION: + if (CountUsablePartyMons(battlerAtk) == 0) + ADJUST_SCORE(-10); + else if (weather & (B_WEATHER_SNOW | B_WEATHER_PRIMAL_ANY) || IsMoveEffectWeather(aiData->partnerMove)) + ADJUST_SCORE(-8); + else if (weather & B_WEATHER_HAIL) + ADJUST_SCORE(-2); // mainly to prevent looping between hail and snow + break; case EFFECT_BELLY_DRUM: case EFFECT_FILLET_AWAY: if (aiData->abilities[battlerAtk] == ABILITY_CONTRARY) @@ -2773,6 +2781,7 @@ static s32 AI_DoubleBattle(u32 battlerAtk, u32 battlerDef, u32 move, s32 score) case EFFECT_SNOWSCAPE: case EFFECT_RAIN_DANCE: case EFFECT_SANDSTORM: + case EFFECT_CHILLY_RECEPTION: if (IsMoveEffectWeather(move)) ADJUST_SCORE(-10); break; @@ -2852,6 +2861,7 @@ static s32 AI_DoubleBattle(u32 battlerAtk, u32 battlerDef, u32 move, s32 score) } break; case EFFECT_SNOWSCAPE: + case EFFECT_CHILLY_RECEPTION: if (IsBattlerAlive(battlerAtkPartner) && ShouldSetSnow(battlerAtkPartner, atkPartnerAbility, atkPartnerHoldEffect)) { @@ -3621,6 +3631,7 @@ static u32 AI_CalcMoveEffectScore(u32 battlerAtk, u32 battlerDef, u32 move) //fallthrough case EFFECT_HIT_ESCAPE: case EFFECT_PARTING_SHOT: + case EFFECT_CHILLY_RECEPTION: if (!IsDoubleBattle()) { switch (ShouldPivot(battlerAtk, battlerDef, aiData->abilities[battlerDef], move, movesetIndex)) @@ -4879,6 +4890,7 @@ static s32 AI_SetupFirstTurn(u32 battlerAtk, u32 battlerDef, u32 move, s32 score case EFFECT_SANDSTORM: case EFFECT_HAIL: case EFFECT_SNOWSCAPE: + case EFFECT_CHILLY_RECEPTION: case EFFECT_GEOMANCY: case EFFECT_VICTORY_DANCE: ADJUST_SCORE(DECENT_EFFECT); diff --git a/src/battle_ai_switch_items.c b/src/battle_ai_switch_items.c index c31dab8936..e2d0d85a3c 100644 --- a/src/battle_ai_switch_items.c +++ b/src/battle_ai_switch_items.c @@ -2002,7 +2002,7 @@ static u32 GetBestMonIntegrated(struct Pokemon *party, int firstId, int lastId, } // If ace mon is the last available Pokemon and U-Turn/Volt Switch was used - switch to the mon. if (aceMonId != PARTY_SIZE - && (gMovesInfo[gLastUsedMove].effect == EFFECT_HIT_ESCAPE || gMovesInfo[gLastUsedMove].effect == EFFECT_PARTING_SHOT || gMovesInfo[gLastUsedMove].effect == EFFECT_BATON_PASS)) + && (gMovesInfo[gLastUsedMove].effect == EFFECT_HIT_ESCAPE || gMovesInfo[gLastUsedMove].effect == EFFECT_PARTING_SHOT || gMovesInfo[gLastUsedMove].effect == EFFECT_BATON_PASS || gMovesInfo[gLastUsedMove].effect == EFFECT_CHILLY_RECEPTION)) return aceMonId; return PARTY_SIZE; diff --git a/src/battle_ai_util.c b/src/battle_ai_util.c index f1509fdd80..8c1cb578ed 100644 --- a/src/battle_ai_util.c +++ b/src/battle_ai_util.c @@ -3262,7 +3262,8 @@ bool32 IsMoveEffectWeather(u32 move) || gMovesInfo[move].effect == EFFECT_RAIN_DANCE || gMovesInfo[move].effect == EFFECT_SANDSTORM || gMovesInfo[move].effect == EFFECT_HAIL - || gMovesInfo[move].effect == EFFECT_SNOWSCAPE)) + || gMovesInfo[move].effect == EFFECT_SNOWSCAPE + || gMovesInfo[move].effect == EFFECT_CHILLY_RECEPTION)) return TRUE; return FALSE; } diff --git a/test/battle/ai/ai_flag_sequence_switching.c b/test/battle/ai/ai_flag_sequence_switching.c index 1b4a264a24..7a0f3528bd 100644 --- a/test/battle/ai/ai_flag_sequence_switching.c +++ b/test/battle/ai/ai_flag_sequence_switching.c @@ -64,7 +64,7 @@ AI_SINGLE_BATTLE_TEST("AI_FLAG_SEQUENCE_SWITCHING: Roar and Dragon Tail still fo } } -AI_SINGLE_BATTLE_TEST("AI_FLAG_SEQUENCE_SWITCHING: AI will always switch into lowest party index after U-Turn, Parting Shot, and Baton Pass") +AI_SINGLE_BATTLE_TEST("AI_FLAG_SEQUENCE_SWITCHING: AI will always switch into lowest party index after U-Turn, Parting Shot, Baton Pass, and Chilly Reception") { u32 j, aiSequenceSwitchingFlag = 0, move = MOVE_NONE; @@ -72,6 +72,7 @@ AI_SINGLE_BATTLE_TEST("AI_FLAG_SEQUENCE_SWITCHING: AI will always switch into lo MOVE_U_TURN, MOVE_PARTING_SHOT, MOVE_BATON_PASS, + MOVE_CHILLY_RECEPTION, }; for (j = 0; j < ARRAY_COUNT(switchMoves); j++) @@ -84,6 +85,7 @@ AI_SINGLE_BATTLE_TEST("AI_FLAG_SEQUENCE_SWITCHING: AI will always switch into lo ASSUME(gMovesInfo[MOVE_U_TURN].effect == EFFECT_HIT_ESCAPE); ASSUME(gMovesInfo[MOVE_PARTING_SHOT].effect == EFFECT_PARTING_SHOT); ASSUME(gMovesInfo[MOVE_BATON_PASS].effect == EFFECT_BATON_PASS); + ASSUME(gMovesInfo[MOVE_CHILLY_RECEPTION].effect == EFFECT_CHILLY_RECEPTION); AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT | aiSequenceSwitchingFlag); PLAYER(SPECIES_SWELLOW) { Level (50); } OPPONENT(SPECIES_MACHOP) { Level(1); Moves(move); } From c406c4cc76341991fbb28072b63a12d73cffdc63 Mon Sep 17 00:00:00 2001 From: laserXdolphin <107103137+laserXdolphin@users.noreply.github.com> Date: Tue, 27 Aug 2024 14:33:58 +0200 Subject: [PATCH 25/32] Fixed Ice Fang frostbite and freeze text. The frostbite and freeze texts were swapped. (#5273) --- src/data/moves_info.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/data/moves_info.h b/src/data/moves_info.h index 08579f274f..cef7b6971a 100644 --- a/src/data/moves_info.h +++ b/src/data/moves_info.h @@ -10596,9 +10596,9 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = .description = COMPOUND_STRING( "May cause flinching or\n" #if B_USE_FROSTBITE == TRUE - "leave the foe frozen."), - #else "leave the foe with frostbite."), + #else + "leave the foe frozen."), #endif .effect = EFFECT_HIT, .power = 65, From 930cac6acad1d2fd1b8280ea959b424383aa5b98 Mon Sep 17 00:00:00 2001 From: PhallenTree <168426989+PhallenTree@users.noreply.github.com> Date: Tue, 27 Aug 2024 13:46:56 +0100 Subject: [PATCH 26/32] Fix Instruct bypassing AtkCanceler, Entry Hazards targeting wrong side of the field if opponent fainted (#5262) * Fix Instruct bypassing AtkCanceler + interaction with firstTurnOnly moves * Fix Entry Hazards targeting the wrong side of the field if opponent fainted * Remove unused BattleScript_AuroraVeilEnds and STRINGID_AURORAVEILENDS * Alternative fix + Fix gBattlerTarget initially set to 2 * Fix Instruct animation * Alternative anim fix --- data/battle_scripts_1.s | 2 + include/battle_scripts.h | 1 - include/constants/battle_string_ids.h | 539 +++++++++++++------------- src/battle_message.c | 2 - src/battle_script_commands.c | 10 +- src/battle_util.c | 8 +- test/battle/move_effect/instruct.c | 218 +++++++++++ test/battle/move_effect/sticky_web.c | 33 ++ 8 files changed, 532 insertions(+), 281 deletions(-) create mode 100644 test/battle/move_effect/instruct.c diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 5bd91f8df5..9d0bc6fc1f 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -1757,6 +1757,8 @@ BattleScript_EffectInstruct:: tryinstruct BattleScript_ButItFailed attackanimation waitanimation + copybyte gBattlerAttacker, gBattlerTarget + copybyte gBattlerTarget, gEffectBattler printstring STRINGID_USEDINSTRUCTEDMOVE waitmessage B_WAIT_TIME_LONG setbyte sB_ANIM_TURN, 0 diff --git a/include/battle_scripts.h b/include/battle_scripts.h index e8c71d32c2..fb1e72af24 100644 --- a/include/battle_scripts.h +++ b/include/battle_scripts.h @@ -263,7 +263,6 @@ extern const u8 BattleScript_EmbargoEndTurn[]; extern const u8 BattleScript_TelekinesisEndTurn[]; extern const u8 BattleScript_BufferEndTurn[]; extern const u8 BattleScript_AquaRingHeal[]; -extern const u8 BattleScript_AuroraVeilEnds[]; extern const u8 BattleScript_LuckyChantEnds[]; extern const u8 BattleScript_TailwindEnds[]; extern const u8 BattleScript_TrickRoomEnds[]; diff --git a/include/constants/battle_string_ids.h b/include/constants/battle_string_ids.h index 9529e026c1..9fbb70a223 100644 --- a/include/constants/battle_string_ids.h +++ b/include/constants/battle_string_ids.h @@ -444,277 +444,276 @@ #define STRINGID_WATERSPORTENDS 442 #define STRINGID_GRAVITYENDS 443 #define STRINGID_AQUARINGHEAL 444 -#define STRINGID_AURORAVEILENDS 445 -#define STRINGID_ELECTRICTERRAINENDS 446 -#define STRINGID_MISTYTERRAINENDS 447 -#define STRINGID_PSYCHICTERRAINENDS 448 -#define STRINGID_GRASSYTERRAINENDS 449 -#define STRINGID_TARGETABILITYSTATRAISE 450 -#define STRINGID_TARGETSSTATWASMAXEDOUT 451 -#define STRINGID_ATTACKERABILITYSTATRAISE 452 -#define STRINGID_POISONHEALHPUP 453 -#define STRINGID_BADDREAMSDMG 454 -#define STRINGID_MOLDBREAKERENTERS 455 -#define STRINGID_TERAVOLTENTERS 456 -#define STRINGID_TURBOBLAZEENTERS 457 -#define STRINGID_SLOWSTARTENTERS 458 -#define STRINGID_SLOWSTARTEND 459 -#define STRINGID_SOLARPOWERHPDROP 460 -#define STRINGID_AFTERMATHDMG 461 -#define STRINGID_ANTICIPATIONACTIVATES 462 -#define STRINGID_FOREWARNACTIVATES 463 -#define STRINGID_ICEBODYHPGAIN 464 -#define STRINGID_SNOWWARNINGHAIL 465 -#define STRINGID_FRISKACTIVATES 466 -#define STRINGID_UNNERVEENTERS 467 -#define STRINGID_HARVESTBERRY 468 -#define STRINGID_LASTABILITYRAISEDSTAT 469 -#define STRINGID_MAGICBOUNCEACTIVATES 470 -#define STRINGID_PROTEANTYPECHANGE 471 -#define STRINGID_SYMBIOSISITEMPASS 472 -#define STRINGID_STEALTHROCKDMG 473 -#define STRINGID_TOXICSPIKESABSORBED 474 -#define STRINGID_TOXICSPIKESPOISONED 475 -#define STRINGID_STICKYWEBSWITCHIN 476 -#define STRINGID_HEALINGWISHCAMETRUE 477 -#define STRINGID_HEALINGWISHHEALED 478 -#define STRINGID_LUNARDANCECAMETRUE 479 -#define STRINGID_CUSEDBODYDISABLED 480 -#define STRINGID_ATTACKERACQUIREDABILITY 481 -#define STRINGID_TARGETABILITYSTATLOWER 482 -#define STRINGID_TARGETSTATWONTGOHIGHER 483 -#define STRINGID_PKMNMOVEBOUNCEDABILITY 484 -#define STRINGID_IMPOSTERTRANSFORM 485 -#define STRINGID_ASSAULTVESTDOESNTALLOW 486 -#define STRINGID_GRAVITYPREVENTSUSAGE 487 -#define STRINGID_HEALBLOCKPREVENTSUSAGE 488 -#define STRINGID_NOTDONEYET 489 -#define STRINGID_STICKYWEBUSED 490 -#define STRINGID_QUASHSUCCESS 491 -#define STRINGID_PKMNBLEWAWAYTOXICSPIKES 492 -#define STRINGID_PKMNBLEWAWAYSTICKYWEB 493 -#define STRINGID_PKMNBLEWAWAYSTEALTHROCK 494 -#define STRINGID_IONDELUGEON 495 -#define STRINGID_TOPSYTURVYSWITCHEDSTATS 496 -#define STRINGID_TERRAINBECOMESMISTY 497 -#define STRINGID_TERRAINBECOMESGRASSY 498 -#define STRINGID_TERRAINBECOMESELECTRIC 499 -#define STRINGID_TERRAINBECOMESPSYCHIC 500 -#define STRINGID_TARGETELECTRIFIED 501 -#define STRINGID_MEGAEVOREACTING 502 -#define STRINGID_MEGAEVOEVOLVED 503 -#define STRINGID_DRASTICALLY 504 -#define STRINGID_SEVERELY 505 -#define STRINGID_INFESTATION 506 -#define STRINGID_NOEFFECTONTARGET 507 -#define STRINGID_BURSTINGFLAMESHIT 508 -#define STRINGID_BESTOWITEMGIVING 509 -#define STRINGID_THIRDTYPEADDED 510 -#define STRINGID_FELLFORFEINT 511 -#define STRINGID_POKEMONCANNOTUSEMOVE 512 -#define STRINGID_COVEREDINPOWDER 513 -#define STRINGID_POWDEREXPLODES 514 -#define STRINGID_BELCHCANTSELECT 515 -#define STRINGID_SPECTRALTHIEFSTEAL 516 -#define STRINGID_GRAVITYGROUNDING 517 -#define STRINGID_MISTYTERRAINPREVENTS 518 -#define STRINGID_GRASSYTERRAINHEALS 519 -#define STRINGID_ELECTRICTERRAINPREVENTS 520 -#define STRINGID_PSYCHICTERRAINPREVENTS 521 -#define STRINGID_SAFETYGOGGLESPROTECTED 522 -#define STRINGID_FLOWERVEILPROTECTED 523 -#define STRINGID_SWEETVEILPROTECTED 524 -#define STRINGID_AROMAVEILPROTECTED 525 -#define STRINGID_CELEBRATEMESSAGE 526 -#define STRINGID_USEDINSTRUCTEDMOVE 527 -#define STRINGID_THROATCHOPENDS 528 -#define STRINGID_PKMNCANTUSEMOVETHROATCHOP 529 -#define STRINGID_LASERFOCUS 530 -#define STRINGID_GEMACTIVATES 531 -#define STRINGID_BERRYDMGREDUCES 532 -#define STRINGID_TARGETATEITEM 533 -#define STRINGID_AIRBALLOONFLOAT 534 -#define STRINGID_AIRBALLOONPOP 535 -#define STRINGID_INCINERATEBURN 536 -#define STRINGID_BUGBITE 537 -#define STRINGID_ILLUSIONWOREOFF 538 -#define STRINGID_ATTACKERCUREDTARGETSTATUS 539 -#define STRINGID_ATTACKERLOSTFIRETYPE 540 -#define STRINGID_HEALERCURE 541 -#define STRINGID_SCRIPTINGABILITYSTATRAISE 542 -#define STRINGID_RECEIVERABILITYTAKEOVER 543 -#define STRINGID_PKNMABSORBINGPOWER 544 -#define STRINGID_NOONEWILLBEABLETORUNAWAY 545 -#define STRINGID_DESTINYKNOTACTIVATES 546 -#define STRINGID_CLOAKEDINAFREEZINGLIGHT 547 -#define STRINGID_CLEARAMULETWONTLOWERSTATS 548 -#define STRINGID_FERVENTWISHREACHED 549 -#define STRINGID_AIRLOCKACTIVATES 550 -#define STRINGID_PRESSUREENTERS 551 -#define STRINGID_DARKAURAENTERS 552 -#define STRINGID_FAIRYAURAENTERS 553 -#define STRINGID_AURABREAKENTERS 554 -#define STRINGID_COMATOSEENTERS 555 -#define STRINGID_SCREENCLEANERENTERS 556 -#define STRINGID_FETCHEDPOKEBALL 557 -#define STRINGID_BATTLERABILITYRAISEDSTAT 558 -#define STRINGID_ASANDSTORMKICKEDUP 559 -#define STRINGID_PKMNSWILLPERISHIN3TURNS 560 -#define STRINGID_ABILITYRAISEDSTATDRASTICALLY 561 -#define STRINGID_AURAFLAREDTOLIFE 562 -#define STRINGID_ASONEENTERS 563 -#define STRINGID_CURIOUSMEDICINEENTERS 564 -#define STRINGID_CANACTFASTERTHANKSTO 565 -#define STRINGID_MICLEBERRYACTIVATES 566 -#define STRINGID_PKMNSHOOKOFFTHETAUNT 567 -#define STRINGID_PKMNGOTOVERITSINFATUATION 568 -#define STRINGID_ITEMCANNOTBEREMOVED 569 -#define STRINGID_STICKYBARBTRANSFER 570 -#define STRINGID_PKMNBURNHEALED 571 -#define STRINGID_REDCARDACTIVATE 572 -#define STRINGID_EJECTBUTTONACTIVATE 573 -#define STRINGID_ATKGOTOVERINFATUATION 574 -#define STRINGID_TORMENTEDNOMORE 575 -#define STRINGID_HEALBLOCKEDNOMORE 576 -#define STRINGID_ATTACKERBECAMEFULLYCHARGED 577 -#define STRINGID_ATTACKERBECAMEASHSPECIES 578 -#define STRINGID_EXTREMELYHARSHSUNLIGHT 579 -#define STRINGID_EXTREMESUNLIGHTFADED 580 -#define STRINGID_MOVEEVAPORATEDINTHEHARSHSUNLIGHT 581 -#define STRINGID_EXTREMELYHARSHSUNLIGHTWASNOTLESSENED 582 -#define STRINGID_HEAVYRAIN 583 -#define STRINGID_HEAVYRAINLIFTED 584 -#define STRINGID_MOVEFIZZLEDOUTINTHEHEAVYRAIN 585 -#define STRINGID_NORELIEFROMHEAVYRAIN 586 -#define STRINGID_MYSTERIOUSAIRCURRENT 587 -#define STRINGID_STRONGWINDSDISSIPATED 588 -#define STRINGID_MYSTERIOUSAIRCURRENTBLOWSON 589 -#define STRINGID_ATTACKWEAKENEDBSTRONGWINDS 590 -#define STRINGID_STUFFCHEEKSCANTSELECT 591 -#define STRINGID_PKMNREVERTEDTOPRIMAL 592 -#define STRINGID_BUTPOKEMONCANTUSETHEMOVE 593 -#define STRINGID_BUTHOOPACANTUSEIT 594 -#define STRINGID_BROKETHROUGHPROTECTION 595 -#define STRINGID_ABILITYALLOWSONLYMOVE 596 -#define STRINGID_SWAPPEDABILITIES 597 -#define STRINGID_PASTELVEILPROTECTED 598 -#define STRINGID_PASTELVEILENTERS 599 -#define STRINGID_BATTLERTYPECHANGEDTO 600 -#define STRINGID_BOTHCANNOLONGERESCAPE 601 -#define STRINGID_CANTESCAPEDUETOUSEDMOVE 602 -#define STRINGID_PKMNBECAMEWEAKERTOFIRE 603 -#define STRINGID_ABOUTTOUSEPOLTERGEIST 604 -#define STRINGID_CANTESCAPEBECAUSEOFCURRENTMOVE 605 -#define STRINGID_NEUTRALIZINGGASENTERS 606 -#define STRINGID_NEUTRALIZINGGASOVER 607 -#define STRINGID_TARGETTOOHEAVY 608 -#define STRINGID_PKMNTOOKTARGETHIGH 609 -#define STRINGID_PKMNINSNAPTRAP 610 -#define STRINGID_METEORBEAMCHARGING 611 -#define STRINGID_HEATUPBEAK 612 -#define STRINGID_COURTCHANGE 613 -#define STRINGID_PLAYERLOSTTOENEMYTRAINER 614 -#define STRINGID_PLAYERPAIDPRIZEMONEY 615 -#define STRINGID_ZPOWERSURROUNDS 616 -#define STRINGID_ZMOVEUNLEASHED 617 -#define STRINGID_ZMOVERESETSSTATS 618 -#define STRINGID_ZMOVEALLSTATSUP 619 -#define STRINGID_ZMOVEZBOOSTCRIT 620 -#define STRINGID_ZMOVERESTOREHP 621 -#define STRINGID_ZMOVESTATUP 622 -#define STRINGID_ZMOVEHPTRAP 623 -#define STRINGID_ATTACKEREXPELLEDTHEPOISON 624 -#define STRINGID_ATTACKERSHOOKITSELFAWAKE 625 -#define STRINGID_ATTACKERBROKETHROUGHPARALYSIS 626 -#define STRINGID_ATTACKERHEALEDITSBURN 627 -#define STRINGID_ATTACKERMELTEDTHEICE 628 -#define STRINGID_TARGETTOUGHEDITOUT 629 -#define STRINGID_ATTACKERLOSTELECTRICTYPE 630 -#define STRINGID_ATTACKERSWITCHEDSTATWITHTARGET 631 -#define STRINGID_BEINGHITCHARGEDPKMNWITHPOWER 632 -#define STRINGID_SUNLIGHTACTIVATEDABILITY 633 -#define STRINGID_STATWASHEIGHTENED 634 -#define STRINGID_ELECTRICTERRAINACTIVATEDABILITY 635 -#define STRINGID_ABILITYWEAKENEDSURROUNDINGMONSSTAT 636 -#define STRINGID_ATTACKERGAINEDSTRENGTHFROMTHEFALLEN 637 -#define STRINGID_PKMNSABILITYPREVENTSABILITY 638 -#define STRINGID_PREPARESHELLTRAP 639 -#define STRINGID_SHELLTRAPDIDNTWORK 640 -#define STRINGID_SPIKESDISAPPEAREDFROMTEAM 641 -#define STRINGID_TOXICSPIKESDISAPPEAREDFROMTEAM 642 -#define STRINGID_STICKYWEBDISAPPEAREDFROMTEAM 643 -#define STRINGID_STEALTHROCKDISAPPEAREDFROMTEAM 644 -#define STRINGID_COULDNTFULLYPROTECT 645 -#define STRINGID_STOCKPILEDEFFECTWOREOFF 646 -#define STRINGID_PKMNREVIVEDREADYTOFIGHT 647 -#define STRINGID_ITEMRESTOREDSPECIESHEALTH 648 -#define STRINGID_ITEMCUREDSPECIESSTATUS 649 -#define STRINGID_ITEMRESTOREDSPECIESPP 650 -#define STRINGID_THUNDERCAGETRAPPED 651 -#define STRINGID_PKMNHURTBYFROSTBITE 652 -#define STRINGID_PKMNGOTFROSTBITE 653 -#define STRINGID_PKMNSITEMHEALEDFROSTBITE 654 -#define STRINGID_ATTACKERHEALEDITSFROSTBITE 655 -#define STRINGID_PKMNFROSTBITEHEALED 656 -#define STRINGID_PKMNFROSTBITEHEALED2 657 -#define STRINGID_PKMNFROSTBITEHEALEDBY 658 -#define STRINGID_MIRRORHERBCOPIED 659 -#define STRINGID_STARTEDSNOW 660 -#define STRINGID_SNOWCONTINUES 661 -#define STRINGID_SNOWSTOPPED 662 -#define STRINGID_SNOWWARNINGSNOW 663 -#define STRINGID_PKMNITEMMELTED 664 -#define STRINGID_ULTRABURSTREACTING 665 -#define STRINGID_ULTRABURSTCOMPLETED 666 -#define STRINGID_TEAMGAINEDEXP 667 -#define STRINGID_CURRENTMOVECANTSELECT 668 -#define STRINGID_TARGETISBEINGSALTCURED 669 -#define STRINGID_TARGETISHURTBYSALTCURE 670 -#define STRINGID_TARGETCOVEREDINSTICKYCANDYSYRUP 671 -#define STRINGID_SHARPSTEELFLOATS 672 -#define STRINGID_SHARPSTEELDMG 673 -#define STRINGID_PKMNBLEWAWAYSHARPSTEEL 674 -#define STRINGID_SHARPSTEELDISAPPEAREDFROMTEAM 675 -#define STRINGID_TEAMTRAPPEDWITHVINES 676 -#define STRINGID_PKMNHURTBYVINES 677 -#define STRINGID_TEAMCAUGHTINVORTEX 678 -#define STRINGID_PKMNHURTBYVORTEX 679 -#define STRINGID_TEAMSURROUNDEDBYFIRE 680 -#define STRINGID_PKMNBURNINGUP 681 -#define STRINGID_TEAMSURROUNDEDBYROCKS 682 -#define STRINGID_PKMNHURTBYROCKSTHROWN 683 -#define STRINGID_MOVEBLOCKEDBYDYNAMAX 684 -#define STRINGID_ZEROTOHEROTRANSFORMATION 685 -#define STRINGID_THETWOMOVESBECOMEONE 686 -#define STRINGID_ARAINBOWAPPEAREDONSIDE 687 -#define STRINGID_THERAINBOWDISAPPEARED 688 -#define STRINGID_WAITINGFORPARTNERSMOVE 689 -#define STRINGID_SEAOFFIREENVELOPEDSIDE 690 -#define STRINGID_HURTBYTHESEAOFFIRE 691 -#define STRINGID_THESEAOFFIREDISAPPEARED 692 -#define STRINGID_SWAMPENVELOPEDSIDE 693 -#define STRINGID_THESWAMPDISAPPEARED 694 -#define STRINGID_PKMNTELLCHILLINGRECEPTIONJOKE 695 -#define STRINGID_HOSPITALITYRESTORATION 696 -#define STRINGID_ELECTROSHOTCHARGING 697 -#define STRINGID_ITEMWASUSEDUP 698 -#define STRINGID_ATTACKERLOSTITSTYPE 699 -#define STRINGID_SHEDITSTAIL 700 -#define STRINGID_CLOAKEDINAHARSHLIGHT 701 -#define STRINGID_SUPERSWEETAROMAWAFTS 702 -#define STRINGID_DIMENSIONSWERETWISTED 703 -#define STRINGID_BIZARREARENACREATED 704 -#define STRINGID_BIZARREAREACREATED 705 -#define STRINGID_TIDYINGUPCOMPLETE 706 -#define STRINGID_PKMNTERASTALLIZEDINTO 707 -#define STRINGID_BOOSTERENERGYACTIVATES 708 -#define STRINGID_FOGCREPTUP 709 -#define STRINGID_FOGISDEEP 710 -#define STRINGID_FOGLIFTED 711 -#define STRINGID_PKMNMADESHELLGLEAM 712 -#define STRINGID_FICKLEBEAMDOUBLED 713 +#define STRINGID_ELECTRICTERRAINENDS 445 +#define STRINGID_MISTYTERRAINENDS 446 +#define STRINGID_PSYCHICTERRAINENDS 447 +#define STRINGID_GRASSYTERRAINENDS 448 +#define STRINGID_TARGETABILITYSTATRAISE 449 +#define STRINGID_TARGETSSTATWASMAXEDOUT 450 +#define STRINGID_ATTACKERABILITYSTATRAISE 451 +#define STRINGID_POISONHEALHPUP 452 +#define STRINGID_BADDREAMSDMG 453 +#define STRINGID_MOLDBREAKERENTERS 454 +#define STRINGID_TERAVOLTENTERS 455 +#define STRINGID_TURBOBLAZEENTERS 456 +#define STRINGID_SLOWSTARTENTERS 457 +#define STRINGID_SLOWSTARTEND 458 +#define STRINGID_SOLARPOWERHPDROP 459 +#define STRINGID_AFTERMATHDMG 460 +#define STRINGID_ANTICIPATIONACTIVATES 461 +#define STRINGID_FOREWARNACTIVATES 462 +#define STRINGID_ICEBODYHPGAIN 463 +#define STRINGID_SNOWWARNINGHAIL 464 +#define STRINGID_FRISKACTIVATES 465 +#define STRINGID_UNNERVEENTERS 466 +#define STRINGID_HARVESTBERRY 467 +#define STRINGID_LASTABILITYRAISEDSTAT 468 +#define STRINGID_MAGICBOUNCEACTIVATES 469 +#define STRINGID_PROTEANTYPECHANGE 470 +#define STRINGID_SYMBIOSISITEMPASS 471 +#define STRINGID_STEALTHROCKDMG 472 +#define STRINGID_TOXICSPIKESABSORBED 473 +#define STRINGID_TOXICSPIKESPOISONED 474 +#define STRINGID_STICKYWEBSWITCHIN 475 +#define STRINGID_HEALINGWISHCAMETRUE 476 +#define STRINGID_HEALINGWISHHEALED 477 +#define STRINGID_LUNARDANCECAMETRUE 478 +#define STRINGID_CUSEDBODYDISABLED 479 +#define STRINGID_ATTACKERACQUIREDABILITY 480 +#define STRINGID_TARGETABILITYSTATLOWER 481 +#define STRINGID_TARGETSTATWONTGOHIGHER 482 +#define STRINGID_PKMNMOVEBOUNCEDABILITY 483 +#define STRINGID_IMPOSTERTRANSFORM 484 +#define STRINGID_ASSAULTVESTDOESNTALLOW 485 +#define STRINGID_GRAVITYPREVENTSUSAGE 486 +#define STRINGID_HEALBLOCKPREVENTSUSAGE 487 +#define STRINGID_NOTDONEYET 488 +#define STRINGID_STICKYWEBUSED 489 +#define STRINGID_QUASHSUCCESS 490 +#define STRINGID_PKMNBLEWAWAYTOXICSPIKES 491 +#define STRINGID_PKMNBLEWAWAYSTICKYWEB 492 +#define STRINGID_PKMNBLEWAWAYSTEALTHROCK 493 +#define STRINGID_IONDELUGEON 494 +#define STRINGID_TOPSYTURVYSWITCHEDSTATS 495 +#define STRINGID_TERRAINBECOMESMISTY 496 +#define STRINGID_TERRAINBECOMESGRASSY 497 +#define STRINGID_TERRAINBECOMESELECTRIC 498 +#define STRINGID_TERRAINBECOMESPSYCHIC 499 +#define STRINGID_TARGETELECTRIFIED 500 +#define STRINGID_MEGAEVOREACTING 501 +#define STRINGID_MEGAEVOEVOLVED 502 +#define STRINGID_DRASTICALLY 503 +#define STRINGID_SEVERELY 504 +#define STRINGID_INFESTATION 505 +#define STRINGID_NOEFFECTONTARGET 506 +#define STRINGID_BURSTINGFLAMESHIT 507 +#define STRINGID_BESTOWITEMGIVING 508 +#define STRINGID_THIRDTYPEADDED 509 +#define STRINGID_FELLFORFEINT 510 +#define STRINGID_POKEMONCANNOTUSEMOVE 511 +#define STRINGID_COVEREDINPOWDER 512 +#define STRINGID_POWDEREXPLODES 513 +#define STRINGID_BELCHCANTSELECT 514 +#define STRINGID_SPECTRALTHIEFSTEAL 515 +#define STRINGID_GRAVITYGROUNDING 516 +#define STRINGID_MISTYTERRAINPREVENTS 517 +#define STRINGID_GRASSYTERRAINHEALS 518 +#define STRINGID_ELECTRICTERRAINPREVENTS 519 +#define STRINGID_PSYCHICTERRAINPREVENTS 520 +#define STRINGID_SAFETYGOGGLESPROTECTED 521 +#define STRINGID_FLOWERVEILPROTECTED 522 +#define STRINGID_SWEETVEILPROTECTED 523 +#define STRINGID_AROMAVEILPROTECTED 524 +#define STRINGID_CELEBRATEMESSAGE 525 +#define STRINGID_USEDINSTRUCTEDMOVE 526 +#define STRINGID_THROATCHOPENDS 527 +#define STRINGID_PKMNCANTUSEMOVETHROATCHOP 528 +#define STRINGID_LASERFOCUS 529 +#define STRINGID_GEMACTIVATES 530 +#define STRINGID_BERRYDMGREDUCES 531 +#define STRINGID_TARGETATEITEM 532 +#define STRINGID_AIRBALLOONFLOAT 533 +#define STRINGID_AIRBALLOONPOP 534 +#define STRINGID_INCINERATEBURN 535 +#define STRINGID_BUGBITE 536 +#define STRINGID_ILLUSIONWOREOFF 537 +#define STRINGID_ATTACKERCUREDTARGETSTATUS 538 +#define STRINGID_ATTACKERLOSTFIRETYPE 539 +#define STRINGID_HEALERCURE 540 +#define STRINGID_SCRIPTINGABILITYSTATRAISE 541 +#define STRINGID_RECEIVERABILITYTAKEOVER 542 +#define STRINGID_PKNMABSORBINGPOWER 543 +#define STRINGID_NOONEWILLBEABLETORUNAWAY 544 +#define STRINGID_DESTINYKNOTACTIVATES 545 +#define STRINGID_CLOAKEDINAFREEZINGLIGHT 546 +#define STRINGID_CLEARAMULETWONTLOWERSTATS 547 +#define STRINGID_FERVENTWISHREACHED 548 +#define STRINGID_AIRLOCKACTIVATES 549 +#define STRINGID_PRESSUREENTERS 550 +#define STRINGID_DARKAURAENTERS 551 +#define STRINGID_FAIRYAURAENTERS 552 +#define STRINGID_AURABREAKENTERS 553 +#define STRINGID_COMATOSEENTERS 554 +#define STRINGID_SCREENCLEANERENTERS 555 +#define STRINGID_FETCHEDPOKEBALL 556 +#define STRINGID_BATTLERABILITYRAISEDSTAT 557 +#define STRINGID_ASANDSTORMKICKEDUP 558 +#define STRINGID_PKMNSWILLPERISHIN3TURNS 559 +#define STRINGID_ABILITYRAISEDSTATDRASTICALLY 560 +#define STRINGID_AURAFLAREDTOLIFE 561 +#define STRINGID_ASONEENTERS 562 +#define STRINGID_CURIOUSMEDICINEENTERS 563 +#define STRINGID_CANACTFASTERTHANKSTO 564 +#define STRINGID_MICLEBERRYACTIVATES 565 +#define STRINGID_PKMNSHOOKOFFTHETAUNT 566 +#define STRINGID_PKMNGOTOVERITSINFATUATION 567 +#define STRINGID_ITEMCANNOTBEREMOVED 568 +#define STRINGID_STICKYBARBTRANSFER 569 +#define STRINGID_PKMNBURNHEALED 570 +#define STRINGID_REDCARDACTIVATE 571 +#define STRINGID_EJECTBUTTONACTIVATE 572 +#define STRINGID_ATKGOTOVERINFATUATION 573 +#define STRINGID_TORMENTEDNOMORE 574 +#define STRINGID_HEALBLOCKEDNOMORE 575 +#define STRINGID_ATTACKERBECAMEFULLYCHARGED 576 +#define STRINGID_ATTACKERBECAMEASHSPECIES 577 +#define STRINGID_EXTREMELYHARSHSUNLIGHT 578 +#define STRINGID_EXTREMESUNLIGHTFADED 579 +#define STRINGID_MOVEEVAPORATEDINTHEHARSHSUNLIGHT 580 +#define STRINGID_EXTREMELYHARSHSUNLIGHTWASNOTLESSENED 581 +#define STRINGID_HEAVYRAIN 582 +#define STRINGID_HEAVYRAINLIFTED 583 +#define STRINGID_MOVEFIZZLEDOUTINTHEHEAVYRAIN 584 +#define STRINGID_NORELIEFROMHEAVYRAIN 585 +#define STRINGID_MYSTERIOUSAIRCURRENT 586 +#define STRINGID_STRONGWINDSDISSIPATED 587 +#define STRINGID_MYSTERIOUSAIRCURRENTBLOWSON 588 +#define STRINGID_ATTACKWEAKENEDBSTRONGWINDS 589 +#define STRINGID_STUFFCHEEKSCANTSELECT 590 +#define STRINGID_PKMNREVERTEDTOPRIMAL 591 +#define STRINGID_BUTPOKEMONCANTUSETHEMOVE 592 +#define STRINGID_BUTHOOPACANTUSEIT 593 +#define STRINGID_BROKETHROUGHPROTECTION 594 +#define STRINGID_ABILITYALLOWSONLYMOVE 595 +#define STRINGID_SWAPPEDABILITIES 596 +#define STRINGID_PASTELVEILPROTECTED 597 +#define STRINGID_PASTELVEILENTERS 598 +#define STRINGID_BATTLERTYPECHANGEDTO 599 +#define STRINGID_BOTHCANNOLONGERESCAPE 600 +#define STRINGID_CANTESCAPEDUETOUSEDMOVE 601 +#define STRINGID_PKMNBECAMEWEAKERTOFIRE 602 +#define STRINGID_ABOUTTOUSEPOLTERGEIST 603 +#define STRINGID_CANTESCAPEBECAUSEOFCURRENTMOVE 604 +#define STRINGID_NEUTRALIZINGGASENTERS 605 +#define STRINGID_NEUTRALIZINGGASOVER 606 +#define STRINGID_TARGETTOOHEAVY 607 +#define STRINGID_PKMNTOOKTARGETHIGH 608 +#define STRINGID_PKMNINSNAPTRAP 609 +#define STRINGID_METEORBEAMCHARGING 610 +#define STRINGID_HEATUPBEAK 611 +#define STRINGID_COURTCHANGE 612 +#define STRINGID_PLAYERLOSTTOENEMYTRAINER 613 +#define STRINGID_PLAYERPAIDPRIZEMONEY 614 +#define STRINGID_ZPOWERSURROUNDS 615 +#define STRINGID_ZMOVEUNLEASHED 616 +#define STRINGID_ZMOVERESETSSTATS 617 +#define STRINGID_ZMOVEALLSTATSUP 618 +#define STRINGID_ZMOVEZBOOSTCRIT 619 +#define STRINGID_ZMOVERESTOREHP 620 +#define STRINGID_ZMOVESTATUP 621 +#define STRINGID_ZMOVEHPTRAP 622 +#define STRINGID_ATTACKEREXPELLEDTHEPOISON 623 +#define STRINGID_ATTACKERSHOOKITSELFAWAKE 624 +#define STRINGID_ATTACKERBROKETHROUGHPARALYSIS 625 +#define STRINGID_ATTACKERHEALEDITSBURN 626 +#define STRINGID_ATTACKERMELTEDTHEICE 627 +#define STRINGID_TARGETTOUGHEDITOUT 628 +#define STRINGID_ATTACKERLOSTELECTRICTYPE 629 +#define STRINGID_ATTACKERSWITCHEDSTATWITHTARGET 630 +#define STRINGID_BEINGHITCHARGEDPKMNWITHPOWER 631 +#define STRINGID_SUNLIGHTACTIVATEDABILITY 632 +#define STRINGID_STATWASHEIGHTENED 633 +#define STRINGID_ELECTRICTERRAINACTIVATEDABILITY 634 +#define STRINGID_ABILITYWEAKENEDSURROUNDINGMONSSTAT 635 +#define STRINGID_ATTACKERGAINEDSTRENGTHFROMTHEFALLEN 636 +#define STRINGID_PKMNSABILITYPREVENTSABILITY 637 +#define STRINGID_PREPARESHELLTRAP 638 +#define STRINGID_SHELLTRAPDIDNTWORK 639 +#define STRINGID_SPIKESDISAPPEAREDFROMTEAM 640 +#define STRINGID_TOXICSPIKESDISAPPEAREDFROMTEAM 641 +#define STRINGID_STICKYWEBDISAPPEAREDFROMTEAM 642 +#define STRINGID_STEALTHROCKDISAPPEAREDFROMTEAM 643 +#define STRINGID_COULDNTFULLYPROTECT 644 +#define STRINGID_STOCKPILEDEFFECTWOREOFF 645 +#define STRINGID_PKMNREVIVEDREADYTOFIGHT 646 +#define STRINGID_ITEMRESTOREDSPECIESHEALTH 647 +#define STRINGID_ITEMCUREDSPECIESSTATUS 648 +#define STRINGID_ITEMRESTOREDSPECIESPP 649 +#define STRINGID_THUNDERCAGETRAPPED 650 +#define STRINGID_PKMNHURTBYFROSTBITE 651 +#define STRINGID_PKMNGOTFROSTBITE 652 +#define STRINGID_PKMNSITEMHEALEDFROSTBITE 653 +#define STRINGID_ATTACKERHEALEDITSFROSTBITE 654 +#define STRINGID_PKMNFROSTBITEHEALED 655 +#define STRINGID_PKMNFROSTBITEHEALED2 656 +#define STRINGID_PKMNFROSTBITEHEALEDBY 657 +#define STRINGID_MIRRORHERBCOPIED 658 +#define STRINGID_STARTEDSNOW 659 +#define STRINGID_SNOWCONTINUES 660 +#define STRINGID_SNOWSTOPPED 661 +#define STRINGID_SNOWWARNINGSNOW 662 +#define STRINGID_PKMNITEMMELTED 663 +#define STRINGID_ULTRABURSTREACTING 664 +#define STRINGID_ULTRABURSTCOMPLETED 665 +#define STRINGID_TEAMGAINEDEXP 666 +#define STRINGID_CURRENTMOVECANTSELECT 667 +#define STRINGID_TARGETISBEINGSALTCURED 668 +#define STRINGID_TARGETISHURTBYSALTCURE 669 +#define STRINGID_TARGETCOVEREDINSTICKYCANDYSYRUP 670 +#define STRINGID_SHARPSTEELFLOATS 671 +#define STRINGID_SHARPSTEELDMG 672 +#define STRINGID_PKMNBLEWAWAYSHARPSTEEL 673 +#define STRINGID_SHARPSTEELDISAPPEAREDFROMTEAM 674 +#define STRINGID_TEAMTRAPPEDWITHVINES 675 +#define STRINGID_PKMNHURTBYVINES 676 +#define STRINGID_TEAMCAUGHTINVORTEX 677 +#define STRINGID_PKMNHURTBYVORTEX 678 +#define STRINGID_TEAMSURROUNDEDBYFIRE 679 +#define STRINGID_PKMNBURNINGUP 680 +#define STRINGID_TEAMSURROUNDEDBYROCKS 681 +#define STRINGID_PKMNHURTBYROCKSTHROWN 682 +#define STRINGID_MOVEBLOCKEDBYDYNAMAX 683 +#define STRINGID_ZEROTOHEROTRANSFORMATION 684 +#define STRINGID_THETWOMOVESBECOMEONE 685 +#define STRINGID_ARAINBOWAPPEAREDONSIDE 686 +#define STRINGID_THERAINBOWDISAPPEARED 687 +#define STRINGID_WAITINGFORPARTNERSMOVE 688 +#define STRINGID_SEAOFFIREENVELOPEDSIDE 689 +#define STRINGID_HURTBYTHESEAOFFIRE 690 +#define STRINGID_THESEAOFFIREDISAPPEARED 691 +#define STRINGID_SWAMPENVELOPEDSIDE 692 +#define STRINGID_THESWAMPDISAPPEARED 693 +#define STRINGID_PKMNTELLCHILLINGRECEPTIONJOKE 694 +#define STRINGID_HOSPITALITYRESTORATION 695 +#define STRINGID_ELECTROSHOTCHARGING 696 +#define STRINGID_ITEMWASUSEDUP 697 +#define STRINGID_ATTACKERLOSTITSTYPE 698 +#define STRINGID_SHEDITSTAIL 699 +#define STRINGID_CLOAKEDINAHARSHLIGHT 700 +#define STRINGID_SUPERSWEETAROMAWAFTS 701 +#define STRINGID_DIMENSIONSWERETWISTED 702 +#define STRINGID_BIZARREARENACREATED 703 +#define STRINGID_BIZARREAREACREATED 704 +#define STRINGID_TIDYINGUPCOMPLETE 705 +#define STRINGID_PKMNTERASTALLIZEDINTO 706 +#define STRINGID_BOOSTERENERGYACTIVATES 707 +#define STRINGID_FOGCREPTUP 708 +#define STRINGID_FOGISDEEP 709 +#define STRINGID_FOGLIFTED 710 +#define STRINGID_PKMNMADESHELLGLEAM 711 +#define STRINGID_FICKLEBEAMDOUBLED 712 -#define BATTLESTRINGS_COUNT 714 +#define BATTLESTRINGS_COUNT 713 // This is the string id that gBattleStringsTable starts with. // String ids before this (e.g. STRINGID_INTROMSG) are not in the table, diff --git a/src/battle_message.c b/src/battle_message.c index 58eda8aed7..ecb2932124 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -606,7 +606,6 @@ static const u8 sText_TargetAbilityRaisedStat[] = _("{B_DEF_NAME_WITH_PREFIX}'s static const u8 sText_TargetAbilityLoweredStat[] = _("{B_DEF_NAME_WITH_PREFIX}'s {B_DEF_ABILITY}\nlowered its {B_BUFF1}!"); static const u8 sText_AttackerAbilityRaisedStat[] = _("{B_ATK_NAME_WITH_PREFIX}'s {B_ATK_ABILITY}\nraised its {B_BUFF1}!"); static const u8 sText_ScriptingAbilityRaisedStat[] = _("{B_SCR_ACTIVE_NAME_WITH_PREFIX}'s {B_SCR_ACTIVE_ABILITY}\nraised its {B_BUFF1}!"); -static const u8 sText_AuroraVeilEnds[] = _("{B_DEF_NAME_WITH_PREFIX}'s {B_DEF_ABILITY}\nwore off!"); static const u8 sText_ElectricTerrainEnds[] = _("The electricity disappeared\nfrom the battlefield."); static const u8 sText_MistyTerrainEnds[] = _("The mist disappeared\nfrom the battlefield."); static const u8 sText_PsychicTerrainEnds[] = _("The weirdness disappeared\nfrom the battlefield."); @@ -1442,7 +1441,6 @@ const u8 *const gBattleStringsTable[BATTLESTRINGS_COUNT] = [STRINGID_WATERSPORTENDS - BATTLESTRINGS_TABLE_START] = sText_WaterSportEnds, [STRINGID_GRAVITYENDS - BATTLESTRINGS_TABLE_START] = sText_GravityEnds, [STRINGID_AQUARINGHEAL - BATTLESTRINGS_TABLE_START] = sText_AquaRingHeal, - [STRINGID_AURORAVEILENDS - BATTLESTRINGS_TABLE_START] = sText_AuroraVeilEnds, [STRINGID_ELECTRICTERRAINENDS - BATTLESTRINGS_TABLE_START] = sText_ElectricTerrainEnds, [STRINGID_MISTYTERRAINENDS - BATTLESTRINGS_TABLE_START] = sText_MistyTerrainEnds, [STRINGID_PSYCHICTERRAINENDS - BATTLESTRINGS_TABLE_START] = sText_PsychicTerrainEnds, diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index cd5fd18268..c4f589a818 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -9957,23 +9957,23 @@ static void Cmd_various(void) else { gSpecialStatuses[gBattlerTarget].instructedChosenTarget = *(gBattleStruct->moveTarget + gBattlerTarget) | 0x4; - gBattlerAttacker = gBattlerTarget; gCalledMove = move; for (i = 0; i < MAX_MON_MOVES; i++) { - if (gBattleMons[gBattlerAttacker].moves[i] == gCalledMove) + if (gBattleMons[gBattlerTarget].moves[i] == gCalledMove) { gCurrMovePos = i; i = 4; break; } } - if (i != 4 || gBattleMons[gBattlerAttacker].pp[gCurrMovePos] == 0) + if (i != 4 || gBattleMons[gBattlerTarget].pp[gCurrMovePos] == 0) gBattlescriptCurrInstr = cmd->failInstr; else { - gBattlerTarget = gBattleStruct->lastMoveTarget[gBattlerAttacker]; + gEffectBattler = gBattleStruct->lastMoveTarget[gBattlerTarget]; gHitMarker &= ~HITMARKER_ATTACKSTRING_PRINTED; + gBattleStruct->atkCancellerTracker = 0; PREPARE_MON_NICK_WITH_PREFIX_BUFFER(gBattleTextBuff1, battler, gBattlerPartyIndexes[battler]); gBattlescriptCurrInstr = cmd->nextInstr; } @@ -11408,7 +11408,7 @@ static void Cmd_jumpifnotfirstturn(void) const u8 *jumpInstr = cmd->jumpInstr; - if (gDisableStructs[gBattlerAttacker].isFirstTurn) + if (gDisableStructs[gBattlerAttacker].isFirstTurn && !(gSpecialStatuses[gBattlerAttacker].instructedChosenTarget)) gBattlescriptCurrInstr = cmd->nextInstr; else gBattlescriptCurrInstr = jumpInstr; diff --git a/src/battle_util.c b/src/battle_util.c index b7c61862fc..6170ad0e48 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -352,7 +352,7 @@ void HandleAction_UseMove(void) else { gBattlerTarget = *(gBattleStruct->moveTarget + gBattlerAttacker); - if (!IsBattlerAlive(gBattlerTarget)) + if (!IsBattlerAlive(gBattlerTarget) && moveTarget != MOVE_TARGET_OPPONENTS_FIELD) { if (GetBattlerSide(gBattlerAttacker) != GetBattlerSide(gBattlerTarget)) { @@ -3233,7 +3233,7 @@ u8 AtkCanceller_UnableToUseMove(u32 moveType) case CANCELLER_FLAGS: // flags clear gBattleMons[gBattlerAttacker].status2 &= ~STATUS2_DESTINY_BOND; gStatuses3[gBattlerAttacker] &= ~STATUS3_GRUDGE; - gStatuses4[gBattlerAttacker] &= ~ STATUS4_GLAIVE_RUSH; + gStatuses4[gBattlerAttacker] &= ~STATUS4_GLAIVE_RUSH; gBattleStruct->atkCancellerTracker++; break; case CANCELLER_SKY_DROP: @@ -8302,11 +8302,13 @@ u32 GetMoveTarget(u16 move, u8 setTarget) case MOVE_TARGET_DEPENDS: case MOVE_TARGET_BOTH: case MOVE_TARGET_FOES_AND_ALLY: - case MOVE_TARGET_OPPONENTS_FIELD: targetBattler = GetBattlerAtPosition(BATTLE_OPPOSITE(GetBattlerSide(gBattlerAttacker))); if (!IsBattlerAlive(targetBattler)) targetBattler ^= BIT_FLANK; break; + case MOVE_TARGET_OPPONENTS_FIELD: + targetBattler = GetBattlerAtPosition(BATTLE_OPPOSITE(GetBattlerSide(gBattlerAttacker))); + break; case MOVE_TARGET_RANDOM: side = BATTLE_OPPOSITE(GetBattlerSide(gBattlerAttacker)); if (IsAffectedByFollowMe(gBattlerAttacker, side, move)) diff --git a/test/battle/move_effect/instruct.c b/test/battle/move_effect/instruct.c new file mode 100644 index 0000000000..4521969920 --- /dev/null +++ b/test/battle/move_effect/instruct.c @@ -0,0 +1,218 @@ +#include "global.h" +#include "test/battle.h" + +ASSUMPTIONS +{ + ASSUME(gMovesInfo[MOVE_INSTRUCT].effect == EFFECT_INSTRUCT); +} + +DOUBLE_BATTLE_TEST("Instruct fails if target hasn't made a move") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_WOBBUFFET) { Moves(MOVE_TACKLE, MOVE_POUND, MOVE_SCRATCH, MOVE_CELEBRATE); } + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(playerLeft, MOVE_INSTRUCT, target: playerRight); MOVE(playerRight, MOVE_TACKLE, target: opponentLeft); } + } SCENE { + NOT ANIMATION(ANIM_TYPE_MOVE, MOVE_INSTRUCT, playerLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_TACKLE, playerRight); + } +} + +DOUBLE_BATTLE_TEST("Instruct fails if move is banned by Instruct") +{ + ASSUME(gMovesInfo[MOVE_BIDE].instructBanned == TRUE); + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_WOBBUFFET) { Moves(MOVE_TACKLE, MOVE_POUND, MOVE_SCRATCH, MOVE_BIDE); } + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(playerRight, MOVE_BIDE); MOVE(playerLeft, MOVE_INSTRUCT, target: playerRight); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_BIDE, playerRight); + NOT ANIMATION(ANIM_TYPE_MOVE, MOVE_INSTRUCT, playerLeft); + } +} + +DOUBLE_BATTLE_TEST("Instruct-called move targets the target of the move picked on its last use") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_WOBBUFFET) { Moves(MOVE_TACKLE, MOVE_POUND, MOVE_SCRATCH, MOVE_FAKE_OUT); } + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(playerRight, MOVE_TACKLE, target: opponentLeft); MOVE(playerLeft, MOVE_INSTRUCT, target: playerRight); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_TACKLE, playerRight); + HP_BAR(opponentLeft); + NOT HP_BAR(opponentRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_INSTRUCT, playerLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_TACKLE, playerRight); + HP_BAR(opponentLeft); + NOT HP_BAR(opponentRight); + } +} + +DOUBLE_BATTLE_TEST("Instruct doesn't bypass sleep") +{ + ASSUME(gMovesInfo[MOVE_SPORE].effect == EFFECT_SLEEP); + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_WOBBUFFET) { Moves(MOVE_TACKLE, MOVE_POUND, MOVE_SCRATCH, MOVE_GROWL); } + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(playerRight, MOVE_TACKLE, target: opponentLeft); MOVE(opponentLeft, MOVE_SPORE, target: playerRight); MOVE(playerLeft, MOVE_INSTRUCT, target: playerRight); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_TACKLE, playerRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_SPORE, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_INSTRUCT, playerLeft); + MESSAGE("Wobbuffet is fast asleep."); + NOT ANIMATION(ANIM_TYPE_MOVE, MOVE_TACKLE, playerRight); + } +} + +DOUBLE_BATTLE_TEST("Instruct fails if target doesn't know the last move it used") +{ + ASSUME(gMovesInfo[MOVE_DRAGON_DANCE].danceMove == TRUE); + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_ORICORIO) { Moves(MOVE_TACKLE, MOVE_POUND, MOVE_SCRATCH, MOVE_CELEBRATE); } + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(opponentLeft, MOVE_DRAGON_DANCE); MOVE(playerLeft, MOVE_INSTRUCT, target: playerRight); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_DRAGON_DANCE, opponentLeft); + ABILITY_POPUP(playerRight, ABILITY_DANCER); + ANIMATION(ANIM_TYPE_MOVE, MOVE_DRAGON_DANCE, playerRight); + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_INSTRUCT, playerLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_DRAGON_DANCE, playerRight); + } + } +} + +DOUBLE_BATTLE_TEST("Instruct-called move fails if it can only be used on the first turn but consumes PP") +{ + ASSUME(gMovesInfo[MOVE_FAKE_OUT].effect == EFFECT_FIRST_TURN_ONLY); + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_WOBBUFFET) { Moves(MOVE_TACKLE, MOVE_POUND, MOVE_SCRATCH, MOVE_FAKE_OUT); } + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(playerRight, MOVE_FAKE_OUT, target: opponentLeft); MOVE(playerLeft, MOVE_INSTRUCT, target: playerRight); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_FAKE_OUT, playerRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_INSTRUCT, playerLeft); + NOT ANIMATION(ANIM_TYPE_MOVE, MOVE_FAKE_OUT, playerRight); + } THEN { + EXPECT_EQ(playerRight->pp[3], gMovesInfo[MOVE_FAKE_OUT].pp - 2); + } +} + +DOUBLE_BATTLE_TEST("Instruct-called move doesn't fail if tormented") +{ + ASSUME(gMovesInfo[MOVE_TORMENT].effect == EFFECT_TORMENT); + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_WOBBUFFET) { Moves(MOVE_TACKLE, MOVE_POUND, MOVE_SCRATCH, MOVE_FAKE_OUT); } + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(opponentLeft, MOVE_TORMENT, target: playerRight); MOVE(playerRight, MOVE_TACKLE, target: opponentLeft); MOVE(playerLeft, MOVE_INSTRUCT, target: playerRight); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_TORMENT, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_TACKLE, playerRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_INSTRUCT, playerLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_TACKLE, playerRight); + } +} + +DOUBLE_BATTLE_TEST("Instruct-called status moves don't fail if holding Assault Vest") +{ + ASSUME(gItemsInfo[ITEM_ASSAULT_VEST].holdEffect == HOLD_EFFECT_ASSAULT_VEST); + ASSUME(gMovesInfo[MOVE_TRICK].effect == EFFECT_TRICK); + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_WOBBUFFET) { Moves(MOVE_TACKLE, MOVE_POUND, MOVE_SCRATCH, MOVE_TRICK); } + OPPONENT(SPECIES_WOBBUFFET) { Item(ITEM_ASSAULT_VEST); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(playerRight, MOVE_TRICK, target: opponentLeft); MOVE(playerLeft, MOVE_INSTRUCT, target: playerRight); MOVE(opponentLeft, MOVE_TACKLE, target: playerLeft); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_TRICK, playerRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_INSTRUCT, playerLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_TRICK, playerRight); + } +} + +DOUBLE_BATTLE_TEST("Instruct-called status move fails if taunted") +{ + ASSUME(gMovesInfo[MOVE_TAUNT].effect == EFFECT_TAUNT); + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_WOBBUFFET) { Moves(MOVE_TACKLE, MOVE_POUND, MOVE_SCRATCH, MOVE_GROWL); } + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(playerRight, MOVE_GROWL); MOVE(opponentLeft, MOVE_TAUNT, target: playerRight); MOVE(playerLeft, MOVE_INSTRUCT, target: playerRight); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_GROWL, playerRight); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponentRight); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_TAUNT, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_INSTRUCT, playerLeft); + NONE_OF { + ANIMATION(ANIM_TYPE_MOVE, MOVE_GROWL, playerRight); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponentRight); + ANIMATION(ANIM_TYPE_GENERAL, B_ANIM_STATS_CHANGE, opponentLeft); + } + } THEN { + EXPECT_EQ(playerRight->pp[3], gMovesInfo[MOVE_GROWL].pp - 1); + } +} + +DOUBLE_BATTLE_TEST("Instruct-called moves fail if disabled") +{ + ASSUME(gMovesInfo[MOVE_DISABLE].effect == EFFECT_DISABLE); + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_WOBBUFFET) { Moves(MOVE_TACKLE, MOVE_POUND, MOVE_SCRATCH, MOVE_GROWL); } + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(playerRight, MOVE_TACKLE, target: opponentLeft); MOVE(opponentLeft, MOVE_DISABLE, target: playerRight); MOVE(playerLeft, MOVE_INSTRUCT, target: playerRight); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_TACKLE, playerRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_DISABLE, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_INSTRUCT, playerLeft); + NOT ANIMATION(ANIM_TYPE_MOVE, MOVE_TACKLE, playerRight); + } THEN { + EXPECT_EQ(playerRight->pp[0], gMovesInfo[MOVE_TACKLE].pp - 1); + } +} + +DOUBLE_BATTLE_TEST("Instruct-called moves keep their priority") +{ + ASSUME(gMovesInfo[MOVE_QUICK_ATTACK].priority == 1); + ASSUME(gMovesInfo[MOVE_PSYCHIC_TERRAIN].effect == EFFECT_PSYCHIC_TERRAIN); + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_WOBBUFFET) { Moves(MOVE_TACKLE, MOVE_POUND, MOVE_SCRATCH, MOVE_QUICK_ATTACK); } + OPPONENT(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(playerRight, MOVE_QUICK_ATTACK, target: opponentLeft); MOVE(opponentLeft, MOVE_PSYCHIC_TERRAIN, target: playerRight); MOVE(playerLeft, MOVE_INSTRUCT, target: playerRight); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_QUICK_ATTACK, playerRight); + ANIMATION(ANIM_TYPE_MOVE, MOVE_PSYCHIC_TERRAIN, opponentLeft); + ANIMATION(ANIM_TYPE_MOVE, MOVE_INSTRUCT, playerLeft); + NOT ANIMATION(ANIM_TYPE_MOVE, MOVE_QUICK_ATTACK, playerRight); + } +} diff --git a/test/battle/move_effect/sticky_web.c b/test/battle/move_effect/sticky_web.c index 035568dd75..d6960f88d1 100644 --- a/test/battle/move_effect/sticky_web.c +++ b/test/battle/move_effect/sticky_web.c @@ -238,3 +238,36 @@ DOUBLE_BATTLE_TEST("Sticky Web has correct interactions with Mirror Armor - no o EXPECT_EQ(opponentRight->statStages[STAT_SPEED], DEFAULT_STAT_STAGE); } } +SINGLE_BATTLE_TEST("Sticky Web is placed on the correct side after Explosion") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(player, MOVE_EXPLOSION); MOVE(opponent, MOVE_STICKY_WEB); SEND_OUT(player, 1);} + } SCENE { + HP_BAR(player, hp: 0); + ANIMATION(ANIM_TYPE_MOVE, MOVE_EXPLOSION, player); + MESSAGE("Wobbuffet fainted!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_STICKY_WEB, opponent); + MESSAGE("A sticky web spreads out on the ground around your team!"); + } +} + +SINGLE_BATTLE_TEST("Sticky Web is placed on the correct side after Memento") +{ + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(player, MOVE_MEMENTO); MOVE(opponent, MOVE_STICKY_WEB); SEND_OUT(player, 1); } + } SCENE { + HP_BAR(player, hp: 0); + ANIMATION(ANIM_TYPE_MOVE, MOVE_MEMENTO, player); + MESSAGE("Wobbuffet fainted!"); + ANIMATION(ANIM_TYPE_MOVE, MOVE_STICKY_WEB, opponent); + MESSAGE("A sticky web spreads out on the ground around your team!"); + } +} From 98dbf3a575b7f7c93e334f12fd3a57144602aba5 Mon Sep 17 00:00:00 2001 From: Alex <93446519+AlexOn1ine@users.noreply.github.com> Date: Tue, 27 Aug 2024 20:01:51 +0200 Subject: [PATCH 27/32] Fixes Charged up status (#5274) Charge changed to last until the damage boost is consumed instead of next turn, previous behavior accessible with `B_CHARGE` --- include/battle.h | 8 +- include/config/battle.h | 1 + src/battle_script_commands.c | 9 +- src/battle_tv.c | 2 +- src/battle_util.c | 4 +- test/battle/move_effect/charge.c | 170 +++++++++++++++++++++++++++++-- 6 files changed, 179 insertions(+), 15 deletions(-) diff --git a/include/battle.h b/include/battle.h index 4db357fca6..1729c76b3d 100644 --- a/include/battle.h +++ b/include/battle.h @@ -115,17 +115,15 @@ struct DisableStruct u8 disableTimer:4; u8 encoreTimer:4; u8 perishSongTimer:4; - u8 furyCutterCounter; u8 rolloutTimer:4; u8 rolloutTimerStartValue:4; - u8 chargeTimer:4; u8 tauntTimer:4; + u8 furyCutterCounter; u8 battlerPreventingEscape; u8 battlerWithSureHit; u8 isFirstTurn; - u8 truantCounter:1; - u8 truantSwitchInHack:1; u8 mimickedMoves:4; + u8 chargeTimer:4; u8 rechargeTimer; u8 autotomizeCount; u8 slowStartTimer; @@ -138,6 +136,8 @@ struct DisableStruct u8 wrapTurns; u8 tormentTimer:4; // used for G-Max Meltdown u8 usedMoves:4; + u8 truantCounter:1; + u8 truantSwitchInHack:1; u8 noRetreat:1; u8 tarShot:1; u8 octolock:1; diff --git a/include/config/battle.h b/include/config/battle.h index 1cb4a4a6ce..55091fb331 100644 --- a/include/config/battle.h +++ b/include/config/battle.h @@ -121,6 +121,7 @@ #define B_SKETCH_BANS GEN_LATEST // In Gen9+, Sketch is unable to copy more moves than in previous generations. #define B_KNOCK_OFF_REMOVAL GEN_LATEST // In Gen5+, Knock Off removes the foe's item instead of rendering it unusable. #define B_HEAL_BELL_SOUNDPROOF GEN_LATEST // In Gen5, Heal Bell affects all mons with Soundproof. In Gen6-8 it affects inactive mons, but not battlers. In Gen9 it always affects the user. +#define B_CHARGE GEN_LATEST // In Gen8-, Charge status is lost regardless of the typing of the next move. // Ability settings #define B_EXPANDED_ABILITY_NAMES TRUE // If TRUE, ability names are increased from 12 characters to 16 characters. diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index c4f589a818..9e1af78714 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -6427,9 +6427,11 @@ static void Cmd_moveend(void) gBattleStruct->additionalEffectsCounter = 0; gBattleStruct->poisonPuppeteerConfusion = FALSE; gBattleStruct->fickleBeamBoosted = FALSE; + gBattleStruct->distortedTypeMatchups = 0; if (GetActiveGimmick(gBattlerAttacker) == GIMMICK_Z_MOVE) SetActiveGimmick(gBattlerAttacker, GIMMICK_NONE); - gBattleStruct->distortedTypeMatchups = 0; + if (B_CHARGE <= GEN_8 || moveType == TYPE_ELECTRIC) + gStatuses3[gBattlerAttacker] &= ~(STATUS3_CHARGED_UP); memset(gQueuedStatBoosts, 0, sizeof(gQueuedStatBoosts)); gBattleScripting.moveendState++; break; @@ -14012,7 +14014,10 @@ static void Cmd_setcharge(void) u8 battler = GetBattlerForBattleScript(cmd->battler); gStatuses3[battler] |= STATUS3_CHARGED_UP; - gDisableStructs[battler].chargeTimer = 2; + if (B_CHARGE < GEN_9) + gDisableStructs[battler].chargeTimer = 2; + else + gDisableStructs[battler].chargeTimer = 0; gBattlescriptCurrInstr++; gBattlescriptCurrInstr = cmd->nextInstr; } diff --git a/src/battle_tv.c b/src/battle_tv.c index bba14054c9..24d573d0bf 100644 --- a/src/battle_tv.c +++ b/src/battle_tv.c @@ -775,7 +775,7 @@ void BattleTv_SetDataBasedOnMove(u16 move, u16 weatherFlags, struct DisableStruc tvPtr->side[atkSide].usedMoveSlot = moveSlot; AddMovePoints(PTS_MOVE_EFFECT, moveSlot, move, 0); AddPointsBasedOnWeather(weatherFlags, move, moveSlot); - if (disableStructPtr->chargeTimer != 0) + if (gStatuses3[gBattlerAttacker] & STATUS3_CHARGED_UP) AddMovePoints(PTS_ELECTRIC, move, moveSlot, 0); if (move == MOVE_WISH) diff --git a/src/battle_util.c b/src/battle_util.c index 6170ad0e48..c6199453ea 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -2303,8 +2303,8 @@ enum ENDTURN_HEALBLOCK, ENDTURN_EMBARGO, ENDTURN_LOCK_ON, - ENDTURN_CHARGE, ENDTURN_LASER_FOCUS, + ENDTURN_CHARGE, ENDTURN_TAUNT, ENDTURN_YAWN, ENDTURN_ITEMS2, @@ -2767,7 +2767,7 @@ u8 DoBattlerEndTurnEffects(void) gBattleStruct->turnEffectsTracker++; break; case ENDTURN_CHARGE: // charge - if (gDisableStructs[battler].chargeTimer && --gDisableStructs[battler].chargeTimer == 0) + if (gDisableStructs[battler].chargeTimer > 0 && --gDisableStructs[battler].chargeTimer == 0) gStatuses3[battler] &= ~STATUS3_CHARGED_UP; gBattleStruct->turnEffectsTracker++; break; diff --git a/test/battle/move_effect/charge.c b/test/battle/move_effect/charge.c index e0a782b15f..f95a137993 100644 --- a/test/battle/move_effect/charge.c +++ b/test/battle/move_effect/charge.c @@ -1,9 +1,167 @@ #include "global.h" #include "test/battle.h" -TO_DO_BATTLE_TEST("Charge doubles the damage of the next Electric move of the user"); -TO_DO_BATTLE_TEST("Charge's effect is removed regardless if the next move is Electric or not (Gen 3-8)"); -TO_DO_BATTLE_TEST("Charge's effect is kept until the user uses an Electric move (Gen 9+)"); -TO_DO_BATTLE_TEST("Charge's effect is removed if the user fails using an Electric move (Gen 9+)"); -TO_DO_BATTLE_TEST("Charge's effect does not stack with Electromorphosis"); -TO_DO_BATTLE_TEST("Charge's effect does not stack with Wind Power"); +ASSUMPTIONS +{ + ASSUME(gMovesInfo[MOVE_THUNDERBOLT].power != 0); + ASSUME(gMovesInfo[MOVE_THUNDERBOLT].type == TYPE_ELECTRIC); +} + +SINGLE_BATTLE_TEST("Charge doubles the damage of the next Electric move of the user") +{ + s16 normalDamage = 0; + s16 chargedUpDamage = 0; + + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(player, MOVE_THUNDERBOLT); } + TURN { MOVE(player, MOVE_CHARGE); } + TURN { MOVE(player, MOVE_THUNDERBOLT); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_THUNDERBOLT, player); + HP_BAR(opponent, captureDamage: &normalDamage); + ANIMATION(ANIM_TYPE_MOVE, MOVE_CHARGE, player); + ANIMATION(ANIM_TYPE_MOVE, MOVE_THUNDERBOLT, player); + HP_BAR(opponent, captureDamage: &chargedUpDamage); + } THEN { + EXPECT_MUL_EQ(normalDamage, Q_4_12(2.0), chargedUpDamage); + } +} + +SINGLE_BATTLE_TEST("Charge's effect is kept until the user uses an Electric move (Gen 9+)") +{ + s16 normalDamage = 0; + s16 chargedUpDamage = 0; + + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(player, MOVE_THUNDERBOLT); } + TURN { MOVE(player, MOVE_CHARGE); } + TURN { MOVE(player, MOVE_TACKLE); } + TURN { MOVE(player, MOVE_THUNDERBOLT); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_THUNDERBOLT, player); + HP_BAR(opponent, captureDamage: &normalDamage); + ANIMATION(ANIM_TYPE_MOVE, MOVE_CHARGE, player); + ANIMATION(ANIM_TYPE_MOVE, MOVE_TACKLE, player); + ANIMATION(ANIM_TYPE_MOVE, MOVE_THUNDERBOLT, player); + HP_BAR(opponent, captureDamage: &chargedUpDamage); + } THEN { + EXPECT_MUL_EQ(normalDamage, Q_4_12(2.0), chargedUpDamage); + } +} + +SINGLE_BATTLE_TEST("Charge's effect is removed if the user fails using an Electric move (Gen 9+)") +{ + s16 damage[2]; + + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(player, MOVE_THUNDER); } + TURN { MOVE(player, MOVE_CHARGE); } + TURN { MOVE(player, MOVE_THUNDER, hit: FALSE); } + TURN { MOVE(player, MOVE_THUNDER); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_THUNDER, player); + HP_BAR(opponent, captureDamage: &damage[0]); + ANIMATION(ANIM_TYPE_MOVE, MOVE_CHARGE, player); + ANIMATION(ANIM_TYPE_MOVE, MOVE_THUNDER, player); + HP_BAR(opponent, captureDamage: &damage[1]); + } THEN { + EXPECT_EQ(damage[0], damage[1]); + } +} + +SINGLE_BATTLE_TEST("Charge's effect does not stack with Electromorphosis or Wind Power") +{ + u32 species, ability; + s16 normalDamage = 0; + s16 chargedUpDamage = 0; + + PARAMETRIZE { species = SPECIES_WATTREL; ability = ABILITY_WIND_POWER; } + PARAMETRIZE { species = SPECIES_TADBULB; ability = ABILITY_ELECTROMORPHOSIS; } + + GIVEN { + ASSUME(gMovesInfo[MOVE_AIR_CUTTER].windMove == TRUE); + PLAYER(species) { Ability(ability); } + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(player, MOVE_THUNDERBOLT); } + TURN { MOVE(player, MOVE_CHARGE); MOVE(opponent, MOVE_AIR_CUTTER); } + TURN { MOVE(player, MOVE_THUNDERBOLT); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_THUNDERBOLT, player); + HP_BAR(opponent, captureDamage: &normalDamage); + ANIMATION(ANIM_TYPE_MOVE, MOVE_CHARGE, player); + ANIMATION(ANIM_TYPE_MOVE, MOVE_AIR_CUTTER, opponent); + ABILITY_POPUP(player, ability); + ANIMATION(ANIM_TYPE_MOVE, MOVE_THUNDERBOLT, player); + HP_BAR(opponent, captureDamage: &chargedUpDamage); + } THEN { + EXPECT_MUL_EQ(normalDamage, Q_4_12(2.0), chargedUpDamage); + } +} + +SINGLE_BATTLE_TEST("Charge's effect is removed regardless if the next move is Electric or not (Gen 3-8)") +{ + s16 normalDamage = 0; + s16 chargedUpDamage = 0; + + GIVEN { + ASSUME(gMovesInfo[MOVE_TACKLE].type != TYPE_ELECTRIC); + ASSUME(gMovesInfo[MOVE_TACKLE].power != 0); + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET); + } WHEN { + TURN { MOVE(player, MOVE_THUNDERBOLT); } + TURN { MOVE(player, MOVE_CHARGE); } + TURN { MOVE(player, MOVE_TACKLE); } + TURN { MOVE(player, MOVE_THUNDERBOLT); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_THUNDERBOLT, player); + HP_BAR(opponent, captureDamage: &normalDamage); + ANIMATION(ANIM_TYPE_MOVE, MOVE_CHARGE, player); + ANIMATION(ANIM_TYPE_MOVE, MOVE_TACKLE, player); + ANIMATION(ANIM_TYPE_MOVE, MOVE_THUNDERBOLT, player); + HP_BAR(opponent, captureDamage: &chargedUpDamage); + } THEN { + if (B_CHARGE < GEN_9) + EXPECT_EQ(normalDamage, chargedUpDamage); + else + EXPECT_MUL_EQ(normalDamage, Q_4_12(2.0), chargedUpDamage); + } +} + +SINGLE_BATTLE_TEST("Charge will not expire if it flinches twice in a row") +{ + s16 normalDamage = 0; + s16 chargedUpDamage = 0; + + GIVEN { + PLAYER(SPECIES_WOBBUFFET); + OPPONENT(SPECIES_WOBBUFFET) { Item(ITEM_LUM_BERRY); } + } WHEN { + TURN { MOVE(player, MOVE_THUNDERBOLT); } + TURN { MOVE(player, MOVE_CHARGE); } + TURN { MOVE(opponent, MOVE_IRON_HEAD); MOVE(player, MOVE_THUNDERBOLT); } + TURN { MOVE(opponent, MOVE_IRON_HEAD); MOVE(player, MOVE_THUNDERBOLT); } + TURN { MOVE(player, MOVE_THUNDERBOLT); } + } SCENE { + ANIMATION(ANIM_TYPE_MOVE, MOVE_THUNDERBOLT, player); + HP_BAR(opponent, captureDamage: &normalDamage); + ANIMATION(ANIM_TYPE_MOVE, MOVE_CHARGE, player); + ANIMATION(ANIM_TYPE_MOVE, MOVE_THUNDERBOLT, player); + HP_BAR(opponent, captureDamage: &chargedUpDamage); + } THEN { + if (B_CHARGE < GEN_9) + EXPECT_EQ(normalDamage, chargedUpDamage); + else + EXPECT_MUL_EQ(normalDamage, Q_4_12(2.0), chargedUpDamage); + } +} From 213c097dc0f48036814670b367c187a15b20ae35 Mon Sep 17 00:00:00 2001 From: Cafei <46283144+Cafeei@users.noreply.github.com> Date: Wed, 28 Aug 2024 13:47:08 +0400 Subject: [PATCH 28/32] Paldean Wooper and Clodsire followers (#5277) --- graphics/pokemon/clodsire/overworld.png | Bin 0 -> 856 bytes .../pokemon/clodsire/overworld_normal.pal | 19 ++++++++++++++++++ graphics/pokemon/clodsire/overworld_shiny.pal | 19 ++++++++++++++++++ .../wooper/wooper_paldean/overworld.png | Bin 0 -> 503 bytes .../wooper_paldean/overworld_normal.pal | 19 ++++++++++++++++++ .../wooper/wooper_paldean/overworld_shiny.pal | 19 ++++++++++++++++++ spritesheet_rules.mk | 6 ++++++ src/data/graphics/pokemon.h | 12 +++++------ .../object_event_pic_tables_followers.h | 4 ++-- .../pokemon/species_info/gen_2_families.h | 16 +++++++++++++++ 10 files changed, 106 insertions(+), 8 deletions(-) create mode 100644 graphics/pokemon/clodsire/overworld.png create mode 100644 graphics/pokemon/clodsire/overworld_normal.pal create mode 100644 graphics/pokemon/clodsire/overworld_shiny.pal create mode 100644 graphics/pokemon/wooper/wooper_paldean/overworld.png create mode 100644 graphics/pokemon/wooper/wooper_paldean/overworld_normal.pal create mode 100644 graphics/pokemon/wooper/wooper_paldean/overworld_shiny.pal diff --git a/graphics/pokemon/clodsire/overworld.png b/graphics/pokemon/clodsire/overworld.png new file mode 100644 index 0000000000000000000000000000000000000000..7ffdd7a21e7ab9bd0f567c08422fb140b78cb00a GIT binary patch literal 856 zcmV-e1E>6nP)Px#Fi=cXMVQc_Ks+#jY+zteNH8cM5D*Z!prFvu&?y=Vl6!ejL`Y~fIIvh~_>7Pyg7as*eh^eut=i z9H02aC;q3%7@PF6;LVY9$Qh;xG0pK#3QGYIpvTvYLB0^Y_xN_rDZbXBox%u@R0gvk zUl-;n!eujfxkDR;kIa)#2@w3VQLrlh!l7@*T45^4DdB5^|GJO>Ge9rKn!Q8cj;b)g zoB)7}lk}dz&Y>R&QW#_210f)RU@wqx`6mVf*t&|~OB!LNFt1_nnZURL2w+_xjuln_ zb19ktKKXh4D~0P4@G){9YJmwLGjOi*7p zm+Sk`q)9rIlsaF_D_IDw0yW1{;V%N-Ccp@x9dvk*q#=DshZMXHUvT3-Xch35+4tE} z;o9NP5N4m}1ns0YH)83K#z($X>G1as2N1U=qkygr#6=UBD$El<_$LH#3#Nl`a#nW^ z$&AEzRe=48WECWV6K7Tm1Bf}GUBvFlGJS9(L%j@wy+zI)ioG}l5j9A@6WA(fI2ye3 z)C!+x2N9sKeosIyis6w;Nx+vu`exuqg3TdKFa{M^6MBKo0*gSWuq1%_64ISap~!q? zK(698i2@t=iQtz*dJ{@wa?tp!0;+I#GvVNa!u=#jpx_fsw6|PF0!Io=00~b14%`mu zeNqVw@G!6);Jm|ltb_zwVSFUiL;2`*;>aZ8xJ(eANBkZv1Gu0$G$bPF!b3AW`a()P z0$T+X;$W5v57^+i{}Hl&V8BR)H?h;|0M0)SSqwzPNEA98W5IZ@=oPjR>;f5J%guPX2U1{>o?VGLh5s#pHt(S~9s+BJB9bRyuJFg9Q0nwMV(k#E5{8z{CfcNb iCpHePk-Zc63*!&kk0oqc0f!&}0000Px#Fi=cXMVZs3V@Y_)vD;NcLTFM^5D*ZllahjGW}bnw|Ns9kBqOvzLH}xV00000 z000000NO{vy8r+IbxA})R9J=Wmg{c9Fbsto64&7Of8ZUb?N){_L)ErFJ_scAInJ?@ zrdgI!sZ=VJN~Kb%RGK2_ANlq4D>M5szsyOJ;R#=e*HuH<2?=?7=Ivd6aeB>2U^75N z3a2o{l^_P;I{F)F}UKF6Df07V?xyHb>97jWWs1$&vgK8Uc6 z!Gq5=FeV_`$J_Jk=@IbxnnG&y#;f4qeh%u8MtMi^9^*0J@`Jaa2?$FqT_??J-*C{uD=8Z tNdtlenj^j~C8Mv7kMC+f2`K%wJ^ Date: Wed, 28 Aug 2024 13:40:35 +0200 Subject: [PATCH 29/32] Shed Tail Retarget (#5275) Re-targets Shed Tail PR to upcoming --- include/battle_ai_util.h | 1 + src/battle_ai_main.c | 34 +++++++++---------------- src/battle_ai_util.c | 39 +++++++++++++++++++++++++++++ test/battle/move_effect/shed_tail.c | 13 ++++++++++ 4 files changed, 65 insertions(+), 22 deletions(-) diff --git a/include/battle_ai_util.h b/include/battle_ai_util.h index 94d895e8fd..04920cb3a2 100644 --- a/include/battle_ai_util.h +++ b/include/battle_ai_util.h @@ -205,5 +205,6 @@ bool32 AI_ShouldCopyStatChanges(u32 battlerAtk, u32 battlerDef); bool32 AI_ShouldSetUpHazards(u32 battlerAtk, u32 battlerDef, struct AiLogicData *aiData); void IncreaseTidyUpScore(u32 battlerAtk, u32 battlerDef, u32 move, s32 *score); bool32 AI_ShouldSpicyExtract(u32 battlerAtk, u32 battlerAtkPartner, u32 move, struct AiLogicData *aiData); +void IncreaseSubstituteMoveScore(u32 battlerAtk, u32 battlerDef, u32 move, s32 *score); #endif //GUARD_BATTLE_AI_UTIL_H diff --git a/src/battle_ai_main.c b/src/battle_ai_main.c index 55b38f7ad7..e6e35a3388 100644 --- a/src/battle_ai_main.c +++ b/src/battle_ai_main.c @@ -1531,6 +1531,16 @@ static s32 AI_CheckBadMove(u32 battlerAtk, u32 battlerDef, u32 move, s32 score) else if (HasSubstituteIgnoringMove(battlerDef)) ADJUST_SCORE(-8); break; + case EFFECT_SHED_TAIL: + if (CountUsablePartyMons(battlerAtk) == 0) + ADJUST_SCORE(-10); + if (gBattleMons[battlerAtk].status2 & STATUS2_SUBSTITUTE || aiData->abilities[battlerDef] == ABILITY_INFILTRATOR) + ADJUST_SCORE(-8); + else if (aiData->hpPercents[battlerAtk] <= 50) + ADJUST_SCORE(-10); + else if (HasSubstituteIgnoringMove(battlerDef)) + ADJUST_SCORE(-8); + break; case EFFECT_LEECH_SEED: if (gStatuses3[battlerDef] & STATUS3_LEECHSEED || IS_BATTLER_OF_TYPE(battlerDef, TYPE_GRASS) @@ -3582,28 +3592,8 @@ static u32 AI_CalcMoveEffectScore(u32 battlerAtk, u32 battlerDef, u32 move) IncreaseParalyzeScore(battlerAtk, battlerDef, move, &score); break; case EFFECT_SUBSTITUTE: - if (HasAnyKnownMove(battlerDef) && GetBestDmgFromBattler(battlerDef, battlerAtk) < gBattleMons[battlerAtk].maxHP / 4) - ADJUST_SCORE(GOOD_EFFECT); - if (gStatuses3[battlerDef] & STATUS3_PERISH_SONG) - ADJUST_SCORE(GOOD_EFFECT); - if (gBattleMons[battlerDef].status1 & STATUS1_SLEEP) - ADJUST_SCORE(GOOD_EFFECT); - else if (gBattleMons[battlerDef].status1 & (STATUS1_BURN | STATUS1_PSN_ANY | STATUS1_FROSTBITE)) - ADJUST_SCORE(DECENT_EFFECT); - // TODO: - // if (IsPredictedToSwitch(battlerDef, battlerAtk) - // ADJUST_SCORE(DECENT_EFFECT); - if (HasMoveEffect(battlerDef, EFFECT_SLEEP) - || HasMoveEffect(battlerDef, EFFECT_TOXIC) - || HasMoveEffect(battlerDef, EFFECT_POISON) - || HasMoveEffect(battlerDef, EFFECT_PARALYZE) - || HasMoveEffect(battlerDef, EFFECT_WILL_O_WISP) - || HasMoveEffect(battlerDef, EFFECT_CONFUSE) - || HasMoveEffect(battlerDef, EFFECT_LEECH_SEED)) - ADJUST_SCORE(GOOD_EFFECT); - if (!gBattleMons[battlerDef].status2 & (STATUS2_WRAPPED | STATUS2_ESCAPE_PREVENTION && aiData->hpPercents[battlerAtk] > 70)) - ADJUST_SCORE(WEAK_EFFECT); - break; + case EFFECT_SHED_TAIL: + IncreaseSubstituteMoveScore(battlerAtk, battlerDef, move, &score); case EFFECT_MIMIC: if (AI_IsFaster(battlerAtk, battlerDef, move)) { diff --git a/src/battle_ai_util.c b/src/battle_ai_util.c index 8c1cb578ed..0ff5050e38 100644 --- a/src/battle_ai_util.c +++ b/src/battle_ai_util.c @@ -3987,3 +3987,42 @@ bool32 AI_ShouldSpicyExtract(u32 battlerAtk, u32 battlerAtkPartner, u32 move, st && AI_IsFaster(battlerAtk, battlerAtkPartner, TRUE) && HasMoveWithCategory(battlerAtkPartner, DAMAGE_CATEGORY_PHYSICAL)); } + +void IncreaseSubstituteMoveScore(u32 battlerAtk, u32 battlerDef, u32 move, s32 *score) +{ + if (gMovesInfo[move].effect == EFFECT_SUBSTITUTE) // Substitute specific + { + if (HasAnyKnownMove(battlerDef) && GetBestDmgFromBattler(battlerDef, battlerAtk) < gBattleMons[battlerAtk].maxHP / 4) + ADJUST_SCORE_PTR(GOOD_EFFECT); + } + else if (gMovesInfo[move].effect == EFFECT_SHED_TAIL) // Shed Tail specific + { + if ((ShouldPivot(battlerAtk, battlerDef, AI_DATA->abilities[battlerDef], move, AI_THINKING_STRUCT->movesetIndex)) + && (HasAnyKnownMove(battlerDef) && (GetBestDmgFromBattler(battlerDef, battlerAtk) < gBattleMons[battlerAtk].maxHP / 2))) + ADJUST_SCORE_PTR(BEST_EFFECT); + } + + if (gStatuses3[battlerDef] & STATUS3_PERISH_SONG) + ADJUST_SCORE_PTR(GOOD_EFFECT); + + if (gBattleMons[battlerDef].status1 & STATUS1_SLEEP) + ADJUST_SCORE_PTR(GOOD_EFFECT); + else if (gBattleMons[battlerDef].status1 & (STATUS1_BURN | STATUS1_PSN_ANY | STATUS1_FROSTBITE)) + ADJUST_SCORE_PTR(DECENT_EFFECT); + + // TODO: + // if (IsPredictedToSwitch(battlerDef, battlerAtk) + // ADJUST_SCORE_PTR(DECENT_EFFECT); + + if (HasMoveEffect(battlerDef, EFFECT_SLEEP) + || HasMoveEffect(battlerDef, EFFECT_TOXIC) + || HasMoveEffect(battlerDef, EFFECT_POISON) + || HasMoveEffect(battlerDef, EFFECT_PARALYZE) + || HasMoveEffect(battlerDef, EFFECT_WILL_O_WISP) + || HasMoveEffect(battlerDef, EFFECT_CONFUSE) + || HasMoveEffect(battlerDef, EFFECT_LEECH_SEED)) + ADJUST_SCORE_PTR(GOOD_EFFECT); + + if (AI_DATA->hpPercents[battlerAtk] > 70) + ADJUST_SCORE_PTR(WEAK_EFFECT); +} diff --git a/test/battle/move_effect/shed_tail.c b/test/battle/move_effect/shed_tail.c index 55a8950d00..d69993b88b 100644 --- a/test/battle/move_effect/shed_tail.c +++ b/test/battle/move_effect/shed_tail.c @@ -85,3 +85,16 @@ SINGLE_BATTLE_TEST("Shed Tail's HP cost doesn't trigger effects that trigger on NOT MESSAGE("Wobbuffet's Air Balloon popped!"); } } + +AI_SINGLE_BATTLE_TEST("AI will use Shed Tail to pivot to another mon while in damage stalemate with player") +{ + GIVEN { + AI_FLAGS(AI_FLAG_CHECK_BAD_MOVE | AI_FLAG_CHECK_VIABILITY | AI_FLAG_TRY_TO_FAINT); + PLAYER(SPECIES_WOBBUFFET) { Speed(100); Ability(ABILITY_RUN_AWAY); Moves(MOVE_TACKLE, MOVE_CELEBRATE); } + OPPONENT(SPECIES_WOBBUFFET) { Speed(50); Ability(ABILITY_RUN_AWAY); Moves(MOVE_CONFUSION, MOVE_SHED_TAIL); } + OPPONENT(SPECIES_SCIZOR) { Speed(101); Moves(MOVE_CELEBRATE, MOVE_X_SCISSOR); } + } WHEN { + TURN { MOVE(player, MOVE_TACKLE); EXPECT_MOVE(opponent, MOVE_CONFUSION); } + TURN { MOVE(player, MOVE_TACKLE); EXPECT_MOVE(opponent, MOVE_SHED_TAIL); } + } +} From f07189b1be74b37ce19f7792f1f08aad9611109f Mon Sep 17 00:00:00 2001 From: kittenchilly Date: Wed, 28 Aug 2024 15:15:09 -0500 Subject: [PATCH 30/32] More missing AI logic (#5279) * More missing AI logic * Update battle_ai_switch_items.c * Update battle_ai_main.c --- src/battle_ai_main.c | 41 +++++++++++++++++++++++++++++++----- src/battle_ai_switch_items.c | 2 +- 2 files changed, 37 insertions(+), 6 deletions(-) diff --git a/src/battle_ai_main.c b/src/battle_ai_main.c index be8e0eb0e3..cf650f1c14 100644 --- a/src/battle_ai_main.c +++ b/src/battle_ai_main.c @@ -857,6 +857,8 @@ static s32 AI_CheckBadMove(u32 battlerAtk, u32 battlerDef, u32 move, s32 score) case EFFECT_COUNTER: case EFFECT_MIRROR_COAT: case EFFECT_METAL_BURST: + case EFFECT_FINAL_GAMBIT: + case EFFECT_GUARDIAN_OF_ALOLA: break; default: RETURN_SCORE_MINUS(10); @@ -1828,6 +1830,7 @@ static s32 AI_CheckBadMove(u32 battlerAtk, u32 battlerDef, u32 move, s32 score) break; case EFFECT_TRICK: case EFFECT_KNOCK_OFF: + case EFFECT_CORROSIVE_GAS: if (aiData->abilities[battlerDef] == ABILITY_STICKY_HOLD) ADJUST_SCORE(-10); break; @@ -2176,6 +2179,17 @@ static s32 AI_CheckBadMove(u32 battlerAtk, u32 battlerDef, u32 move, s32 score) else if (IsAbilityOfRating(aiData->abilities[battlerAtk], 5)) ADJUST_SCORE(-4); break; + case EFFECT_DOODLE: // Same as Role Play, but also check if the partner's ability should be replaced + if (aiData->abilities[battlerAtk] == aiData->abilities[battlerDef] + || aiData->abilities[BATTLE_PARTNER(battlerAtk)] == aiData->abilities[battlerDef] + || aiData->abilities[battlerDef] == ABILITY_NONE + || gAbilitiesInfo[aiData->abilities[battlerAtk]].cantBeSuppressed + || gAbilitiesInfo[aiData->abilities[BATTLE_PARTNER(battlerAtk)]].cantBeSuppressed + || gAbilitiesInfo[aiData->abilities[battlerDef]].cantBeCopied) + ADJUST_SCORE(-10); + else if (IsAbilityOfRating(aiData->abilities[battlerAtk], 5) || IsAbilityOfRating(aiData->abilities[BATTLE_PARTNER(battlerAtk)], 5)) + ADJUST_SCORE(-4); + break; case EFFECT_WISH: if (gWishFutureKnock.wishCounter[battlerAtk] != 0) ADJUST_SCORE(-10); @@ -2889,7 +2903,7 @@ static s32 AI_DoubleBattle(u32 battlerAtk, u32 battlerDef, u32 move, s32 score) switch (atkPartnerAbility) { case ABILITY_ANGER_POINT: - if (gMovesInfo[move].alwaysCriticalHit == TRUE + if (gMovesInfo[move].alwaysCriticalHit == TRUE && BattlerStatCanRise(battlerAtkPartner, atkPartnerAbility, STAT_ATK) && AI_IsFaster(battlerAtk, battlerAtkPartner, move) && !CanIndexMoveFaintTarget(battlerAtk, battlerAtkPartner, AI_THINKING_STRUCT->movesetIndex, 1)) @@ -3498,6 +3512,7 @@ static u32 AI_CalcMoveEffectScore(u32 battlerAtk, u32 battlerDef, u32 move) break; case EFFECT_MULTI_HIT: case EFFECT_TRIPLE_KICK: + case EFFECT_POPULATION_BOMB: if (AI_MoveMakesContact(aiData->abilities[battlerAtk], aiData->holdEffects[battlerAtk], move) && aiData->abilities[battlerAtk] != ABILITY_MAGIC_GUARD && aiData->holdEffects[battlerDef] == HOLD_EFFECT_ROCKY_HELMET) @@ -4098,11 +4113,27 @@ static u32 AI_CalcMoveEffectScore(u32 battlerAtk, u32 battlerDef, u32 move) } } break; + case EFFECT_CORROSIVE_GAS: + if (CanKnockOffItem(battlerDef, aiData->items[battlerDef])) + { + switch (aiData->holdEffects[battlerDef]) + { + case HOLD_EFFECT_IRON_BALL: + if (HasMoveEffect(battlerDef, EFFECT_FLING)) + ADJUST_SCORE(DECENT_EFFECT); + break; + case HOLD_EFFECT_LAGGING_TAIL: + case HOLD_EFFECT_STICKY_BARB: + break; + default: + ADJUST_SCORE(DECENT_EFFECT); + break; + } + } + break; case EFFECT_ROLE_PLAY: - if (!gAbilitiesInfo[aiData->abilities[battlerAtk]].cantBeSuppressed - && !gAbilitiesInfo[aiData->abilities[battlerDef]].cantBeCopied - && !IsAbilityOfRating(aiData->abilities[battlerAtk], 5) - && IsAbilityOfRating(aiData->abilities[battlerDef], 5)) + case EFFECT_DOODLE: + if (IsAbilityOfRating(aiData->abilities[battlerDef], 5)) ADJUST_SCORE(DECENT_EFFECT); break; case EFFECT_INGRAIN: diff --git a/src/battle_ai_switch_items.c b/src/battle_ai_switch_items.c index ad03c27c9f..b087cf3939 100644 --- a/src/battle_ai_switch_items.c +++ b/src/battle_ai_switch_items.c @@ -2002,7 +2002,7 @@ static u32 GetBestMonIntegrated(struct Pokemon *party, int firstId, int lastId, } // If ace mon is the last available Pokemon and U-Turn/Volt Switch was used - switch to the mon. if (aceMonId != PARTY_SIZE - && (gMovesInfo[gLastUsedMove].effect == EFFECT_HIT_ESCAPE || gMovesInfo[gLastUsedMove].effect == EFFECT_PARTING_SHOT || gMovesInfo[gLastUsedMove].effect == EFFECT_BATON_PASS || gMovesInfo[gLastUsedMove].effect == EFFECT_CHILLY_RECEPTION)) + && (gMovesInfo[gLastUsedMove].effect == EFFECT_HIT_ESCAPE || gMovesInfo[gLastUsedMove].effect == EFFECT_PARTING_SHOT || gMovesInfo[gLastUsedMove].effect == EFFECT_BATON_PASS || gMovesInfo[gLastUsedMove].effect == EFFECT_CHILLY_RECEPTION || gMovesInfo[gLastUsedMove].effect == EFFECT_SHED_TAIL)) return aceMonId; return PARTY_SIZE; From 2ab0dd77de5cde2ca04944cd03b894034a5c9f8e Mon Sep 17 00:00:00 2001 From: Hedara Date: Thu, 29 Aug 2024 15:36:05 +0200 Subject: [PATCH 31/32] Added performance counter --- include/global.h | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/include/global.h b/include/global.h index f5ada78360..783a913106 100644 --- a/include/global.h +++ b/include/global.h @@ -131,6 +131,31 @@ #define FEATURE_FLAG_ASSERT(flag, id) STATIC_ASSERT(flag > TEMP_FLAGS_END || flag == 0, id) +#ifndef NDEBUG +static inline void CycleCountStart() +{ + REG_TM2CNT_H = 0; + REG_TM3CNT_H = 0; + + REG_TM2CNT_L = 0; + REG_TM3CNT_L = 0; + + // init timers (tim3 count up mode, tim2 every clock cycle) + REG_TM3CNT_H = TIMER_ENABLE | TIMER_COUNTUP; + REG_TM2CNT_H = TIMER_1CLK | TIMER_ENABLE; +} + +static inline u32 CycleCountEnd() +{ + // stop timers + REG_TM2CNT_H = 0; + REG_TM3CNT_H = 0; + + // return result + return REG_TM2CNT_L | (REG_TM3CNT_L << 16u); +} +#endif + struct Coords8 { s8 x; From 4f393541855e35e1c5bbc2b98ffd1207cb36378b Mon Sep 17 00:00:00 2001 From: psf <77138753+pkmnsnfrn@users.noreply.github.com> Date: Thu, 29 Aug 2024 13:33:25 -0700 Subject: [PATCH 32/32] Deprecate MMBN Names (#5240) * Removed HANDLE_EXPANDED_MOVE_NAME * Removed HANDLE_EXPANDED_TYPE_NAME * Removed HANDLE_EXPANDED_ITEM_NAME * Removed HANDLE_EXPANDED_SPECIES_NAME * Removed I_EXPANDED_ITEM_NAMES * Removed B_EXPANDED_MOVE_NAMES * Removed B_EXPANDED_TYPE_NAMES * Removed B_EXPANDED_ABILITY_NAMES * Removed B_EXPANDED_ABILITY_NAMES * Added documentation of names * Github markdown spacing is silly * Removed list per https://github.com/rh-hideout/pokeemerald-expansion/pull/5240\#discussion_r1736860339 * Removed list per https://github.com/rh-hideout/pokeemerald-expansion/pull/5240\#discussion_r1736860339 --- docs/mmbn_style_names.md | 300 ++++++++++++++++++ include/config/battle.h | 3 - include/config/item.h | 1 - include/config/test.h | 6 - include/constants/global.h | 8 +- src/data/abilities.h | 200 ------------ src/data/items.h | 264 ++++++++------- src/data/moves_info.h | 270 ++++++++-------- src/data/pokemon/species_info.h | 6 - .../pokemon/species_info/gen_2_families.h | 4 +- .../pokemon/species_info/gen_5_families.h | 4 +- .../pokemon/species_info/gen_6_families.h | 2 +- .../pokemon/species_info/gen_7_families.h | 4 +- .../pokemon/species_info/gen_8_families.h | 14 +- .../pokemon/species_info/gen_9_families.h | 52 +-- src/data/types_info.h | 14 +- 16 files changed, 609 insertions(+), 543 deletions(-) create mode 100644 docs/mmbn_style_names.md diff --git a/docs/mmbn_style_names.md b/docs/mmbn_style_names.md new file mode 100644 index 0000000000..f9d5f11fe1 --- /dev/null +++ b/docs/mmbn_style_names.md @@ -0,0 +1,300 @@ +# Megaman Battle Network Style Names + +Prior to 1.10, names in expansion that were too long for the game's UIs were truncated to fit using the naming conventions from the [Megaman Battle Network]() series. + +These were removed as part of https://github.com/rh-hideout/pokeemerald-expansion/pull/5240. They are stored here for users that may want to refer back to them or restore them. + +# Table + +Attribute | MMBN | Official +-- | -- | -- +Item | PewtrCrnches | Pewter Crunchies +Item | RageCandyBar | Rage Candy Bar +Item | LumioseGlete | Lumiose Galette +Item | ShalourSable | Shalour Sable +Item | HealthFeather | Health Feather +Item | MuscleFeather | Muscle Feather +Item | ResistFeather | Resist Feather +Item | GeniusFeather | Genius Feather +Item | CleverFeather | Clever Feather +Item | SwiftFeather | Swift Feather +Item | AbilityCapsle | Ability Capsule +Item | AbilityPatch | Ability Patch +Item | AbilityPatches | Ability Patches +Item | Exp.Candy XS | Exp. Candy XS +Item | Exp.Candies XS | Exp. Candies XS +Item | Exp.Candy S | Exp. Candy S +Item | Exp.Candies S | Exp. Candies S +Item | Exp.Candy M | Exp. Candy M +Item | Exp.Candies M | Exp. Candies M +Item | Exp.Candy L | Exp. Candy L +Item | Exp.Candies L | Exp. Candies L +Item | Exp.Candy XL | Exp. Candy XL +Item | Exp.Candies XL | Exp. Candies XL +Item | DynamaxCandy | Dynamax Candy +Item | DynamaxCandies | Dynamax Candies +Item | MaxMushrooms | Max Mushrooms +Item | GoldBottlCap | Gold Bottle Cap +Item | PrettyFeather | Pretty Feather +Item | StrngeSouvnr | Strange Souvenir +Item | FosslzedBird | Fossilized Bird +Item | FosslzedFish | Fossilized Fish +Item | FosslzedFishes | Fossilized Fishes +Item | FosslzedDrke | Fossilized Drake +Item | FosslzedDino | Fossilized Dino +Item | SurprseMulch | Surprise Mulch +Item | YellwApricorn | Yellow Apricorn +Item | GreenApricorn | Green Apricorn +Item | WhiteApricorn | White Apricorn +Item | BlackApricorn | Black Apricorn +Item | WishingPiece | Wishing Piece +Item | GalaricaTwig | Galarica Twig +Item | GalaricaCuff | Galarica Cuff +Item | GalrcaWreath | Galarica Wreath +Item | GalrcaWreathes | Galarica Wreathes +Item | StrwbrySweet | Strawberry Sweet +Item | ElectrcMemory | Electric Memory +Item | ElectrcMemories | Electric Memories +Item | FightngMemory | Fighting Memory +Item | FightngMemories | Fighting Memories +Item | PsychicMemory | Psychic Memory +Item | PsychicMemories | Psychic Memories +Item | RustedSword | Rusted Sword +Item | RustedShield | Rusted Shield +Item | CharizarditeX | Charizardite X +Item | CharizarditeY | Charizardite Y +Item | U-Necrozium Z | Ultranecrozium Z +Item | DeepSeaScale | Deep Sea Scale +Item | DeepSeaTooth | Deep Sea Tooth +Item | Never-MeltIce | Never-Melt Ice +Item | WeaknssPolicy | Weakness Policy +Item | WeaknssPolicies | Weakness Policies +Item | SafetyGoggles | Safety Goggles +Item | AdrenalineOrb | Adrenaline Orb +Item | TerainExtendr | Terrain Extender +Item | ProtectvePads | Protective Pads +Item | Heavy-DtyBts | Heavy-Duty Boots +Item | BlundrPolicy | Blunder Policy +Item | BlundrPolicies | Blunder Policies +Item | UtltyUmbrlla | Utility Umbrella +Item | CatchngCharm | Catching Charm +Item | RotomCatalog | Rotom Catalog +Item | ReinsOfUnity | Reins of Unity +Item | Dowsing MCHN | Dowsing Machine +Item | AbilityShield | Ability Shield +Item | PunchingGlove | Punching Glove +Item | AuspciousArmr | Auspicious Armor +Item | BoosterEnergy | Booster Energy +Item | BoosterEnergies | Booster Energies +Item | BigBmbooShoot | Big Bamboo Shoot +Item | GimighoulCoin | Gimmighoul Coin +Item | Leader'sCrest | Leader's Crest +Item | MaliciousArmr | Malicious Armor +Item | ScrllOfDrknss | Scroll of Darkness +Item | ScrllsOfDrknss | Scrolls of Darkness +Item | ScrollOfWatrs | Scroll of Waters +Item | ScrollsOfWatrs | Scrolls of Waters +Item | TinyBmbooShot | Tiny Bamboo Shoot +Item | Bug TeraShard | Bug Tera Shard +Item | DarkTeraShard | Dark Tera Shard +Item | DragnTeraShrd | Dragon Tera Shard +Item | EltrcTeraShrd | Electric Tera Shard +Item | FairyTeraShrd | Fairy Tera Shard +Item | FghtngTerShrd | Fighting Tera Shard +Item | FireTeraShard | Fire Tera Shard +Item | FlyngTeraShrd | Flying Tera Shard +Item | GhostTeraShrd | Ghost Tera Shard +Item | GrassTeraShrd | Grass Tera Shard +Item | GrondTeraShrd | Ground Tera Shard +Item | Ice TeraShard | Ice Tera Shard +Item | NormlTeraShrd | Normal Tera Shard +Item | PoisnTeraShrd | Poison Tera Shard +Item | PschcTeraShrd | Psychic Tera Shard +Item | RockTeraShard | Rock Tera Shard +Item | SteelTeraShrd | Steel Tera Shard +Item | WaterTeraShrd | Water Tera Shard +Item | AdamantCrystl | Adamant Crystal +Item | LustrousGlobe | Lustrous Globe +Item | BlackAugurite | Black Augurite +Item | UnrmkblTeacup | Unremarkable Teacup +Item | MstrpceTeacup | Masterpiece Teacup +Item | CornrstneMask | Cornerstone Mask +Item | WellsprngMask | Wellspring Mask +Item | HrthflameMask | Hearthflame Mask +Item | FrshStrtMochi | Fresh Start Mochi +Item | GlmmringCharm | Glimmering Charm +Item | StllrTeraShrd | Stellar Tera Shard +Item | JublifeMuffin | Jubilife Muffin +Item | AuxPowerguard | Aux Powerguard +Item | ChoiceDumplng | Choice Dumpling +Item | 2xSpicedRadsh | Twice-Spiced Radish +Move | ThunderPunch | Thunder Punch +Move | PoisonPowder | Poison Powder +Move | ThunderShock | Thunder Shock +Move | SelfDestruct | Self-Destruct +Move | HighJumpKick | High Jump Kick +Move | DynamicPunch | Dynamic Punch +Move | DragonBreath | Dragon Breath +Move | ExtremeSpeed | Extreme Speed +Move | AncientPower | Ancient Power +Move | SmellngSalts | Smelling Salts +Move | FeatherDance | Feather Dance +Move | GrassWhistle | Grass Whistle +Move | PhantomForce | Phantom Force +Move | TrickOrTreat | Trick-or-Treat +Move | ParabolcChrg | Parabolic Charge +Move | Forest'sCurs | Forest's Curse +Move | PetalBlizzrd | Petal Blizzard +Move | DisrmngVoice | Disarming Voice +Move | DrainingKiss | Draining Kiss +Move | CraftyShield | Crafty Shield +Move | FlowerShield | Flower Shield +Move | GrssyTerrain | Grassy Terrain +Move | MistyTerrain | Misty Terrain +Move | King'sShield | King's Shield +Move | DiamondStorm | Diamond Storm +Move | SteamErption | Steam Eruption +Move | HyprspceHole | Hyperspace Hole +Move | WatrShuriken | Water Shuriken +Move | MysticalFire | Mystical Fire +Move | AromaticMist | Aromatic Mist +Move | EerieImpulse | Eerie Impulse +Move | MagneticFlux | Magnetic Flux +Move | ElctrcTrrain | Electric Terrain +Move | DazzlngGleam | Dazzling Gleam +Move | BabyDollEyes | Baby-Doll Eyes +Move | PowerUpPunch | Power-Up Punch +Move | OblivionWing | Oblivion Wing +Move | ThousndArrws | Thousand Arrows +Move | ThousndWaves | Thousand Waves +Move | LightOfRuin | Light Of Ruin +Move | PrcipceBldes | Precipice Blades +Move | DragonAscent | Dragon Ascent +Move | HyprspceFury | Hyperspace Fury +Move | FrstImpressn | First Impression +Move | BanefulBunkr | Baneful Bunker +Move | SpiritShackl | Spirit Shackle +Move | DarkstLariat | Darkest Lariat +Move | SparklngAria | Sparkling Aria +Move | FloralHealng | Floral Healing +Move | HighHorsepwr | High Horsepower +Move | PsychcTrrain | Psychic Terrain +Move | RvlationDnce | Revelation Dance +Move | CoreEnforcer | Core Enforcer +Move | ClngngScales | Clanging Scales +Move | DragonHammer | Dragon Hammer +Move | PsychicFangs | Psychic Fangs +Move | StmpngTantrm | Stomping Tantrum +Move | PrsmaticLasr | Prismatic Laser +Move | SpectrlThief | Spectral Thief +Move | SnsteelStrke | Sunsteel Strike +Move | MoongestBeam | Moongeist Beam +Move | Natur'sMadns | Nature's Madness +Move | PhotonGeyser | Photon Geyser +Move | SplishySplsh | Splishy Splash +Move | BouncyBubble | Bouncy Bubble +Move | SparklySwirl | Sparkly Swirl +Move | VeeveeVolley | Veevee Volley +Move | DublIronBash | Double Iron Bash +Move | DynamxCannon | Dynamax Cannon +Move | FishiousRend | Fishious Rend +Move | ClngrousSoul | Clangorous Soul +Move | BehemthBlade | Behemoth Blade +Move | BehemothBash | Behemoth Bash +Move | BreakngSwipe | Breaking Swipe +Move | StrangeSteam | Strange Steam +Move | FalsSurrendr | False Surrender +Move | MeteorAssalt | Meteor Assault +Move | ExpandngForc | Expanding Force +Move | ShellSideArm | Shell Side Arm +Move | MstyExplsion | Misty Explosion +Move | RisngVoltage | Rising Voltage +Move | TerrainPulse | Terrain Pulse +Move | SkitterSmack | Skitter Smack +Move | BrningJelosy | Burning Jealousy +Move | CorrosiveGas | Corrosive Gas +Move | DualWingbeat | Dual Wingbeat +Move | ScorchngSnds | Scorching Sands +Move | JungleHealng | Jungle Healing +Move | SurgngStrkes | Surging Strikes +Move | DragonEnergy | Dragon Energy +Move | FreezngGlare | Freezing Glare +Move | ThnderusKick | Thunderous Kick +Move | GlacialLance | Glacial Lance +Move | AstrlBarrage | Astral Barrage +Move | PsyshieldBsh | Psyshield Bash +Move | SprngtdeStrm | Springtide Storm +Move | MystcalPower | Mystical Power +Move | MountainGale | Mountain Gale +Move | VictoryDance | Victory Dance +Move | HeadlongRush | Headlong Rush +Move | BitterMalice | Bitter Malice +Move | TripleArrows | Triple Arrows +Move | InfrnlParade | Infernal Parade +Move | CeaslessEdge | Ceaseless Edge +Move | BlekwndStorm | Bleakwind Storm +Move | WildbltStorm | Wildbolt Storm +Move | SndsearStorm | Sandsear Storm +Move | LunarBlessng | Lunar Blessing +Move | LastRespects | Last Respects +Move | SpicyExtract | Spicy Extract +Move | PoplatinBomb | Population Bomb +Move | RevivlBlesng | Revival Blessing +Move | KowtowCleave | Kowtow Cleave +Move | ColisinCours | Collision Course +Move | ElectroDrift | Electro Drift +Move | ChilReceptin | Chilly Reception +Move | ChillingWatr | Chilling Water +Move | GigatonHammr | Gigaton Hammer +Move | BlazngTorque | Blazing Torque +Move | WickedTorque | Wicked Torque +Move | NoxiusTorque | Noxious Torque +Move | CombatTorque | Combat Torque +Move | MagiclTorque | Magical Torque +Move | MatchaGotcha | Matcha Gotcha +Move | TeraStarstrm | Tera Starstorm +Move | BurnngBulwrk | Burning Bulwark +Move | MightyCleave | Mighty Cleave +Move | TachyonCuttr | Tachyon Cutter +Move | AllurngVoice | Alluring Voice +Move | SuprcellSlam | Supercell Slam +Move | PsychicNoise | Psychic Noise +Move | MalignntChan | Malignant Chain +Species | Dudunsprce | Dudunsparce +Species | Corvisquir | Corvisquire +Species | Corviknigh | Corviknight +Species | Barraskewd | Barraskewda +Species | Centiskorc | Centiskorch +Species | Polteageis | Polteageist +Species | Stonjourne | Stonjourner +Species | Meowscarad | Meowscarada +Species | Sqawkabily | Squawkabilly +Species | Kilowatrel | Kilowattrel +Species | Brmblghast | Brambleghast +Species | ScreamTail | Scream Tail +Species | BruteBonet | Brute Bonnet +Species | FluttrMane | Flutter Mane +Species | SlithrWing | Slither Wing +Species | SndyShocks | Sandy Shocks +Species | IronTreads | Iron Treads +Species | IronBundle | Iron Bundle +Species | IronJuguls | Iron Jugulis +Species | IronThorns | Iron Thorns +Species | RoarngMoon | Roaring Moon +Species | IronVliant | Iron Valiant +Species | WalkngWake | Walking Wake +Species | IronLeaves | Iron Leaves +Species | Ptchageist | Poltchageist +Species | Fezndipiti | Fezandipiti +Species | GouginFire | Gouging Fire +Species | RagingBolt | Raging Bolt +Species | IronBouldr | Iron Boulder +Species | Crabminabl | Crabominable +Species | Blacephaln | Blacephalon +Species | Bsculegion | Basculegion +Species | Flechinder | Fletchinder +Type | Fight | Fighting +Type | Electr | Electric +Type | Psychc | Psychic +Type | Stellr | Stellar + diff --git a/include/config/battle.h b/include/config/battle.h index 12b694cd0e..8ddea8e311 100644 --- a/include/config/battle.h +++ b/include/config/battle.h @@ -39,7 +39,6 @@ #define B_MULTIPLE_TARGETS_DMG GEN_LATEST // In Gen4+, damage dealt by moves that hit multiple targets at once is reduced to 75%. Before, it was 50%. // Type settings -#define B_EXPANDED_TYPE_NAMES TRUE // If TRUE, type names are increased from 6 characters to 8 characters. #define B_GHOSTS_ESCAPE GEN_LATEST // In Gen6+, abilities like Shadow Tag or moves like Mean Look fail on Ghost-type Pokémon. They can also escape any Wild Battle. #define B_PARALYZE_ELECTRIC GEN_LATEST // In Gen6+, Electric-type Pokémon can't be paralyzed. #define B_POWDER_GRASS GEN_LATEST // In Gen6+, Grass-type Pokémon are immune to powder and spore moves. @@ -124,7 +123,6 @@ #define B_CHARGE GEN_LATEST // In Gen8-, Charge status is lost regardless of the typing of the next move. // Ability settings -#define B_EXPANDED_ABILITY_NAMES TRUE // If TRUE, ability names are increased from 12 characters to 16 characters. #define B_ABILITY_WEATHER GEN_LATEST // In Gen6+, ability-induced weather lasts 5 turns. Before, it lasted until the battle ended or until it was changed by a move or a different weather-affecting ability. #define B_GALE_WINGS GEN_LATEST // In Gen7+ requires full HP to trigger. #define B_STANCE_CHANGE_FAIL GEN_LATEST // In Gen7+, Stance Change fails if the Pokémon is unable to use a move because of confusion, paralysis, etc. In Gen6, it doesn't. @@ -222,7 +220,6 @@ #define B_SHOW_TARGETS TRUE // If set to TRUE, all available targets, for moves hitting 2 or 3 Pokémon, will be shown before selecting a move. #define B_SHOW_CATEGORY_ICON TRUE // If set to TRUE, it will show an icon in the summary and move relearner showing the move's category. #define B_HIDE_HEALTHBOX_IN_ANIMS TRUE // If set to TRUE, hides healthboxes during move animations. -#define B_EXPANDED_MOVE_NAMES TRUE // If set to FALSE, move names are decreased from 16 characters to 12 characters. #define B_WAIT_TIME_MULTIPLIER 16 // This determines how long text pauses in battle last. Vanilla is 16. Lower values result in faster battles. #define B_QUICK_MOVE_CURSOR_TO_RUN FALSE // If set to TRUE, pushing B in the battle options against a wild encounter will move the cursor to the run option #define B_MOVE_DESCRIPTION_BUTTON L_BUTTON // If set to a button other than B_LAST_USED_BALL_BUTTON, pressing this button will open the move description menu diff --git a/include/config/item.h b/include/config/item.h index 272848e82e..67916cbe4d 100644 --- a/include/config/item.h +++ b/include/config/item.h @@ -2,7 +2,6 @@ #define GUARD_CONFIG_ITEM_H // Item config -#define I_EXPANDED_ITEM_NAMES TRUE // If set to FALSE, item names are decreased from 20 characters to 14 characters. #define I_SHINY_CHARM_ADDITIONAL_ROLLS 2 // Amount of additional shiny rolls if the player has the Shiny Charm. Set it to 0 to disable Shiny Charm's effects. #define I_KEY_FOSSILS GEN_LATEST // In Gen4+, all Gen 3 fossils became regular items. #define I_KEY_ESCAPE_ROPE GEN_LATEST // In Gen8, Escape Rope became a Key Item. Keep in mind, this will make it free to buy in marts. diff --git a/include/config/test.h b/include/config/test.h index bd721beb9d..708c2ca581 100644 --- a/include/config/test.h +++ b/include/config/test.h @@ -1,14 +1,8 @@ #ifndef GUARD_CONFIG_TEST_H #define GUARD_CONFIG_TEST_H -#undef B_EXPANDED_MOVE_NAMES -#define B_EXPANDED_MOVE_NAMES TRUE -#undef I_EXPANDED_ITEM_NAMES -#define I_EXPANDED_ITEM_NAMES TRUE #undef POKEMON_NAME_LENGTH #define POKEMON_NAME_LENGTH 12 -#undef B_EXPANDED_TYPE_NAMES -#define B_EXPANDED_TYPE_NAMES TRUE #undef P_MEGA_EVOLUTIONS #define P_MEGA_EVOLUTIONS TRUE diff --git a/include/constants/global.h b/include/constants/global.h index 6d2fbe81c7..7e26bd5a0d 100644 --- a/include/constants/global.h +++ b/include/constants/global.h @@ -103,7 +103,7 @@ #define CONTEST_CATEGORIES_COUNT 5 // string lengths -#define ITEM_NAME_LENGTH ((I_EXPANDED_ITEM_NAMES == TRUE) ? 20 : 14) +#define ITEM_NAME_LENGTH 20 #define ITEM_NAME_PLURAL_LENGTH ITEM_NAME_LENGTH + 2 // 2 is used for the instance where a word's suffix becomes y->ies #define POKEMON_NAME_LENGTH 12 #define VANILLA_POKEMON_NAME_LENGTH 10 @@ -111,15 +111,15 @@ #define PLAYER_NAME_LENGTH 7 #define MAIL_WORDS_COUNT 9 #define EASY_CHAT_BATTLE_WORDS_COUNT 6 -#define MOVE_NAME_LENGTH ((B_EXPANDED_MOVE_NAMES == TRUE) ? 16 : 12) +#define MOVE_NAME_LENGTH 16 #define NUM_QUESTIONNAIRE_WORDS 4 #define QUIZ_QUESTION_LEN 9 #define WONDER_CARD_TEXT_LENGTH 40 #define WONDER_NEWS_TEXT_LENGTH 40 #define WONDER_CARD_BODY_TEXT_LINES 4 #define WONDER_NEWS_BODY_TEXT_LINES 10 -#define TYPE_NAME_LENGTH ((B_EXPANDED_TYPE_NAMES == TRUE) ? 8 : 6) -#define ABILITY_NAME_LENGTH ((B_EXPANDED_ABILITY_NAMES == TRUE) ? 16 : 12) +#define TYPE_NAME_LENGTH 8 +#define ABILITY_NAME_LENGTH 16 #define TRAINER_NAME_LENGTH 10 #define MAX_STAMP_CARD_STAMPS 7 diff --git a/src/data/abilities.h b/src/data/abilities.h index ccb27ffe35..c09107ab94 100644 --- a/src/data/abilities.h +++ b/src/data/abilities.h @@ -110,11 +110,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_COMPOUND_EYES] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Compound Eyes"), - #else - .name = _("CompoundEyes"), - #endif .description = COMPOUND_STRING("Raises accuracy."), .aiRating = 7, }, @@ -244,11 +240,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_LIGHTNING_ROD] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Lightning Rod"), - #else - .name = _("LightningRod"), - #endif .description = COMPOUND_STRING("Draws electrical moves."), .aiRating = 7, .breakable = TRUE, @@ -1328,11 +1320,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_STANCE_CHANGE] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Stance Change"), - #else - .name = _("StanceChange"), - #endif .description = COMPOUND_STRING("Transforms as it battles."), .aiRating = 10, .cantBeCopied = TRUE, @@ -1351,11 +1339,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_MEGA_LAUNCHER] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Mega Launcher"), - #else - .name = _("MegaLauncher"), - #endif .description = COMPOUND_STRING("Boosts pulse moves."), .aiRating = 7, }, @@ -1405,11 +1389,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_PARENTAL_BOND] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Parental Bond"), - #else - .name = _("ParentalBond"), - #endif .description = COMPOUND_STRING("Moves hit twice."), .aiRating = 10, }, @@ -1437,22 +1417,14 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_PRIMORDIAL_SEA] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Primordial Sea"), - #else - .name = _("PrimrdialSea"), - #endif .description = COMPOUND_STRING("Summons heavy rain."), .aiRating = 10, }, [ABILITY_DESOLATE_LAND] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Desolate Land"), - #else - .name = _("DesolateLand"), - #endif .description = COMPOUND_STRING("Summons intense sunlight."), .aiRating = 10, }, @@ -1480,22 +1452,14 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_EMERGENCY_EXIT] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Emergency Exit"), - #else - .name = _("EmergncyExit"), - #endif .description = COMPOUND_STRING("Flees at half HP."), .aiRating = 3, }, [ABILITY_WATER_COMPACTION] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Water Compaction"), - #else - .name = _("WtrCmpaction"), - #endif .description = COMPOUND_STRING("Water boosts Defense."), .aiRating = 4, }, @@ -1629,11 +1593,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_POWER_CONSTRUCT] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Power Construct"), - #else - .name = _("PwrConstruct"), - #endif .description = COMPOUND_STRING("Cells aid it when weakened."), .aiRating = 10, .cantBeCopied = TRUE, @@ -1664,11 +1624,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_QUEENLY_MAJESTY] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Queenly Majesty"), - #else - .name = _("QueenlyMjsty"), - #endif .description = COMPOUND_STRING("Protects from priority."), .aiRating = 6, .breakable = TRUE, @@ -1720,11 +1676,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_TANGLING_HAIR] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Tangling Hair"), - #else - .name = _("TanglingHair"), - #endif .description = COMPOUND_STRING("Lowers Speed on contact."), .aiRating = 5, }, @@ -1740,11 +1692,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_POWER_OF_ALCHEMY] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Power Of Alchemy"), - #else - .name = _("PwrOfAlchemy"), - #endif .description = COMPOUND_STRING("Copies ally's ability."), .aiRating = 0, .cantBeCopied = TRUE, @@ -1772,22 +1720,14 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_ELECTRIC_SURGE] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Electric Surge"), - #else - .name = _("ElectrcSurge"), - #endif .description = COMPOUND_STRING("Field becomes Electric."), .aiRating = 8, }, [ABILITY_PSYCHIC_SURGE] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Psychic Surge"), - #else - .name = _("PsychicSurge"), - #endif .description = COMPOUND_STRING("Field becomes weird."), .aiRating = 8, }, @@ -1808,22 +1748,14 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_FULL_METAL_BODY] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Full Metal Body"), - #else - .name = _("FullMetalBdy"), - #endif .description = COMPOUND_STRING("Prevents stat reduction."), .aiRating = 4, }, [ABILITY_SHADOW_SHIELD] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Shadow Shield"), - #else - .name = _("ShadowShield"), - #endif .description = COMPOUND_STRING("Halves damage at full HP."), .aiRating = 8, }, @@ -1844,22 +1776,14 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_INTREPID_SWORD] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Intrepid Sword"), - #else - .name = _("IntrepidSwrd"), - #endif .description = COMPOUND_STRING("Ups Attack on entry."), .aiRating = 3, }, [ABILITY_DAUNTLESS_SHIELD] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Dauntless Shield"), - #else - .name = _("DauntlssShld"), - #endif .description = COMPOUND_STRING("Ups Defense on entry."), .aiRating = 3, }, @@ -1886,11 +1810,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_PROPELLER_TAIL] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Propeller Tail"), - #else - .name = _("PropellrTail"), - #endif .description = COMPOUND_STRING("Ignores foe's redirection."), .aiRating = 2, }, @@ -1988,22 +1908,14 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_SCREEN_CLEANER] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Screen Cleaner"), - #else - .name = _("ScreenCleanr"), - #endif .description = COMPOUND_STRING("Removes walls of light."), .aiRating = 3, }, [ABILITY_STEELY_SPIRIT] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Steely Spirit"), - #else - .name = _("SteelySpirit"), - #endif .description = COMPOUND_STRING("Boosts ally's Steel moves."), .aiRating = 2, }, @@ -2017,33 +1929,21 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_WANDERING_SPIRIT] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Wandering Spirit"), - #else - .name = _("WandrngSprit"), - #endif .description = COMPOUND_STRING("Trade abilities on contact."), .aiRating = 2, }, [ABILITY_GORILLA_TACTICS] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Gorilla Tactics"), - #else - .name = _("GorillaTacti"), - #endif .description = COMPOUND_STRING("Ups Attack and locks move."), .aiRating = 4, }, [ABILITY_NEUTRALIZING_GAS] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Neutralizing Gas"), - #else - .name = _("NeutrlzngGas"), - #endif .description = COMPOUND_STRING("All Abilities are nullified."), .aiRating = 5, .cantBeCopied = TRUE, @@ -2062,11 +1962,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_HUNGER_SWITCH] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Hunger Switch"), - #else - .name = _("HungerSwitch"), - #endif .description = COMPOUND_STRING("Changes form each turn."), .aiRating = 2, .cantBeCopied = TRUE, @@ -2091,11 +1987,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_CURIOUS_MEDICINE] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Curious Medicine"), - #else - .name = _("CuriusMedicn"), - #endif .description = COMPOUND_STRING("Remove ally's stat changes."), .aiRating = 3, }, @@ -2116,11 +2008,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_CHILLING_NEIGH] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Chilling Neigh"), - #else - .name = _("ChillngNeigh"), - #endif .description = COMPOUND_STRING("KOs boost Attack stat."), .aiRating = 7, }, @@ -2158,11 +2046,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_LINGERING_AROMA] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Lingering Aroma"), - #else - .name = _("LngerngAroma"), - #endif .description = COMPOUND_STRING("Spreads with contact."), .aiRating = 5, }, @@ -2176,11 +2060,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_THERMAL_EXCHANGE] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Thermal Exchange"), - #else - .name = _("ThrmlExchnge"), - #endif .description = COMPOUND_STRING("Fire hits up Attack."), .aiRating = 4, .breakable = TRUE, @@ -2195,11 +2075,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_PURIFYING_SALT] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Purifying Salt"), - #else - .name = _("PurfyingSalt"), - #endif .description = COMPOUND_STRING("Protected by pure salts."), .aiRating = 6, .breakable = TRUE, @@ -2207,11 +2083,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_WELL_BAKED_BODY] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Well-Baked Body"), - #else - .name = _("WellBakedBdy"), - #endif .description = COMPOUND_STRING("Strengthened by Fire."), .aiRating = 5, .breakable = TRUE, @@ -2235,11 +2107,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_ROCKY_PAYLOAD] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Rocky Payload"), - #else - .name = _("RockyPayload"), - #endif .description = COMPOUND_STRING("Powers up Rock moves."), .aiRating = 6, }, @@ -2277,22 +2145,14 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_ELECTROMORPHOSIS] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Electromorphosis"), - #else - .name = _("Elecmrphosis"), - #endif .description = COMPOUND_STRING("Gets Charged when hit."), .aiRating = 5, }, [ABILITY_PROTOSYNTHESIS] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Protosynthesis"), - #else - .name = _("Protosnthsis"), - #endif .description = COMPOUND_STRING("Sun boosts best stat."), .aiRating = 7, .cantBeCopied = TRUE, @@ -2322,11 +2182,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_VESSEL_OF_RUIN] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Vessel of Ruin"), - #else - .name = _("VesselOfRuin"), - #endif .description = COMPOUND_STRING("Lowers foes' sp. damage."), .aiRating = 5, .breakable = TRUE, @@ -2334,11 +2190,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_SWORD_OF_RUIN] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Sword of Ruin"), - #else - .name = _("SwordOfRuin"), - #endif .description = COMPOUND_STRING("Lowers foes' Defense."), .aiRating = 5, .breakable = TRUE, @@ -2346,11 +2198,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_TABLETS_OF_RUIN] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Tablets of Ruin"), - #else - .name = _("TabltsOfRuin"), - #endif .description = COMPOUND_STRING("Lowers foes' damage."), .aiRating = 5, .breakable = TRUE, @@ -2358,11 +2206,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_BEADS_OF_RUIN] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Beads of Ruin"), - #else - .name = _("BeadsOfRuin"), - #endif .description = COMPOUND_STRING("Lowers foes' Sp. Defense."), .aiRating = 5, .breakable = TRUE, @@ -2370,22 +2214,14 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_ORICHALCUM_PULSE] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Orichalcum Pulse"), - #else - .name = _("OrchlcumPlse"), - #endif .description = COMPOUND_STRING("Summons sunlight in battle."), .aiRating = 8, }, [ABILITY_HADRON_ENGINE] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Hadron Engine"), - #else - .name = _("HadronEngine"), - #endif .description = COMPOUND_STRING("Field becomes Electric."), .aiRating = 8, }, @@ -2413,11 +2249,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_SUPREME_OVERLORD] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Supreme Overlord"), - #else - .name = _("SuprmeOvrlrd"), - #endif .description = COMPOUND_STRING("Inherits fallen's strength."), .aiRating = 6, }, @@ -2454,11 +2286,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_MYCELIUM_MIGHT] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Mycelium Might"), - #else - .name = _("MceliumMight"), - #endif .description = COMPOUND_STRING("Status moves never fail."), .aiRating = 2, }, @@ -2480,11 +2308,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_EMBODY_ASPECT_TEAL_MASK] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Embody Aspect"), - #else - .name = _("EmbodyAspect"), - #endif .description = COMPOUND_STRING("Raises Speed."), .aiRating = 6, .cantBeCopied = TRUE, @@ -2495,11 +2319,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_EMBODY_ASPECT_HEARTHFLAME_MASK] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Embody Aspect"), - #else - .name = _("EmbodyAspect"), - #endif .description = COMPOUND_STRING("Raises Attack."), .aiRating = 6, .cantBeCopied = TRUE, @@ -2510,11 +2330,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_EMBODY_ASPECT_WELLSPRING_MASK] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Embody Aspect"), - #else - .name = _("EmbodyAspect"), - #endif .description = COMPOUND_STRING("Raises Sp. Def."), .aiRating = 6, .cantBeCopied = TRUE, @@ -2525,11 +2341,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_EMBODY_ASPECT_CORNERSTONE_MASK] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Embody Aspect"), - #else - .name = _("EmbodyAspect"), - #endif .description = COMPOUND_STRING("Raises Defense."), .aiRating = 6, .cantBeCopied = TRUE, @@ -2547,11 +2359,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_SUPERSWEET_SYRUP] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Supersweet Syrup"), - #else - .name = _("SuprswtSyrup"), - #endif .description = COMPOUND_STRING("Lowers the foe's Evasion."), .aiRating = 5, }, @@ -2582,11 +2390,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_TERAFORM_ZERO] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Teraform Zero"), - #else - .name = _("TeraformZero"), - #endif .description = COMPOUND_STRING("Removes weather and terrain."), .aiRating = 10, .cantBeCopied = TRUE, @@ -2596,11 +2400,7 @@ const struct Ability gAbilitiesInfo[ABILITIES_COUNT] = [ABILITY_POISON_PUPPETEER] = { - #if B_EXPANDED_ABILITY_NAMES == TRUE .name = _("Poison Puppeteer"), - #else - .name = _("PoisnPuppter"), - #endif .description = COMPOUND_STRING("Confuses poisoned foes."), .aiRating = 8, .cantBeCopied = TRUE, diff --git a/src/data/items.h b/src/data/items.h index f97c4670c1..27d9829899 100644 --- a/src/data/items.h +++ b/src/data/items.h @@ -1,9 +1,3 @@ -#if I_EXPANDED_ITEM_NAMES == TRUE -#define HANDLE_EXPANDED_ITEM_NAME(_name, ...) _(DEFAULT(_name, __VA_ARGS__)) -#else -#define HANDLE_EXPANDED_ITEM_NAME(_name, ...) _(_name) -#endif - #if I_USE_EVO_HELD_ITEMS_FROM_BAG == TRUE #define EVO_HELD_ITEM_TYPE ITEM_USE_PARTY_MENU #define EVO_HELD_ITEM_FIELD_FUNC ItemUseOutOfBattle_EvolutionStone @@ -1159,8 +1153,8 @@ const struct Item gItemsInfo[] = [ITEM_PEWTER_CRUNCHIES] = { - .name = HANDLE_EXPANDED_ITEM_NAME("PewtrCrnches", "Pewter Crunchies"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("PewtrCrnches", "Pewter Crunchies"), + .name = _("Pewter Crunchies"), + .pluralName = _("Pewter Crunchies"), .price = 250, .description = sFullHealDesc, .pocket = POCKET_ITEMS, @@ -1175,7 +1169,7 @@ const struct Item gItemsInfo[] = [ITEM_RAGE_CANDY_BAR] = { - .name = HANDLE_EXPANDED_ITEM_NAME("RageCandyBar", "Rage Candy Bar"), + .name = _("Rage Candy Bar"), .price = (I_PRICE >= GEN_7) ? 350 : 300, .description = sFullHealDesc, .pocket = POCKET_ITEMS, @@ -1239,7 +1233,7 @@ const struct Item gItemsInfo[] = [ITEM_LUMIOSE_GALETTE] = { - .name = HANDLE_EXPANDED_ITEM_NAME("LumioseGlete", "Lumiose Galette"), + .name = _("Lumiose Galette"), .price = (I_PRICE >= GEN_7) ? 350 : 200, .description = sFullHealDesc, .pocket = POCKET_ITEMS, @@ -1254,7 +1248,7 @@ const struct Item gItemsInfo[] = [ITEM_SHALOUR_SABLE] = { - .name = HANDLE_EXPANDED_ITEM_NAME("ShalourSable", "Shalour Sable"), + .name = _("Shalour Sable"), .price = (I_PRICE >= GEN_7) ? 350 : 200, .description = sFullHealDesc, .pocket = POCKET_ITEMS, @@ -1425,7 +1419,7 @@ const struct Item gItemsInfo[] = [ITEM_HEALTH_FEATHER] = { - .name = HANDLE_EXPANDED_ITEM_NAME("HealthFeather", "Health Feather"), + .name = _("Health Feather"), .price = (I_PRICE >= GEN_7) ? 300 : 3000, .description = sHealthFeatherDesc, .pocket = POCKET_ITEMS, @@ -1439,7 +1433,7 @@ const struct Item gItemsInfo[] = [ITEM_MUSCLE_FEATHER] = { - .name = HANDLE_EXPANDED_ITEM_NAME("MuscleFeather", "Muscle Feather"), + .name = _("Muscle Feather"), .price = (I_PRICE >= GEN_7) ? 300 : 3000, .description = sMuscleFeatherDesc, .pocket = POCKET_ITEMS, @@ -1453,7 +1447,7 @@ const struct Item gItemsInfo[] = [ITEM_RESIST_FEATHER] = { - .name = HANDLE_EXPANDED_ITEM_NAME("ResistFeather", "Resist Feather"), + .name = _("Resist Feather"), .price = (I_PRICE >= GEN_7) ? 300 : 3000, .description = sResistFeatherDesc, .pocket = POCKET_ITEMS, @@ -1467,7 +1461,7 @@ const struct Item gItemsInfo[] = [ITEM_GENIUS_FEATHER] = { - .name = HANDLE_EXPANDED_ITEM_NAME("GeniusFeather", "Genius Feather"), + .name = _("Genius Feather"), .price = (I_PRICE >= GEN_7) ? 300 : 3000, .description = sGeniusFeatherDesc, .pocket = POCKET_ITEMS, @@ -1481,7 +1475,7 @@ const struct Item gItemsInfo[] = [ITEM_CLEVER_FEATHER] = { - .name = HANDLE_EXPANDED_ITEM_NAME("CleverFeather", "Clever Feather"), + .name = _("Clever Feather"), .price = (I_PRICE >= GEN_7) ? 300 : 3000, .description = sCleverFeatherDesc, .pocket = POCKET_ITEMS, @@ -1495,7 +1489,7 @@ const struct Item gItemsInfo[] = [ITEM_SWIFT_FEATHER] = { - .name = HANDLE_EXPANDED_ITEM_NAME("SwiftFeather", "Swift Feather"), + .name = _("Swift Feather"), .price = (I_PRICE >= GEN_7) ? 300 : 3000, .description = sSwiftFeatherDesc, .pocket = POCKET_ITEMS, @@ -1511,7 +1505,7 @@ const struct Item gItemsInfo[] = [ITEM_ABILITY_CAPSULE] = { - .name = HANDLE_EXPANDED_ITEM_NAME("AbilityCapsle", "Ability Capsule"), + .name = _("Ability Capsule"), .price = (I_PRICE < GEN_7) ? 1000 : ((I_PRICE < GEN_9) ? 10000 : 100000), .holdEffectParam = 0, .description = COMPOUND_STRING( @@ -1526,8 +1520,8 @@ const struct Item gItemsInfo[] = [ITEM_ABILITY_PATCH] = { - .name = HANDLE_EXPANDED_ITEM_NAME("AbilityPatch", "Ability Patch"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("AbilityPatches", "Ability Patches"), + .name = _("Ability Patch"), + .pluralName = _("Ability Patches"), .price = (I_PRICE >= GEN_9) ? 250000 : 20, .holdEffectParam = 0, .description = COMPOUND_STRING( @@ -1922,8 +1916,8 @@ const struct Item gItemsInfo[] = [ITEM_EXP_CANDY_XS] = { - .name = HANDLE_EXPANDED_ITEM_NAME("Exp.Candy XS", "Exp. Candy XS"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("Exp.Candies XS", "Exp. Candies XS"), + .name = _("Exp. Candy XS"), + .pluralName = _("Exp. Candies XS"), .price = 20, .holdEffectParam = EXP_100, .description = COMPOUND_STRING( @@ -1941,8 +1935,8 @@ const struct Item gItemsInfo[] = [ITEM_EXP_CANDY_S] = { - .name = HANDLE_EXPANDED_ITEM_NAME("Exp.Candy S", "Exp. Candy S"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("Exp.Candies S", "Exp. Candies S"), + .name = _("Exp. Candy S"), + .pluralName = _("Exp. Candies S"), .price = 240, .holdEffectParam = EXP_800, .description = COMPOUND_STRING( @@ -1960,8 +1954,8 @@ const struct Item gItemsInfo[] = [ITEM_EXP_CANDY_M] = { - .name = HANDLE_EXPANDED_ITEM_NAME("Exp.Candy M", "Exp. Candy M"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("Exp.Candies M", "Exp. Candies M"), + .name = _("Exp. Candy M"), + .pluralName = _("Exp. Candies M"), .price = 1000, .holdEffectParam = EXP_3000, .description = COMPOUND_STRING( @@ -1979,8 +1973,8 @@ const struct Item gItemsInfo[] = [ITEM_EXP_CANDY_L] = { - .name = HANDLE_EXPANDED_ITEM_NAME("Exp.Candy L", "Exp. Candy L"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("Exp.Candies L", "Exp. Candies L"), + .name = _("Exp. Candy L"), + .pluralName = _("Exp. Candies L"), .price = 3000, .holdEffectParam = EXP_10000, .description = COMPOUND_STRING( @@ -1998,8 +1992,8 @@ const struct Item gItemsInfo[] = [ITEM_EXP_CANDY_XL] = { - .name = HANDLE_EXPANDED_ITEM_NAME("Exp.Candy XL", "Exp. Candy XL"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("Exp.Candies XL", "Exp. Candies XL"), + .name = _("Exp. Candy XL"), + .pluralName = _("Exp. Candies XL"), .price = 10000, .holdEffectParam = EXP_30000, .description = COMPOUND_STRING( @@ -2017,8 +2011,8 @@ const struct Item gItemsInfo[] = [ITEM_DYNAMAX_CANDY] = { - .name = HANDLE_EXPANDED_ITEM_NAME("DynamaxCandy", "Dynamax Candy"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("DynamaxCandies", "Dynamax Candies"), + .name = _("Dynamax Candy"), + .pluralName = _("Dynamax Candies"), .price = 0, .description = COMPOUND_STRING( "Raises the Dynamax\n" @@ -2486,8 +2480,8 @@ const struct Item gItemsInfo[] = [ITEM_MAX_MUSHROOMS] = { - .name = HANDLE_EXPANDED_ITEM_NAME("MaxMushrooms", "Max Mushrooms"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("MaxMushrooms", "Max Mushrooms"), + .name = _("Max Mushrooms"), + .pluralName = _("Max Mushrooms"), .price = 8000, .description = COMPOUND_STRING( "Raises every stat\n" @@ -2522,7 +2516,7 @@ const struct Item gItemsInfo[] = [ITEM_GOLD_BOTTLE_CAP] = { - .name = HANDLE_EXPANDED_ITEM_NAME("GoldBottlCap", "Gold Bottle Cap"), + .name = _("Gold Bottle Cap"), .price = (I_PRICE >= GEN_9) ? 60000 : 10000, .description = COMPOUND_STRING( "A beautiful bottle\n" @@ -2859,7 +2853,7 @@ const struct Item gItemsInfo[] = [ITEM_PRETTY_FEATHER] = { - .name = HANDLE_EXPANDED_ITEM_NAME("PrettyFeather", "Pretty Feather"), + .name = _("Pretty Feather"), .price = (I_PRICE >= GEN_7) ? 1000 * TREASURE_FACTOR: 200, .description = COMPOUND_STRING( "A beautiful yet\n" @@ -2987,7 +2981,7 @@ const struct Item gItemsInfo[] = [ITEM_STRANGE_SOUVENIR] = { - .name = HANDLE_EXPANDED_ITEM_NAME("StrngeSouvnr", "Strange Souvenir"), + .name = _("Strange Souvenir"), .price = (I_PRICE >= GEN_7) ? 3000 : 10, .description = COMPOUND_STRING( "An ornament that\n" @@ -3205,7 +3199,7 @@ const struct Item gItemsInfo[] = [ITEM_FOSSILIZED_BIRD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("FosslzedBird", "Fossilized Bird"), + .name = _("Fossilized Bird"), .price = 5000, .description = COMPOUND_STRING( "A fossil of an\n" @@ -3221,8 +3215,8 @@ const struct Item gItemsInfo[] = [ITEM_FOSSILIZED_FISH] = { - .name = HANDLE_EXPANDED_ITEM_NAME("FosslzedFish", "Fossilized Fish"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("FosslzedFishes", "Fossilized Fishes"), + .name = _("Fossilized Fish"), + .pluralName = _("Fossilized Fishes"), .price = 5000, .description = sFossilizedFishDesc, .pocket = POCKET_ITEMS, @@ -3235,7 +3229,7 @@ const struct Item gItemsInfo[] = [ITEM_FOSSILIZED_DRAKE] = { - .name = HANDLE_EXPANDED_ITEM_NAME("FosslzedDrke", "Fossilized Drake"), + .name = _("Fossilized Drake"), .price = 5000, .description = COMPOUND_STRING( "A fossil of an\n" @@ -3251,7 +3245,7 @@ const struct Item gItemsInfo[] = [ITEM_FOSSILIZED_DINO] = { - .name = HANDLE_EXPANDED_ITEM_NAME("FosslzedDino", "Fossilized Dino"), + .name = _("Fossilized Dino"), .price = 5000, .description = sFossilizedFishDesc, .pocket = POCKET_ITEMS, @@ -3376,8 +3370,8 @@ const struct Item gItemsInfo[] = [ITEM_SURPRISE_MULCH] = { - .name = HANDLE_EXPANDED_ITEM_NAME("SurprseMulch", "Surprise Mulch"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("SurprseMulch", "Surprise Mulch"), + .name = _("Surprise Mulch"), + .pluralName = _("Surprise Mulch"), .price = 200, #if OW_BERRY_MULCH_USAGE == TRUE .description = COMPOUND_STRING( @@ -3474,7 +3468,7 @@ const struct Item gItemsInfo[] = [ITEM_YELLOW_APRICORN] = { - .name = HANDLE_EXPANDED_ITEM_NAME("YellwApricorn", "Yellow Apricorn"), + .name = _("Yellow Apricorn"), .price = (I_PRICE == GEN_4) ? 0 : ((I_PRICE >= GEN_5 && I_PRICE <= GEN_7) ? 20 : 200), .description = COMPOUND_STRING( "A yellow apricorn.\n" @@ -3489,7 +3483,7 @@ const struct Item gItemsInfo[] = [ITEM_GREEN_APRICORN] = { - .name = HANDLE_EXPANDED_ITEM_NAME("GreenApricorn", "Green Apricorn"), + .name = _("Green Apricorn"), .price = (I_PRICE == GEN_4) ? 0 : ((I_PRICE >= GEN_5 && I_PRICE <= GEN_7) ? 20 : 200), .description = COMPOUND_STRING( "A green apricorn.\n" @@ -3519,7 +3513,7 @@ const struct Item gItemsInfo[] = [ITEM_WHITE_APRICORN] = { - .name = HANDLE_EXPANDED_ITEM_NAME("WhiteApricorn", "White Apricorn"), + .name = _("White Apricorn"), .price = (I_PRICE == GEN_4) ? 0 : ((I_PRICE >= GEN_5 && I_PRICE <= GEN_7) ? 20 : 200), .description = COMPOUND_STRING( "A white apricorn.\n" @@ -3534,7 +3528,7 @@ const struct Item gItemsInfo[] = [ITEM_BLACK_APRICORN] = { - .name = HANDLE_EXPANDED_ITEM_NAME("BlackApricorn", "Black Apricorn"), + .name = _("Black Apricorn"), .price = (I_PRICE == GEN_4) ? 0 : ((I_PRICE >= GEN_5 && I_PRICE <= GEN_7) ? 20 : 200), .description = COMPOUND_STRING( "A black apricorn.\n" @@ -3549,7 +3543,7 @@ const struct Item gItemsInfo[] = [ITEM_WISHING_PIECE] = { - .name = HANDLE_EXPANDED_ITEM_NAME("WishingPiece", "Wishing Piece"), + .name = _("Wishing Piece"), .price = 20, .description = COMPOUND_STRING( "Throw into a\n" @@ -3565,7 +3559,7 @@ const struct Item gItemsInfo[] = [ITEM_GALARICA_TWIG] = { - .name = HANDLE_EXPANDED_ITEM_NAME("GalaricaTwig", "Galarica Twig"), + .name = _("Galarica Twig"), .price = 20 * TREASURE_FACTOR, .description = COMPOUND_STRING( "A twig from a tree\n" @@ -4025,7 +4019,7 @@ const struct Item gItemsInfo[] = [ITEM_GALARICA_CUFF] = { - .name = HANDLE_EXPANDED_ITEM_NAME("GalaricaCuff", "Galarica Cuff"), + .name = _("Galarica Cuff"), .price = (I_PRICE >= GEN_9) ? 3000 : 6000, .description = COMPOUND_STRING( "A cuff from Galar\n" @@ -4042,8 +4036,8 @@ const struct Item gItemsInfo[] = [ITEM_GALARICA_WREATH] = { - .name = HANDLE_EXPANDED_ITEM_NAME("GalrcaWreath", "Galarica Wreath"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("GalrcaWreathes", "Galarica Wreathes"), + .name = _("Galarica Wreath"), + .pluralName = _("Galarica Wreathes"), .price = (I_PRICE >= GEN_9) ? 3000 : 6000, .description = COMPOUND_STRING( "A wreath made in\n" @@ -4251,7 +4245,7 @@ const struct Item gItemsInfo[] = [ITEM_STRAWBERRY_SWEET] = { - .name = HANDLE_EXPANDED_ITEM_NAME("StrwbrySweet", "Strawberry Sweet"), + .name = _("Strawberry Sweet"), .price = 500 * TREASURE_FACTOR, .description = COMPOUND_STRING( "Strawberry-shaped\n" @@ -4879,8 +4873,8 @@ const struct Item gItemsInfo[] = [ITEM_ELECTRIC_MEMORY] = { - .name = HANDLE_EXPANDED_ITEM_NAME("ElectrcMemory", "Electric Memory"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("ElectrcMemories", "Electric Memories"), + .name = _("Electric Memory"), + .pluralName = _("Electric Memories"), .price = 1000, .holdEffect = HOLD_EFFECT_MEMORY, .holdEffectParam = 0, @@ -4939,8 +4933,8 @@ const struct Item gItemsInfo[] = [ITEM_FIGHTING_MEMORY] = { - .name = HANDLE_EXPANDED_ITEM_NAME("FightngMemory", "Fighting Memory"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("FightngMemories", "Fighting Memories"), + .name = _("Fighting Memory"), + .pluralName = _("Fighting Memories"), .price = 1000, .holdEffect = HOLD_EFFECT_MEMORY, .holdEffectParam = 0, @@ -5019,8 +5013,8 @@ const struct Item gItemsInfo[] = [ITEM_PSYCHIC_MEMORY] = { - .name = HANDLE_EXPANDED_ITEM_NAME("PsychicMemory", "Psychic Memory"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("PsychicMemories", "Psychic Memories"), + .name = _("Psychic Memory"), + .pluralName = _("Psychic Memories"), .price = 1000, .holdEffect = HOLD_EFFECT_MEMORY, .holdEffectParam = 0, @@ -5179,7 +5173,7 @@ const struct Item gItemsInfo[] = [ITEM_RUSTED_SWORD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("RustedSword", "Rusted Sword"), + .name = _("Rusted Sword"), .price = 0, .description = COMPOUND_STRING( "A rusty sword. A\n" @@ -5194,7 +5188,7 @@ const struct Item gItemsInfo[] = [ITEM_RUSTED_SHIELD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("RustedShield", "Rusted Shield"), + .name = _("Rusted Shield"), .price = 0, .description = COMPOUND_STRING( "A rusty shield. A\n" @@ -5262,7 +5256,7 @@ const struct Item gItemsInfo[] = [ITEM_CHARIZARDITE_X] = { - .name = HANDLE_EXPANDED_ITEM_NAME("CharizarditeX", "Charizardite X"), + .name = _("Charizardite X"), .pluralName = _("Charizardites X"), .price = 0, .holdEffect = HOLD_EFFECT_MEGA_STONE, @@ -5277,7 +5271,7 @@ const struct Item gItemsInfo[] = [ITEM_CHARIZARDITE_Y] = { - .name = HANDLE_EXPANDED_ITEM_NAME("CharizarditeY", "Charizardite Y"), + .name = _("Charizardite Y"), .pluralName = _("Charizardites Y"), .price = 0, .holdEffect = HOLD_EFFECT_MEGA_STONE, @@ -6942,7 +6936,7 @@ const struct Item gItemsInfo[] = [ITEM_ULTRANECROZIUM_Z] = { - .name = HANDLE_EXPANDED_ITEM_NAME("U-Necrozium Z", "Ultranecrozium Z"), + .name = _("Ultranecrozium Z"), .price = 0, .holdEffect = HOLD_EFFECT_Z_CRYSTAL, .description = COMPOUND_STRING( @@ -7066,7 +7060,7 @@ const struct Item gItemsInfo[] = [ITEM_DEEP_SEA_SCALE] = { - .name = HANDLE_EXPANDED_ITEM_NAME("DeepSeaScale", "Deep Sea Scale"), + .name = _("Deep Sea Scale"), .price = (I_PRICE >= GEN_7) ? 2000 : 200, .holdEffect = HOLD_EFFECT_DEEP_SEA_SCALE, .description = COMPOUND_STRING( @@ -7084,7 +7078,7 @@ const struct Item gItemsInfo[] = [ITEM_DEEP_SEA_TOOTH] = { - .name = HANDLE_EXPANDED_ITEM_NAME("DeepSeaTooth", "Deep Sea Tooth"), + .name = _("Deep Sea Tooth"), .pluralName = _("Deep Sea Teeth"), .price = (I_PRICE >= GEN_7) ? 2000 : 200, .holdEffect = HOLD_EFFECT_DEEP_SEA_TOOTH, @@ -7631,8 +7625,8 @@ const struct Item gItemsInfo[] = [ITEM_NEVER_MELT_ICE] = { - .name = HANDLE_EXPANDED_ITEM_NAME("Never-MeltIce", "Never-Melt Ice"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("Never-MeltIce", "Never-Melt Ice"), + .name = _("Never-Melt Ice"), + .pluralName = _("Never-Melt Ice"), .price = (I_PRICE >= GEN_9) ? 3000 : ((I_PRICE >= GEN_7) ? 1000 : 100), .holdEffect = HOLD_EFFECT_ICE_POWER, .holdEffectParam = TYPE_BOOST_PARAM, @@ -8921,8 +8915,8 @@ const struct Item gItemsInfo[] = [ITEM_WEAKNESS_POLICY] = { - .name = HANDLE_EXPANDED_ITEM_NAME("WeaknssPolicy", "Weakness Policy"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("WeaknssPolicies", "Weakness Policies"), + .name = _("Weakness Policy"), + .pluralName = _("Weakness Policies"), .price = (I_PRICE >= GEN_9) ? 50000 : 1000, .holdEffect = HOLD_EFFECT_WEAKNESS_POLICY, .holdEffectParam = 0, @@ -8958,8 +8952,8 @@ const struct Item gItemsInfo[] = [ITEM_SAFETY_GOGGLES] = { - .name = HANDLE_EXPANDED_ITEM_NAME("SafetyGoggles", "Safety Goggles"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("SafetyGoggles", "Safety Goggles"), + .name = _("Safety Goggles"), + .pluralName = _("Safety Goggles"), .price = (I_PRICE >= GEN_9) ? 20000 : ((I_PRICE >= GEN_7) ? 4000 : 1000), .holdEffect = HOLD_EFFECT_SAFETY_GOGGLES, .description = COMPOUND_STRING( @@ -8976,7 +8970,7 @@ const struct Item gItemsInfo[] = [ITEM_ADRENALINE_ORB] = { - .name = HANDLE_EXPANDED_ITEM_NAME("AdrenalineOrb", "Adrenaline Orb"), + .name = _("Adrenaline Orb"), .price = (I_PRICE >= GEN_9) ? 5000 : ((I_PRICE >= GEN_8) ? 4000 : 300), .holdEffect = HOLD_EFFECT_ADRENALINE_ORB, .description = COMPOUND_STRING( @@ -8993,7 +8987,7 @@ const struct Item gItemsInfo[] = [ITEM_TERRAIN_EXTENDER] = { - .name = HANDLE_EXPANDED_ITEM_NAME("TerainExtendr", "Terrain Extender"), + .name = _("Terrain Extender"), .price = (I_PRICE >= GEN_9) ? 15000 : 4000, .holdEffect = HOLD_EFFECT_TERRAIN_EXTENDER, .description = COMPOUND_STRING( @@ -9010,8 +9004,8 @@ const struct Item gItemsInfo[] = [ITEM_PROTECTIVE_PADS] = { - .name = HANDLE_EXPANDED_ITEM_NAME("ProtectvePads", "Protective Pads"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("ProtectvePads", "Protective Pads"), + .name = _("Protective Pads"), + .pluralName = _("Protective Pads"), .price = (I_PRICE >= GEN_9) ? 15000 : 4000, .holdEffect = HOLD_EFFECT_PROTECTIVE_PADS, .description = COMPOUND_STRING( @@ -9062,8 +9056,8 @@ const struct Item gItemsInfo[] = [ITEM_HEAVY_DUTY_BOOTS] = { - .name = HANDLE_EXPANDED_ITEM_NAME("Heavy-DtyBts", "Heavy-Duty Boots"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("Heavy-DtyBts", "Heavy-Duty Boots"), + .name = _("Heavy-Duty Boots"), + .pluralName = _("Heavy-Duty Boots"), .price = (I_PRICE >= GEN_9) ? 20000 : 4000, .holdEffect = HOLD_EFFECT_HEAVY_DUTY_BOOTS, .description = COMPOUND_STRING( @@ -9080,8 +9074,8 @@ const struct Item gItemsInfo[] = [ITEM_BLUNDER_POLICY] = { - .name = HANDLE_EXPANDED_ITEM_NAME("BlundrPolicy", "Blunder Policy"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("BlundrPolicies", "Blunder Policies"), + .name = _("Blunder Policy"), + .pluralName = _("Blunder Policies"), .price = (I_PRICE >= GEN_9) ? 30000 : 4000, .holdEffect = HOLD_EFFECT_BLUNDER_POLICY, .description = COMPOUND_STRING( @@ -9115,7 +9109,7 @@ const struct Item gItemsInfo[] = [ITEM_UTILITY_UMBRELLA] = { - .name = HANDLE_EXPANDED_ITEM_NAME("UtltyUmbrlla", "Utility Umbrella"), + .name = _("Utility Umbrella"), .price = (I_PRICE >= GEN_9) ? 15000 : 4000, .holdEffect = HOLD_EFFECT_UTILITY_UMBRELLA, .description = COMPOUND_STRING( @@ -11910,7 +11904,7 @@ const struct Item gItemsInfo[] = [ITEM_CATCHING_CHARM] = { - .name = HANDLE_EXPANDED_ITEM_NAME("CatchngCharm", "Catching Charm"), + .name = _("Catching Charm"), .price = 0, .importance = 1, .description = COMPOUND_STRING( @@ -11944,7 +11938,7 @@ const struct Item gItemsInfo[] = [ITEM_ROTOM_CATALOG] = { - .name = HANDLE_EXPANDED_ITEM_NAME("RotomCatalog", "Rotom Catalog"), + .name = _("Rotom Catalog"), .price = 0, .importance = 1, .description = COMPOUND_STRING( @@ -12074,8 +12068,8 @@ const struct Item gItemsInfo[] = [ITEM_REINS_OF_UNITY] = { - .name = HANDLE_EXPANDED_ITEM_NAME("ReinsOfUnity", "Reins of Unity"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("ReinsOfUnity", "Reins of Unity"), + .name = _("Reins of Unity"), + .pluralName = _("Reins of Unity"), .price = 0, .importance = 1, .description = COMPOUND_STRING( @@ -12243,7 +12237,7 @@ const struct Item gItemsInfo[] = [ITEM_DOWSING_MACHINE] = { - .name = HANDLE_EXPANDED_ITEM_NAME("Dowsing MCHN", "Dowsing Machine"), + .name = _("Dowsing Machine"), .price = 0, .description = COMPOUND_STRING( "A device that\n" @@ -12985,7 +12979,7 @@ const struct Item gItemsInfo[] = [ITEM_ABILITY_SHIELD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("AbilityShield", "Ability Shield"), + .name = _("Ability Shield"), .price = 20000, .holdEffect = HOLD_EFFECT_ABILITY_SHIELD, .description = COMPOUND_STRING( @@ -13021,7 +13015,7 @@ const struct Item gItemsInfo[] = [ITEM_PUNCHING_GLOVE] = { - .name = HANDLE_EXPANDED_ITEM_NAME("PunchingGlove", "Punching Glove"), + .name = _("Punching Glove"), .price = 15000, .holdEffect = HOLD_EFFECT_PUNCHING_GLOVE, .description = COMPOUND_STRING( @@ -13073,7 +13067,7 @@ const struct Item gItemsInfo[] = [ITEM_AUSPICIOUS_ARMOR] = { - .name = HANDLE_EXPANDED_ITEM_NAME("AuspciousArmr", "Auspicious Armor"), + .name = _("Auspicious Armor"), .price = 3000, .description = COMPOUND_STRING( "Armor inhabited by\n" @@ -13090,8 +13084,8 @@ const struct Item gItemsInfo[] = [ITEM_BOOSTER_ENERGY] = { - .name = HANDLE_EXPANDED_ITEM_NAME("BoosterEnergy", "Booster Energy"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("BoosterEnergies", "Booster Energies"), + .name = _("Booster Energy"), + .pluralName = _("Booster Energies"), .price = 0, .holdEffect = HOLD_EFFECT_BOOSTER_ENERGY, .description = COMPOUND_STRING( @@ -13108,7 +13102,7 @@ const struct Item gItemsInfo[] = [ITEM_BIG_BAMBOO_SHOOT] = { - .name = HANDLE_EXPANDED_ITEM_NAME("BigBmbooShoot", "Big Bamboo Shoot"), + .name = _("Big Bamboo Shoot"), .price = 3000, .description = COMPOUND_STRING( "A large and rare\n" @@ -13124,7 +13118,7 @@ const struct Item gItemsInfo[] = [ITEM_GIMMIGHOUL_COIN] = { - .name = HANDLE_EXPANDED_ITEM_NAME("GimighoulCoin", "Gimmighoul Coin"), + .name = _("Gimmighoul Coin"), .price = 400, .description = COMPOUND_STRING( "Gimmighoul hoard\n" @@ -13139,7 +13133,7 @@ const struct Item gItemsInfo[] = [ITEM_LEADERS_CREST] = { - .name = HANDLE_EXPANDED_ITEM_NAME("Leader'sCrest", "Leader's Crest"), + .name = _("Leader's Crest"), .price = 3000, .description = COMPOUND_STRING( "A shard of an old\n" @@ -13154,7 +13148,7 @@ const struct Item gItemsInfo[] = [ITEM_MALICIOUS_ARMOR] = { - .name = HANDLE_EXPANDED_ITEM_NAME("MaliciousArmr", "Malicious Armor"), + .name = _("Malicious Armor"), .price = 3000, .description = COMPOUND_STRING( "Armor inhabited by\n" @@ -13188,8 +13182,8 @@ const struct Item gItemsInfo[] = [ITEM_SCROLL_OF_DARKNESS] = { - .name = HANDLE_EXPANDED_ITEM_NAME("ScrllOfDrknss", "Scroll of Darkness"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("ScrllsOfDrknss", "Scrolls of Darkness"), + .name = _("Scroll of Darkness"), + .pluralName = _("Scrolls of Darkness"), .price = 0, .description = COMPOUND_STRING( "A peculiar scroll\n" @@ -13206,8 +13200,8 @@ const struct Item gItemsInfo[] = [ITEM_SCROLL_OF_WATERS] = { - .name = HANDLE_EXPANDED_ITEM_NAME("ScrollOfWatrs", "Scroll of Waters"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("ScrollsOfWatrs", "Scrolls of Waters"), + .name = _("Scroll of Waters"), + .pluralName = _("Scrolls of Waters"), .price = 0, .description = COMPOUND_STRING( "A peculiar scroll\n" @@ -13240,7 +13234,7 @@ const struct Item gItemsInfo[] = [ITEM_TINY_BAMBOO_SHOOT] = { - .name = HANDLE_EXPANDED_ITEM_NAME("TinyBmbooShot", "Tiny Bamboo Shoot"), + .name = _("Tiny Bamboo Shoot"), .price = 750, .description = COMPOUND_STRING( "A small and rare\n" @@ -13256,7 +13250,7 @@ const struct Item gItemsInfo[] = [ITEM_BUG_TERA_SHARD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("Bug TeraShard", "Bug Tera Shard"), + .name = _("Bug Tera Shard"), .price = 0, .description = sTeraShardDesc, .pocket = POCKET_ITEMS, @@ -13268,7 +13262,7 @@ const struct Item gItemsInfo[] = [ITEM_DARK_TERA_SHARD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("DarkTeraShard", "Dark Tera Shard"), + .name = _("Dark Tera Shard"), .price = 0, .description = sTeraShardDesc, .pocket = POCKET_ITEMS, @@ -13280,7 +13274,7 @@ const struct Item gItemsInfo[] = [ITEM_DRAGON_TERA_SHARD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("DragnTeraShrd", "Dragon Tera Shard"), + .name = _("Dragon Tera Shard"), .price = 0, .description = sTeraShardDesc, .pocket = POCKET_ITEMS, @@ -13292,7 +13286,7 @@ const struct Item gItemsInfo[] = [ITEM_ELECTRIC_TERA_SHARD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("EltrcTeraShrd", "Electric Tera Shard"), + .name = _("Electric Tera Shard"), .price = 0, .description = sTeraShardDesc, .pocket = POCKET_ITEMS, @@ -13304,7 +13298,7 @@ const struct Item gItemsInfo[] = [ITEM_FAIRY_TERA_SHARD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("FairyTeraShrd", "Fairy Tera Shard"), + .name = _("Fairy Tera Shard"), .price = 0, .description = sTeraShardDesc, .pocket = POCKET_ITEMS, @@ -13316,7 +13310,7 @@ const struct Item gItemsInfo[] = [ITEM_FIGHTING_TERA_SHARD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("FghtngTerShrd", "Fighting Tera Shard"), + .name = _("Fighting Tera Shard"), .price = 0, .description = sTeraShardDesc, .pocket = POCKET_ITEMS, @@ -13328,7 +13322,7 @@ const struct Item gItemsInfo[] = [ITEM_FIRE_TERA_SHARD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("FireTeraShard", "Fire Tera Shard"), + .name = _("Fire Tera Shard"), .price = 0, .description = sTeraShardDesc, .pocket = POCKET_ITEMS, @@ -13340,7 +13334,7 @@ const struct Item gItemsInfo[] = [ITEM_FLYING_TERA_SHARD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("FlyngTeraShrd", "Flying Tera Shard"), + .name = _("Flying Tera Shard"), .price = 0, .description = sTeraShardDesc, .pocket = POCKET_ITEMS, @@ -13352,7 +13346,7 @@ const struct Item gItemsInfo[] = [ITEM_GHOST_TERA_SHARD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("GhostTeraShrd", "Ghost Tera Shard"), + .name = _("Ghost Tera Shard"), .price = 0, .description = sTeraShardDesc, .pocket = POCKET_ITEMS, @@ -13364,7 +13358,7 @@ const struct Item gItemsInfo[] = [ITEM_GRASS_TERA_SHARD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("GrassTeraShrd", "Grass Tera Shard"), + .name = _("Grass Tera Shard"), .price = 0, .description = sTeraShardDesc, .pocket = POCKET_ITEMS, @@ -13376,7 +13370,7 @@ const struct Item gItemsInfo[] = [ITEM_GROUND_TERA_SHARD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("GrondTeraShrd", "Ground Tera Shard"), + .name = _("Ground Tera Shard"), .price = 0, .description = sTeraShardDesc, .pocket = POCKET_ITEMS, @@ -13388,7 +13382,7 @@ const struct Item gItemsInfo[] = [ITEM_ICE_TERA_SHARD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("Ice TeraShard", "Ice Tera Shard"), + .name = _("Ice Tera Shard"), .price = 0, .description = sTeraShardDesc, .pocket = POCKET_ITEMS, @@ -13400,7 +13394,7 @@ const struct Item gItemsInfo[] = [ITEM_NORMAL_TERA_SHARD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("NormlTeraShrd", "Normal Tera Shard"), + .name = _("Normal Tera Shard"), .price = 0, .description = sTeraShardDesc, .pocket = POCKET_ITEMS, @@ -13412,7 +13406,7 @@ const struct Item gItemsInfo[] = [ITEM_POISON_TERA_SHARD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("PoisnTeraShrd", "Poison Tera Shard"), + .name = _("Poison Tera Shard"), .price = 0, .description = sTeraShardDesc, .pocket = POCKET_ITEMS, @@ -13424,7 +13418,7 @@ const struct Item gItemsInfo[] = [ITEM_PSYCHIC_TERA_SHARD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("PschcTeraShrd", "Psychic Tera Shard"), + .name = _("Psychic Tera Shard"), .price = 0, .description = sTeraShardDesc, .pocket = POCKET_ITEMS, @@ -13436,7 +13430,7 @@ const struct Item gItemsInfo[] = [ITEM_ROCK_TERA_SHARD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("RockTeraShard", "Rock Tera Shard"), + .name = _("Rock Tera Shard"), .price = 0, .description = sTeraShardDesc, .pocket = POCKET_ITEMS, @@ -13448,7 +13442,7 @@ const struct Item gItemsInfo[] = [ITEM_STEEL_TERA_SHARD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("SteelTeraShrd", "Steel Tera Shard"), + .name = _("Steel Tera Shard"), .price = 0, .description = sTeraShardDesc, .pocket = POCKET_ITEMS, @@ -13460,7 +13454,7 @@ const struct Item gItemsInfo[] = [ITEM_WATER_TERA_SHARD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("WaterTeraShrd", "Water Tera Shard"), + .name = _("Water Tera Shard"), .price = 0, .description = sTeraShardDesc, .pocket = POCKET_ITEMS, @@ -13472,7 +13466,7 @@ const struct Item gItemsInfo[] = [ITEM_ADAMANT_CRYSTAL] = { - .name = HANDLE_EXPANDED_ITEM_NAME("AdamantCrystl", "Adamant Crystal"), + .name = _("Adamant Crystal"), .price = 0, .description = COMPOUND_STRING( "A large, glowing gem\n" @@ -13504,7 +13498,7 @@ const struct Item gItemsInfo[] = [ITEM_LUSTROUS_GLOBE] = { - .name = HANDLE_EXPANDED_ITEM_NAME("LustrousGlobe", "Lustrous Globe"), + .name = _("Lustrous Globe"), .price = 0, .description = COMPOUND_STRING( "A large, glowing gem\n" @@ -13520,7 +13514,7 @@ const struct Item gItemsInfo[] = [ITEM_BLACK_AUGURITE] = { - .name = HANDLE_EXPANDED_ITEM_NAME("BlackAugurite", "Black Augurite"), + .name = _("Black Augurite"), .price = 8000, .description = COMPOUND_STRING( "A black stone that\n" @@ -13623,7 +13617,7 @@ const struct Item gItemsInfo[] = [ITEM_UNREMARKABLE_TEACUP] = { - .name = HANDLE_EXPANDED_ITEM_NAME("UnrmkblTeacup", "Unremarkable Teacup"), + .name = _("Unremarkable Teacup"), .price = 1600, .description = COMPOUND_STRING( "A cracked teacup\n" @@ -13640,7 +13634,7 @@ const struct Item gItemsInfo[] = [ITEM_MASTERPIECE_TEACUP] = { - .name = HANDLE_EXPANDED_ITEM_NAME("MstrpceTeacup", "Masterpiece Teacup"), + .name = _("Masterpiece Teacup"), .price = 38000, .description = COMPOUND_STRING( "A chipped teacup\n" @@ -13657,7 +13651,7 @@ const struct Item gItemsInfo[] = [ITEM_CORNERSTONE_MASK] = { - .name = HANDLE_EXPANDED_ITEM_NAME("CornrstneMask", "Cornerstone Mask"), + .name = _("Cornerstone Mask"), .price = 0, .description = COMPOUND_STRING( "Allows Ogerpon to\n" @@ -13672,7 +13666,7 @@ const struct Item gItemsInfo[] = [ITEM_WELLSPRING_MASK] = { - .name = HANDLE_EXPANDED_ITEM_NAME("WellsprngMask", "Wellspring Mask"), + .name = _("Wellspring Mask"), .price = 0, .description = COMPOUND_STRING( "Allows Ogerpon to\n" @@ -13687,7 +13681,7 @@ const struct Item gItemsInfo[] = [ITEM_HEARTHFLAME_MASK] = { - .name = HANDLE_EXPANDED_ITEM_NAME("HrthflameMask", "Hearthflame Mask"), + .name = _("Hearthflame Mask"), .price = 0, .description = COMPOUND_STRING( "Allows Ogerpon to\n" @@ -13792,8 +13786,8 @@ const struct Item gItemsInfo[] = [ITEM_FRESH_START_MOCHI] = { - .name = HANDLE_EXPANDED_ITEM_NAME("FrshStrtMochi", "Fresh Start Mochi"), - .pluralName = HANDLE_EXPANDED_ITEM_NAME("FrshStrtMochi", "Fresh Start Mochi"), + .name = _("Fresh Start Mochi"), + .pluralName = _("Fresh Start Mochi"), .price = 300, .description = COMPOUND_STRING( "An item that resets\n" @@ -13810,7 +13804,7 @@ const struct Item gItemsInfo[] = [ITEM_GLIMMERING_CHARM] = { - .name = HANDLE_EXPANDED_ITEM_NAME("GlmmringCharm", "Glimmering Charm"), + .name = _("Glimmering Charm"), .price = 0, .importance = 1, .description = COMPOUND_STRING( @@ -13842,7 +13836,7 @@ const struct Item gItemsInfo[] = [ITEM_STELLAR_TERA_SHARD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("StllrTeraShrd", "Stellar Tera Shard"), + .name = _("Stellar Tera Shard"), .price = 0, .description = sTeraShardDesc, .pocket = POCKET_ITEMS, @@ -13854,7 +13848,7 @@ const struct Item gItemsInfo[] = [ITEM_JUBILIFE_MUFFIN] = { - .name = HANDLE_EXPANDED_ITEM_NAME("JublifeMuffin", "Jubilife Muffin"), + .name = _("Jubilife Muffin"), .price = 250, .description = sFullHealDesc, .pocket = POCKET_ITEMS, @@ -13996,7 +13990,7 @@ const struct Item gItemsInfo[] = [ITEM_AUX_POWERGUARD] = { - .name = HANDLE_EXPANDED_ITEM_NAME("AuxPowerguard", "Aux Powerguard"), + .name = _("Aux Powerguard"), .price = 1200, .holdEffectParam = X_ITEM_STAGES, .description = COMPOUND_STRING( @@ -14019,7 +14013,7 @@ const struct Item gItemsInfo[] = [ITEM_CHOICE_DUMPLING] = { - .name = HANDLE_EXPANDED_ITEM_NAME("ChoiceDumplng", "Choice Dumpling"), + .name = _("Choice Dumpling"), .price = 1200, .description = sQuestionMarksDesc, .pocket = POCKET_ITEMS, @@ -14045,7 +14039,7 @@ const struct Item gItemsInfo[] = [ITEM_TWICE_SPICED_RADISH] = { - .name = HANDLE_EXPANDED_ITEM_NAME("2xSpicedRadsh", "Twice-Spiced Radish"), + .name = _("Twice-Spiced Radish"), .price = 1600, .description = sQuestionMarksDesc, .pocket = POCKET_ITEMS, diff --git a/src/data/moves_info.h b/src/data/moves_info.h index cef7b6971a..99217808ac 100644 --- a/src/data/moves_info.h +++ b/src/data/moves_info.h @@ -11,12 +11,6 @@ // The Gen. 4+ contest data comes from urpg's contest movedex. -#if B_EXPANDED_MOVE_NAMES == TRUE -#define HANDLE_EXPANDED_MOVE_NAME(_name, ...) COMPOUND_STRING(DEFAULT(_name, __VA_ARGS__)) -#else -#define HANDLE_EXPANDED_MOVE_NAME(_name, ...) COMPOUND_STRING(_name) -#endif - #if B_BINDING_TURNS >= GEN_5 #define BINDING_TURNS "4 or 5" #else @@ -335,7 +329,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_THUNDER_PUNCH] = { - .name = HANDLE_EXPANDED_MOVE_NAME("ThunderPunch", "Thunder Punch"), + .name = COMPOUND_STRING("Thunder Punch"), .description = COMPOUND_STRING( "An electrified punch that\n" "may paralyze the foe."), @@ -2008,7 +2002,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_POISON_POWDER] = { - .name = HANDLE_EXPANDED_MOVE_NAME("PoisonPowder", "Poison Powder"), + .name = COMPOUND_STRING("Poison Powder"), .description = COMPOUND_STRING( "Scatters a toxic powder\n" "that may poison the foe."), @@ -2185,7 +2179,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_THUNDER_SHOCK] = { - .name = HANDLE_EXPANDED_MOVE_NAME("ThunderShock", "Thunder Shock"), + .name = COMPOUND_STRING("Thunder Shock"), .description = COMPOUND_STRING( "An electrical attack that\n" "may paralyze the foe."), @@ -3082,7 +3076,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_SELF_DESTRUCT] = { - .name = HANDLE_EXPANDED_MOVE_NAME("SelfDestruct", "Self-Destruct"), + .name = COMPOUND_STRING("Self-Destruct"), .description = COMPOUND_STRING( "Inflicts severe damage but\n" "makes the user faint."), @@ -3478,7 +3472,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_HIGH_JUMP_KICK] = { - .name = HANDLE_EXPANDED_MOVE_NAME("HighJumpKick", "High Jump Kick"), + .name = COMPOUND_STRING("High Jump Kick"), .description = COMPOUND_STRING( "A jumping knee kick. If it\n" "misses, the user is hurt."), @@ -5657,7 +5651,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_DYNAMIC_PUNCH] = { - .name = HANDLE_EXPANDED_MOVE_NAME("DynamicPunch", "Dynamic Punch"), + .name = COMPOUND_STRING("Dynamic Punch"), .description = COMPOUND_STRING( "Powerful and sure to cause\n" "confusion, but inaccurate."), @@ -5706,7 +5700,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_DRAGON_BREATH] = { - .name = HANDLE_EXPANDED_MOVE_NAME("DragonBreath", "Dragon Breath"), + .name = COMPOUND_STRING("Dragon Breath"), .description = COMPOUND_STRING( "Strikes the foe with an\n" "incredible blast of breath."), @@ -6219,7 +6213,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_EXTREME_SPEED] = { - .name = HANDLE_EXPANDED_MOVE_NAME("ExtremeSpeed", "Extreme Speed"), + .name = COMPOUND_STRING("Extreme Speed"), .description = COMPOUND_STRING( "An extremely fast and\n" "powerful attack."), @@ -6241,7 +6235,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_ANCIENT_POWER] = { - .name = HANDLE_EXPANDED_MOVE_NAME("AncientPower", "Ancient Power"), + .name = COMPOUND_STRING("Ancient Power"), .description = COMPOUND_STRING( "An attack that may raise\n" "all stats."), @@ -6720,7 +6714,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_SMELLING_SALTS] = { - .name = HANDLE_EXPANDED_MOVE_NAME("SmellngSalts", "Smelling Salts"), + .name = COMPOUND_STRING("Smelling Salts"), .description = COMPOUND_STRING( "Powerful against paralyzed\n" "foes, but also heals them."), @@ -7521,7 +7515,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_FEATHER_DANCE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("FeatherDance", "Feather Dance"), + .name = COMPOUND_STRING("Feather Dance"), .description = COMPOUND_STRING( "Envelops the foe with down\n" "to sharply reduce Attack."), @@ -8102,7 +8096,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_GRASS_WHISTLE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("GrassWhistle", "Grass Whistle"), + .name = COMPOUND_STRING("Grass Whistle"), .description = COMPOUND_STRING( "Lulls the foe into sleep\n" "with a pleasant melody."), @@ -14089,7 +14083,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_PHANTOM_FORCE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("PhantomForce", "Phantom Force"), + .name = COMPOUND_STRING("Phantom Force"), .description = sShadowForceDescription, .effect = EFFECT_SEMI_INVULNERABLE, .power = 90, @@ -14118,7 +14112,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_TRICK_OR_TREAT] = { - .name = HANDLE_EXPANDED_MOVE_NAME("TrickOrTreat", "Trick-or-Treat"), + .name = COMPOUND_STRING("Trick-or-Treat"), .description = COMPOUND_STRING( "Goes trick-or-treating\n" "making the foe Ghost-type."), @@ -14191,7 +14185,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_PARABOLIC_CHARGE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("ParabolcChrg", "Parabolic Charge"), + .name = COMPOUND_STRING("Parabolic Charge"), .description = COMPOUND_STRING( "Damages adjacent Pokémon and\n" "heals up by half of it."), @@ -14213,7 +14207,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_FORESTS_CURSE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("Forest'sCurs", "Forest's Curse"), + .name = COMPOUND_STRING("Forest's Curse"), .description = COMPOUND_STRING( "Puts a curse on the foe\n" "making the foe Grass-type."), @@ -14237,7 +14231,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_PETAL_BLIZZARD] = { - .name = HANDLE_EXPANDED_MOVE_NAME("PetalBlizzrd", "Petal Blizzard"), + .name = COMPOUND_STRING("Petal Blizzard"), .description = COMPOUND_STRING( "Stirs up a violent storm\n" "of petals to attack."), @@ -14289,7 +14283,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_DISARMING_VOICE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("DisrmngVoice", "Disarming Voice"), + .name = COMPOUND_STRING("Disarming Voice"), .description = COMPOUND_STRING( "Lets out a charming cry\n" "that cannot be evaded."), @@ -14360,7 +14354,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_DRAINING_KISS] = { - .name = HANDLE_EXPANDED_MOVE_NAME("DrainingKiss", "Draining Kiss"), + .name = COMPOUND_STRING("Draining Kiss"), .description = sDrainingKissDescription, .effect = EFFECT_ABSORB, .power = 50, @@ -14382,7 +14376,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_CRAFTY_SHIELD] = { - .name = HANDLE_EXPANDED_MOVE_NAME("CraftyShield", "Crafty Shield"), + .name = COMPOUND_STRING("Crafty Shield"), .description = COMPOUND_STRING( "Evades status moves for\n" "one turn."), @@ -14408,7 +14402,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_FLOWER_SHIELD] = { - .name = HANDLE_EXPANDED_MOVE_NAME("FlowerShield", "Flower Shield"), + .name = COMPOUND_STRING("Flower Shield"), .description = COMPOUND_STRING( "Raises the Defense of\n" "Grass-type Pokémon."), @@ -14432,7 +14426,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_GRASSY_TERRAIN] = { - .name = HANDLE_EXPANDED_MOVE_NAME("GrssyTerrain", "Grassy Terrain"), + .name = COMPOUND_STRING("Grassy Terrain"), .description = COMPOUND_STRING( "The ground turns to grass\n" "for 5 turns. Restores HP."), @@ -14457,7 +14451,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_MISTY_TERRAIN] = { - .name = HANDLE_EXPANDED_MOVE_NAME("MistyTerrain", "Misty Terrain"), + .name = COMPOUND_STRING("Misty Terrain"), .description = COMPOUND_STRING( "Covers the ground with mist\n" "for 5 turns. Blocks status."), @@ -14624,7 +14618,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_KINGS_SHIELD] = { - .name = HANDLE_EXPANDED_MOVE_NAME("King'sShield", "King's Shield"), + .name = COMPOUND_STRING("King's Shield"), .description = COMPOUND_STRING( "Evades damage, and sharply\n" "reduces Attack if struck."), @@ -14703,7 +14697,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_DIAMOND_STORM] = { - .name = HANDLE_EXPANDED_MOVE_NAME("DiamondStorm", "Diamond Storm"), + .name = COMPOUND_STRING("Diamond Storm"), .description = COMPOUND_STRING( "Whips up a storm of\n" "diamonds. May up Defense."), @@ -14730,7 +14724,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_STEAM_ERUPTION] = { - .name = HANDLE_EXPANDED_MOVE_NAME("SteamErption", "Steam Eruption"), + .name = COMPOUND_STRING("Steam Eruption"), .description = COMPOUND_STRING( "Immerses the foe in heated\n" "steam. May inflict a burn."), @@ -14757,7 +14751,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_HYPERSPACE_HOLE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("HyprspceHole", "Hyperspace Hole"), + .name = COMPOUND_STRING("Hyperspace Hole"), .description = sHyperspaceHoleDescription, .effect = EFFECT_HIT, .power = 80, @@ -14782,7 +14776,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_WATER_SHURIKEN] = { - .name = HANDLE_EXPANDED_MOVE_NAME("WatrShuriken", "Water Shuriken"), + .name = COMPOUND_STRING("Water Shuriken"), .description = COMPOUND_STRING( "Throws 2 to 5 stars that\n" "are sure to strike first."), @@ -14803,7 +14797,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_MYSTICAL_FIRE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("MysticalFire", "Mystical Fire"), + .name = COMPOUND_STRING("Mystical Fire"), .description = COMPOUND_STRING( "Breathes a special, hot\n" "fire. Lowers Sp. Atk."), @@ -14855,7 +14849,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_AROMATIC_MIST] = { - .name = HANDLE_EXPANDED_MOVE_NAME("AromaticMist", "Aromatic Mist"), + .name = COMPOUND_STRING("Aromatic Mist"), .description = COMPOUND_STRING( "Raises the Sp. Def of a\n" "partner Pokémon."), @@ -14880,7 +14874,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_EERIE_IMPULSE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("EerieImpulse", "Eerie Impulse"), + .name = COMPOUND_STRING("Eerie Impulse"), .description = COMPOUND_STRING( "Exposes the foe to a pulse\n" "that sharply cuts Sp. Atk."), @@ -14976,7 +14970,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_MAGNETIC_FLUX] = { - .name = HANDLE_EXPANDED_MOVE_NAME("MagneticFlux", "Magnetic Flux"), + .name = COMPOUND_STRING("Magnetic Flux"), .description = COMPOUND_STRING( "Boosts the defenses of\n" "those with Plus or Minus."), @@ -15026,7 +15020,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_ELECTRIC_TERRAIN] = { - .name = HANDLE_EXPANDED_MOVE_NAME("ElctrcTrrain", "Electric Terrain"), + .name = COMPOUND_STRING("Electric Terrain"), .description = COMPOUND_STRING( "Electrifies the ground for\n" "5 turns. Prevents sleep."), @@ -15051,7 +15045,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_DAZZLING_GLEAM] = { - .name = HANDLE_EXPANDED_MOVE_NAME("DazzlngGleam", "Dazzling Gleam"), + .name = COMPOUND_STRING("Dazzling Gleam"), .description = COMPOUND_STRING( "Damages foes by emitting\n" "a bright flash."), @@ -15132,7 +15126,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_BABY_DOLL_EYES] = { - .name = HANDLE_EXPANDED_MOVE_NAME("BabyDollEyes", "Baby-Doll Eyes"), + .name = COMPOUND_STRING("Baby-Doll Eyes"), .description = COMPOUND_STRING( "Lowers the foe's Attack\n" "before it can move."), @@ -15226,7 +15220,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_POWER_UP_PUNCH] = { - .name = HANDLE_EXPANDED_MOVE_NAME("PowerUpPunch", "Power-Up Punch"), + .name = COMPOUND_STRING("Power-Up Punch"), .description = COMPOUND_STRING( "A hard punch that raises\n" "the user's Attack."), @@ -15254,7 +15248,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_OBLIVION_WING] = { - .name = HANDLE_EXPANDED_MOVE_NAME("OblivionWing", "Oblivion Wing"), + .name = COMPOUND_STRING("Oblivion Wing"), .description = sDrainingKissDescription, .effect = EFFECT_ABSORB, .power = 80, @@ -15275,7 +15269,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_THOUSAND_ARROWS] = { - .name = HANDLE_EXPANDED_MOVE_NAME("ThousndArrws", "Thousand Arrows"), + .name = COMPOUND_STRING("Thousand Arrows"), .description = COMPOUND_STRING( "Can hit Flying foes, then\n" "knocks them to the ground."), @@ -15303,7 +15297,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_THOUSAND_WAVES] = { - .name = HANDLE_EXPANDED_MOVE_NAME("ThousndWaves", "Thousand Waves"), + .name = COMPOUND_STRING("Thousand Waves"), .description = COMPOUND_STRING( "Those hit by the wave can\n" "no longer escape."), @@ -15351,7 +15345,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_LIGHT_OF_RUIN] = { - .name = HANDLE_EXPANDED_MOVE_NAME("LightOfRuin", "Light Of Ruin"), + .name = COMPOUND_STRING("Light Of Ruin"), .description = COMPOUND_STRING( "Fires a great beam of light\n" "that also hurts the user."), @@ -15393,7 +15387,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_PRECIPICE_BLADES] = { - .name = HANDLE_EXPANDED_MOVE_NAME("PrcipceBldes", "Precipice Blades"), + .name = COMPOUND_STRING("Precipice Blades"), .description = COMPOUND_STRING( "Fearsome blades of stone\n" "attack both foes."), @@ -15415,7 +15409,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_DRAGON_ASCENT] = { - .name = HANDLE_EXPANDED_MOVE_NAME("DragonAscent", "Dragon Ascent"), + .name = COMPOUND_STRING("Dragon Ascent"), .description = sCloseCombatDescription, .effect = EFFECT_HIT, .power = 120, @@ -15440,7 +15434,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_HYPERSPACE_FURY] = { - .name = HANDLE_EXPANDED_MOVE_NAME("HyprspceFury", "Hyperspace Fury"), + .name = COMPOUND_STRING("Hyperspace Fury"), .description = sHyperspaceHoleDescription, .effect = EFFECT_HYPERSPACE_FURY, .power = 100, @@ -15494,7 +15488,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_FIRST_IMPRESSION] = { - .name = HANDLE_EXPANDED_MOVE_NAME("FrstImpressn", "First Impression"), + .name = COMPOUND_STRING("First Impression"), .description = COMPOUND_STRING( "Hits hard and first.\n" "Only works first turn."), @@ -15517,7 +15511,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_BANEFUL_BUNKER] = { - .name = HANDLE_EXPANDED_MOVE_NAME("BanefulBunkr", "Baneful Bunker"), + .name = COMPOUND_STRING("Baneful Bunker"), .description = COMPOUND_STRING( "Protects user and poisons\n" "foes on contact."), @@ -15544,7 +15538,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_SPIRIT_SHACKLE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("SpiritShackl", "Spirit Shackle"), + .name = COMPOUND_STRING("Spirit Shackle"), .description = COMPOUND_STRING( "After being hit, foes can\n" "no longer escape."), @@ -15569,7 +15563,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_DARKEST_LARIAT] = { - .name = HANDLE_EXPANDED_MOVE_NAME("DarkstLariat", "Darkest Lariat"), + .name = COMPOUND_STRING("Darkest Lariat"), .description = COMPOUND_STRING( "Swings the arms to strike\n" "It ignores stat changes."), @@ -15592,7 +15586,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_SPARKLING_ARIA] = { - .name = HANDLE_EXPANDED_MOVE_NAME("SparklngAria", "Sparkling Aria"), + .name = COMPOUND_STRING("Sparkling Aria"), .description = COMPOUND_STRING( "Sings with bubbles. Cures\n" "burns on contact."), @@ -15647,7 +15641,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_FLORAL_HEALING] = { - .name = HANDLE_EXPANDED_MOVE_NAME("FloralHealng", "Floral Healing"), + .name = COMPOUND_STRING("Floral Healing"), .description = COMPOUND_STRING( "Restores an ally's HP.\n" "Heals more on grass."), @@ -15673,7 +15667,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_HIGH_HORSEPOWER] = { - .name = HANDLE_EXPANDED_MOVE_NAME("HighHorsepwr", "High Horsepower"), + .name = COMPOUND_STRING("High Horsepower"), .description = COMPOUND_STRING( "Slams hard into the foe with\n" "its entire body."), @@ -15941,7 +15935,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_PSYCHIC_TERRAIN] = { - .name = HANDLE_EXPANDED_MOVE_NAME("PsychcTrrain", "Psychic Terrain"), + .name = COMPOUND_STRING("Psychic Terrain"), .description = COMPOUND_STRING( "The ground turns weird for\n" "5 turns. Blocks priority."), @@ -16136,7 +16130,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_REVELATION_DANCE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("RvlationDnce", "Revelation Dance"), + .name = COMPOUND_STRING("Revelation Dance"), .description = COMPOUND_STRING( "Dances with mystical power.\n" "Matches user's first type."), @@ -16158,7 +16152,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_CORE_ENFORCER] = { - .name = HANDLE_EXPANDED_MOVE_NAME("CoreEnforcer", "Core Enforcer"), + .name = COMPOUND_STRING("Core Enforcer"), .description = COMPOUND_STRING( "Hits with a ray that\n" "nullifies the foe's ability."), @@ -16264,7 +16258,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_CLANGING_SCALES] = { - .name = HANDLE_EXPANDED_MOVE_NAME("ClngngScales", "Clanging Scales"), + .name = COMPOUND_STRING("Clanging Scales"), .description = COMPOUND_STRING( "Makes a big noise with\n" "its scales. Drops Defense."), @@ -16291,7 +16285,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_DRAGON_HAMMER] = { - .name = HANDLE_EXPANDED_MOVE_NAME("DragonHammer", "Dragon Hammer"), + .name = COMPOUND_STRING("Dragon Hammer"), .description = COMPOUND_STRING( "Swings its whole body\n" "like a hammer to damage."), @@ -16414,7 +16408,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_PSYCHIC_FANGS] = { - .name = HANDLE_EXPANDED_MOVE_NAME("PsychicFangs", "Psychic Fangs"), + .name = COMPOUND_STRING("Psychic Fangs"), .description = COMPOUND_STRING( "Chomps with psychic fangs.\n" "Destroys any barriers."), @@ -16437,7 +16431,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_STOMPING_TANTRUM] = { - .name = HANDLE_EXPANDED_MOVE_NAME("StmpngTantrm", "Stomping Tantrum"), + .name = COMPOUND_STRING("Stomping Tantrum"), .description = COMPOUND_STRING( "Stomps around angrily.\n" "Stronger after a failure."), @@ -16533,7 +16527,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_PRISMATIC_LASER] = { - .name = HANDLE_EXPANDED_MOVE_NAME("PrsmaticLasr", "Prismatic Laser"), + .name = COMPOUND_STRING("Prismatic Laser"), .description = COMPOUND_STRING( "A high power laser that\n" "forces recharge next turn."), @@ -16558,7 +16552,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_SPECTRAL_THIEF] = { - .name = HANDLE_EXPANDED_MOVE_NAME("SpectrlThief", "Spectral Thief"), + .name = COMPOUND_STRING("Spectral Thief"), .description = COMPOUND_STRING( "Steals the target's stat\n" "boosts, then attacks."), @@ -16585,7 +16579,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_SUNSTEEL_STRIKE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("SnsteelStrke", "Sunsteel Strike"), + .name = COMPOUND_STRING("Sunsteel Strike"), .description = COMPOUND_STRING( "A sun-fueled strike that\n" "ignores abilities."), @@ -16609,7 +16603,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_MOONGEIST_BEAM] = { - .name = HANDLE_EXPANDED_MOVE_NAME("MoongestBeam", "Moongeist Beam"), + .name = COMPOUND_STRING("Moongeist Beam"), .description = COMPOUND_STRING( "A moon-powered beam that\n" "ignores abilities."), @@ -16682,7 +16676,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_NATURES_MADNESS] = { - .name = HANDLE_EXPANDED_MOVE_NAME("Natur'sMadns", "Nature's Madness"), + .name = COMPOUND_STRING("Nature's Madness"), .description = COMPOUND_STRING( "Halves the foe's HP with\n" "the power of nature."), @@ -16773,7 +16767,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_PHOTON_GEYSER] = { - .name = HANDLE_EXPANDED_MOVE_NAME("PhotonGeyser", "Photon Geyser"), + .name = COMPOUND_STRING("Photon Geyser"), .description = COMPOUND_STRING( "User's highest attack stat\n" "determines its category."), @@ -16823,7 +16817,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_SPLISHY_SPLASH] = { - .name = HANDLE_EXPANDED_MOVE_NAME("SplishySplsh", "Splishy Splash"), + .name = COMPOUND_STRING("Splishy Splash"), .description = COMPOUND_STRING( "A huge electrified wave that\n" "may paralyze the foe."), @@ -16890,7 +16884,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_BOUNCY_BUBBLE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("BouncyBubble", "Bouncy Bubble"), + .name = COMPOUND_STRING("Bouncy Bubble"), .description = COMPOUND_STRING( "An attack that absorbs\n" #if B_UPDATED_MOVE_DATA >= GEN_8 @@ -17040,7 +17034,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_SPARKLY_SWIRL] = { - .name = HANDLE_EXPANDED_MOVE_NAME("SparklySwirl", "Sparkly Swirl"), + .name = COMPOUND_STRING("Sparkly Swirl"), .description = COMPOUND_STRING( "Wrap foe with whirlwind of\n" "scent. Heals party's status."), @@ -17059,7 +17053,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_VEEVEE_VOLLEY] = { - .name = HANDLE_EXPANDED_MOVE_NAME("VeeveeVolley", "Veevee Volley"), + .name = COMPOUND_STRING("Veevee Volley"), .description = COMPOUND_STRING( "Eevee's love increases its\n" "power. It never misses."), @@ -17079,7 +17073,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_DOUBLE_IRON_BASH] = { - .name = HANDLE_EXPANDED_MOVE_NAME("DublIronBash", "Double Iron Bash"), + .name = COMPOUND_STRING("Double Iron Bash"), .description = COMPOUND_STRING( "The user spins and hits with\n" "its arms. May cause flinch."), @@ -17109,7 +17103,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_DYNAMAX_CANNON] = { - .name = HANDLE_EXPANDED_MOVE_NAME("DynamxCannon", "Dynamax Cannon"), + .name = COMPOUND_STRING("Dynamax Cannon"), .description = COMPOUND_STRING( "Fires a strong beam. Deals\n" "2x damage to Dynamaxed foes."), @@ -17371,7 +17365,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_FISHIOUS_REND] = { - .name = HANDLE_EXPANDED_MOVE_NAME("FishiousRend", "Fishious Rend"), + .name = COMPOUND_STRING("Fishious Rend"), .description = COMPOUND_STRING( "Double power if the user\n" "moves before the target."), @@ -17416,7 +17410,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_CLANGOROUS_SOUL] = { - .name = HANDLE_EXPANDED_MOVE_NAME("ClngrousSoul", "Clangorous Soul"), + .name = COMPOUND_STRING("Clangorous Soul"), .description = COMPOUND_STRING( "The user uses some of its\n" "HP to raise all its stats."), @@ -17572,7 +17566,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_BEHEMOTH_BLADE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("BehemthBlade", "Behemoth Blade"), + .name = COMPOUND_STRING("Behemoth Blade"), .description = COMPOUND_STRING( "Strikes as a sword. Deals 2x\n" "damage to Dynamaxed foes."), @@ -17599,7 +17593,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_BEHEMOTH_BASH] = { - .name = HANDLE_EXPANDED_MOVE_NAME("BehemothBash", "Behemoth Bash"), + .name = COMPOUND_STRING("Behemoth Bash"), .description = COMPOUND_STRING( "Attacks as a shield. Deals 2x\n" "damage to Dynamaxed foes."), @@ -17652,7 +17646,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_BREAKING_SWIPE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("BreakngSwipe", "Breaking Swipe"), + .name = COMPOUND_STRING("Breaking Swipe"), .description = COMPOUND_STRING( "Swings its tail to attack.\n" "Lowers the Atk of those hit."), @@ -17805,7 +17799,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_STRANGE_STEAM] = { - .name = HANDLE_EXPANDED_MOVE_NAME("StrangeSteam", "Strange Steam"), + .name = COMPOUND_STRING("Strange Steam"), .description = COMPOUND_STRING( "Emits a strange steam to\n" "potentially confuse the foe."), @@ -17883,7 +17877,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_FALSE_SURRENDER] = { - .name = HANDLE_EXPANDED_MOVE_NAME("FalsSurrendr", "False Surrender"), + .name = COMPOUND_STRING("False Surrender"), .description = COMPOUND_STRING( "Bows to stab the foe\n" "with hair. It never misses."), @@ -17906,7 +17900,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_METEOR_ASSAULT] = { - .name = HANDLE_EXPANDED_MOVE_NAME("MeteorAssalt", "Meteor Assault"), + .name = COMPOUND_STRING("Meteor Assault"), .description = COMPOUND_STRING( "Attacks with a thick leek.\n" "The user must then rest."), @@ -17981,7 +17975,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_EXPANDING_FORCE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("ExpandngForc", "Expanding Force"), + .name = COMPOUND_STRING("Expanding Force"), .description = COMPOUND_STRING( "Power goes up and damages\n" "all foes on Psychic Terrain."), @@ -18076,7 +18070,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_SHELL_SIDE_ARM] = { - .name = HANDLE_EXPANDED_MOVE_NAME("ShellSideArm", "Shell Side Arm"), + .name = COMPOUND_STRING("Shell Side Arm"), .description = COMPOUND_STRING( "Deals better of physical and\n" "special damage. May poison."), @@ -18101,7 +18095,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_MISTY_EXPLOSION] = { - .name = HANDLE_EXPANDED_MOVE_NAME("MstyExplsion", "Misty Explosion"), + .name = COMPOUND_STRING("Misty Explosion"), .description = COMPOUND_STRING( "Hit everything and faint.\n" "Powers up on Misty Terrain."), @@ -18145,7 +18139,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_RISING_VOLTAGE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("RisngVoltage", "Rising Voltage"), + .name = COMPOUND_STRING("Rising Voltage"), .description = COMPOUND_STRING( "This move's power doubles\n" "when on Electric Terrain."), @@ -18166,7 +18160,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_TERRAIN_PULSE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("TerrainPulse", "Terrain Pulse"), + .name = COMPOUND_STRING("Terrain Pulse"), .description = COMPOUND_STRING( "Type and power changes\n" "depending on the terrain."), @@ -18188,7 +18182,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_SKITTER_SMACK] = { - .name = HANDLE_EXPANDED_MOVE_NAME("SkitterSmack", "Skitter Smack"), + .name = COMPOUND_STRING("Skitter Smack"), .description = COMPOUND_STRING( "User skitters behind foe to\n" "attack. Lowers foe's Sp. Atk."), @@ -18214,7 +18208,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_BURNING_JEALOUSY] = { - .name = HANDLE_EXPANDED_MOVE_NAME("BrningJelosy", "Burning Jealousy"), + .name = COMPOUND_STRING("Burning Jealousy"), .description = COMPOUND_STRING( "Foes that have stats upped\n" "during the turn get burned."), @@ -18283,7 +18277,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_CORROSIVE_GAS] = { - .name = HANDLE_EXPANDED_MOVE_NAME("CorrosiveGas", "Corrosive Gas"), + .name = COMPOUND_STRING("Corrosive Gas"), .description = COMPOUND_STRING( "Highly acidic gas melts items\n" "held by surrounding Pokémon."), @@ -18374,7 +18368,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_DUAL_WINGBEAT] = { - .name = HANDLE_EXPANDED_MOVE_NAME("DualWingbeat", "Dual Wingbeat"), + .name = COMPOUND_STRING("Dual Wingbeat"), .description = COMPOUND_STRING( "User slams the target with\n" "wings and hits twice in a row."), @@ -18397,7 +18391,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_SCORCHING_SANDS] = { - .name = HANDLE_EXPANDED_MOVE_NAME("ScorchngSnds", "Scorching Sands"), + .name = COMPOUND_STRING("Scorching Sands"), .description = COMPOUND_STRING( "Throws scorching sand at\n" "the target. May leave a burn."), @@ -18423,7 +18417,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_JUNGLE_HEALING] = { - .name = HANDLE_EXPANDED_MOVE_NAME("JungleHealng", "Jungle Healing"), + .name = COMPOUND_STRING("Jungle Healing"), .description = COMPOUND_STRING( "Heals HP and status of\n" "itself and allies in battle."), @@ -18474,7 +18468,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_SURGING_STRIKES] = { - .name = HANDLE_EXPANDED_MOVE_NAME("SurgngStrkes", "Surging Strikes"), + .name = COMPOUND_STRING("Surging Strikes"), .description = COMPOUND_STRING( "Mastering the Water style,\n" "strikes with 3 critical hits."), @@ -18525,7 +18519,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_DRAGON_ENERGY] = { - .name = HANDLE_EXPANDED_MOVE_NAME("DragonEnergy", "Dragon Energy"), + .name = COMPOUND_STRING("Dragon Energy"), .description = COMPOUND_STRING( "The higher the user's HP\n" "the more damage caused."), @@ -18547,7 +18541,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_FREEZING_GLARE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("FreezngGlare", "Freezing Glare"), + .name = COMPOUND_STRING("Freezing Glare"), .description = COMPOUND_STRING( "Shoots psychic power from\n" #if B_USE_FROSTBITE == TRUE @@ -18603,7 +18597,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_THUNDEROUS_KICK] = { - .name = HANDLE_EXPANDED_MOVE_NAME("ThnderusKick", "Thunderous Kick"), + .name = COMPOUND_STRING("Thunderous Kick"), .description = COMPOUND_STRING( "Uses a lightning-like kick\n" "to hit. Lowers foe's Defense."), @@ -18630,7 +18624,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_GLACIAL_LANCE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("GlacialLance", "Glacial Lance"), + .name = COMPOUND_STRING("Glacial Lance"), .description = COMPOUND_STRING( "Strikes by hurling a blizzard-\n" "cloaked icicle lance at foes."), @@ -18652,7 +18646,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_ASTRAL_BARRAGE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("AstrlBarrage", "Astral Barrage"), + .name = COMPOUND_STRING("Astral Barrage"), .description = COMPOUND_STRING( "Strikes by sending a frightful\n" "amount of ghosts at foes."), @@ -18719,7 +18713,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_PSYSHIELD_BASH] = { - .name = HANDLE_EXPANDED_MOVE_NAME("PsyshieldBsh", "Psyshield Bash"), + .name = COMPOUND_STRING("Psyshield Bash"), .description = COMPOUND_STRING( "Hits a foe with psychic\n" "energy. May raise Defense."), @@ -18786,7 +18780,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_SPRINGTIDE_STORM] = { - .name = HANDLE_EXPANDED_MOVE_NAME("SprngtdeStrm", "Springtide Storm"), + .name = COMPOUND_STRING("Springtide Storm"), .description = COMPOUND_STRING( "Wraps a foe in fierce winds.\n" "Varies with the user's form."), @@ -18809,7 +18803,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_MYSTICAL_POWER] = { - .name = HANDLE_EXPANDED_MOVE_NAME("MystcalPower", "Mystical Power"), + .name = COMPOUND_STRING("Mystical Power"), .description = COMPOUND_STRING( "A mysterious power strikes,\n" "raising the user's Sp. Atk."), @@ -18890,7 +18884,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_MOUNTAIN_GALE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("MountainGale", "Mountain Gale"), + .name = COMPOUND_STRING("Mountain Gale"), .description = COMPOUND_STRING( "Giant chunks of ice damage\n" "the foe. It may flinch."), @@ -18911,7 +18905,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_VICTORY_DANCE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("VictoryDance", "Victory Dance"), + .name = COMPOUND_STRING("Victory Dance"), .description = COMPOUND_STRING( "Dances to raise Attack,\n" "Defense and Speed."), @@ -18932,7 +18926,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_HEADLONG_RUSH] = { - .name = HANDLE_EXPANDED_MOVE_NAME("HeadlongRush", "Headlong Rush"), + .name = COMPOUND_STRING("Headlong Rush"), .description = COMPOUND_STRING( "Hits with a full-body tackle.\n" "Lowers the users's defenses."), @@ -19000,7 +18994,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_BITTER_MALICE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("BitterMalice", "Bitter Malice"), + .name = COMPOUND_STRING("Bitter Malice"), .description = COMPOUND_STRING( "A spine-chilling resentment.\n" "Lowers the foe's Attack."), @@ -19041,7 +19035,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_TRIPLE_ARROWS] = { - .name = HANDLE_EXPANDED_MOVE_NAME("TripleArrows", "Triple Arrows"), + .name = COMPOUND_STRING("Triple Arrows"), .description = COMPOUND_STRING( "High critical hit ratio.\n" "May lower Defense or flinch."), @@ -19067,7 +19061,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_INFERNAL_PARADE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("InfrnlParade", "Infernal Parade"), + .name = COMPOUND_STRING("Infernal Parade"), .description = COMPOUND_STRING( "Hurts a foe harder if it has\n" "an ailment. May leave a burn."), @@ -19089,7 +19083,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_CEASELESS_EDGE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("CeaslessEdge", "Ceaseless Edge"), + .name = COMPOUND_STRING("Ceaseless Edge"), .description = COMPOUND_STRING( "High critical hit ratio. Sets\n" "Splinters that hurt the foe."), @@ -19112,7 +19106,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_BLEAKWIND_STORM] = { - .name = HANDLE_EXPANDED_MOVE_NAME("BlekwndStorm", "Bleakwind Storm"), + .name = COMPOUND_STRING("Bleakwind Storm"), .description = COMPOUND_STRING( "Hits with brutal, cold winds.\n" "May lower the foe's Speed."), @@ -19134,7 +19128,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_WILDBOLT_STORM] = { - .name = HANDLE_EXPANDED_MOVE_NAME("WildbltStorm", "Wildbolt Storm"), + .name = COMPOUND_STRING("Wildbolt Storm"), .description = COMPOUND_STRING( "Hits with a brutal tempest.\n" "May inflict paralysis."), @@ -19156,7 +19150,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_SANDSEAR_STORM] = { - .name = HANDLE_EXPANDED_MOVE_NAME("SndsearStorm", "Sandsear Storm"), + .name = COMPOUND_STRING("Sandsear Storm"), .description = COMPOUND_STRING( "Hits with brutally hot sand.\n" "May inflict a burn."), @@ -19178,7 +19172,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_LUNAR_BLESSING] = { - .name = HANDLE_EXPANDED_MOVE_NAME("LunarBlessng", "Lunar Blessing"), + .name = COMPOUND_STRING("Lunar Blessing"), .description = COMPOUND_STRING( "The user heals and cures\n" "itself and its ally."), @@ -19283,7 +19277,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_LAST_RESPECTS] = { - .name = HANDLE_EXPANDED_MOVE_NAME("LastRespects", "Last Respects"), + .name = COMPOUND_STRING("Last Respects"), .description = COMPOUND_STRING( "This move deals more damage\n" "for each defeated ally."), @@ -19361,7 +19355,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_SPICY_EXTRACT] = { - .name = HANDLE_EXPANDED_MOVE_NAME("SpicyExtract", "Spicy Extract"), + .name = COMPOUND_STRING("Spicy Extract"), .description = COMPOUND_STRING( "Sharply ups target's Attack,\n" "harshly lowers its Defense."), @@ -19403,7 +19397,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_POPULATION_BOMB] = { - .name = HANDLE_EXPANDED_MOVE_NAME("PoplatinBomb", "Population Bomb"), + .name = COMPOUND_STRING("Population Bomb"), .description = COMPOUND_STRING( "The user's fellows hit one\n" "to ten times in a row."), @@ -19462,7 +19456,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_REVIVAL_BLESSING] = { - .name = HANDLE_EXPANDED_MOVE_NAME("RevivlBlesng", "Revival Blessing"), + .name = COMPOUND_STRING("Revival Blessing"), .description = COMPOUND_STRING( "Revives a fainted party {PKMN}\n" "and restores half of its HP."), @@ -19589,7 +19583,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_KOWTOW_CLEAVE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("KowtowCleave", "Kowtow Cleave"), + .name = COMPOUND_STRING("Kowtow Cleave"), .description = COMPOUND_STRING( "User slashes the foe after\n" "kowtowing. It never misses."), @@ -19736,7 +19730,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_COLLISION_COURSE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("ColisinCours", "Collision Course"), + .name = COMPOUND_STRING("Collision Course"), .description = COMPOUND_STRING( "Prehistoric explosion that's\n" "stronger if super effective."), @@ -19755,7 +19749,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_ELECTRO_DRIFT] = { - .name = HANDLE_EXPANDED_MOVE_NAME("ElectroDrift", "Electro Drift"), + .name = COMPOUND_STRING("Electro Drift"), .description = COMPOUND_STRING( "Futuristic electricity. It's\n" "stronger if super effective."), @@ -19795,7 +19789,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_CHILLY_RECEPTION] = { - .name = HANDLE_EXPANDED_MOVE_NAME("ChilReceptin", "Chilly Reception"), + .name = COMPOUND_STRING("Chilly Reception"), .description = COMPOUND_STRING( "Bad joke summons snowstorm.\n" "The user also switches out."), @@ -19904,7 +19898,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_CHILLING_WATER] = { - .name = HANDLE_EXPANDED_MOVE_NAME("ChillingWatr", "Chilling Water"), + .name = COMPOUND_STRING("Chilling Water"), .description = COMPOUND_STRING( "A shower with ice-cold water\n" "lowers the target's Attack."), @@ -20051,7 +20045,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_GIGATON_HAMMER] = { - .name = HANDLE_EXPANDED_MOVE_NAME("GigatonHammr", "Gigaton Hammer"), + .name = COMPOUND_STRING("Gigaton Hammer"), .description = COMPOUND_STRING( "Swings a huge hammer. Can't\n" "be used twice in a row."), @@ -20108,7 +20102,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_BLAZING_TORQUE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("BlazngTorque", "Blazing Torque"), + .name = COMPOUND_STRING("Blazing Torque"), .description = COMPOUND_STRING("---"), .effect = EFFECT_HIT, .power = 80, @@ -20137,7 +20131,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_WICKED_TORQUE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("WickedTorque", "Wicked Torque"), + .name = COMPOUND_STRING("Wicked Torque"), .description = COMPOUND_STRING("---"), .effect = EFFECT_HIT, .power = 80, @@ -20166,7 +20160,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_NOXIOUS_TORQUE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("NoxiusTorque", "Noxious Torque"), + .name = COMPOUND_STRING("Noxious Torque"), .description = COMPOUND_STRING("---"), .effect = EFFECT_HIT, .power = 100, @@ -20195,7 +20189,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_COMBAT_TORQUE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("CombatTorque", "Combat Torque"), + .name = COMPOUND_STRING("Combat Torque"), .description = COMPOUND_STRING("---"), .effect = EFFECT_HIT, .power = 100, @@ -20224,7 +20218,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_MAGICAL_TORQUE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("MagiclTorque", "Magical Torque"), + .name = COMPOUND_STRING("Magical Torque"), .description = COMPOUND_STRING("---"), .effect = EFFECT_HIT, .power = 100, @@ -20308,7 +20302,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_MATCHA_GOTCHA] = { - .name = HANDLE_EXPANDED_MOVE_NAME("MatchaGotcha", "Matcha Gotcha"), + .name = COMPOUND_STRING("Matcha Gotcha"), .description = COMPOUND_STRING( "Absorbs half the damage\n" "inflicted. May cause a burn."), @@ -20397,7 +20391,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_TERA_STARSTORM] = { - .name = HANDLE_EXPANDED_MOVE_NAME("TeraStarstrm", "Tera Starstorm"), + .name = COMPOUND_STRING("Tera Starstorm"), .description = COMPOUND_STRING( "Damages all opponents if user is\n" "Stellar form Terapagos."), @@ -20435,7 +20429,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_BURNING_BULWARK] = { - .name = HANDLE_EXPANDED_MOVE_NAME("BurnngBulwrk", "Burning Bulwark"), + .name = COMPOUND_STRING("Burning Bulwark"), .description = COMPOUND_STRING( "Evades attack, and burns\n" "the foe if struck."), @@ -20473,7 +20467,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_MIGHTY_CLEAVE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("MightyCleave", "Mighty Cleave"), + .name = COMPOUND_STRING("Mighty Cleave"), .description = sFeintDescription, .effect = EFFECT_HIT, .power = 95, @@ -20491,7 +20485,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_TACHYON_CUTTER] = { - .name = HANDLE_EXPANDED_MOVE_NAME("TachyonCuttr", "Tachyon Cutter"), + .name = COMPOUND_STRING("Tachyon Cutter"), .description = COMPOUND_STRING( "Launches particle blades at\n" "the target. Strikes twice."), @@ -20545,7 +20539,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_ALLURING_VOICE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("AllurngVoice", "Alluring Voice"), + .name = COMPOUND_STRING("Alluring Voice"), .description = COMPOUND_STRING( "Confuses the target if their\n" "stats were boosted this turn."), @@ -20587,7 +20581,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_SUPERCELL_SLAM] = { - .name = HANDLE_EXPANDED_MOVE_NAME("SuprcellSlam", "Supercell Slam"), + .name = COMPOUND_STRING("Supercell Slam"), .description = COMPOUND_STRING( "An electrified slam. If it\n" "misses, the user is hurt."), @@ -20605,7 +20599,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_PSYCHIC_NOISE] = { - .name = HANDLE_EXPANDED_MOVE_NAME("PsychicNoise", "Psychic Noise"), + .name = COMPOUND_STRING("Psychic Noise"), .description = COMPOUND_STRING( "Unpleasant sound waves that\n" "damage and prevent healing."), @@ -20650,7 +20644,7 @@ const struct MoveInfo gMovesInfo[MOVES_COUNT_DYNAMAX] = [MOVE_MALIGNANT_CHAIN] = { - .name = HANDLE_EXPANDED_MOVE_NAME("MalignntChan", "Malignant Chain"), + .name = COMPOUND_STRING("Malignant Chain"), .description = COMPOUND_STRING( "A corrosive chain attack\n" "that may badly poison."), diff --git a/src/data/pokemon/species_info.h b/src/data/pokemon/species_info.h index 61da487389..939f1d4635 100644 --- a/src/data/pokemon/species_info.h +++ b/src/data/pokemon/species_info.h @@ -60,12 +60,6 @@ #define FLIP 0 #define NO_FLIP 1 -#if POKEMON_NAME_LENGTH >= 12 -#define HANDLE_EXPANDED_SPECIES_NAME(_name, ...) _(DEFAULT(_name, __VA_ARGS__)) -#else -#define HANDLE_EXPANDED_SPECIES_NAME(_name, ...) _(_name) -#endif - const struct SpeciesInfo gSpeciesInfo[] = { [SPECIES_NONE] = diff --git a/src/data/pokemon/species_info/gen_2_families.h b/src/data/pokemon/species_info/gen_2_families.h index 3bde875fd7..b1d1dfbbbc 100644 --- a/src/data/pokemon/species_info/gen_2_families.h +++ b/src/data/pokemon/species_info/gen_2_families.h @@ -3913,7 +3913,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_FIELD), .abilities = { ABILITY_SERENE_GRACE, ABILITY_RUN_AWAY, ABILITY_RATTLED }, .bodyColor = BODY_COLOR_YELLOW, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Dudunsprce", "Dudunsparce"), + .speciesName = _("Dudunsparce"), .cryId = CRY_DUDUNSPARCE, .natDexNum = NATIONAL_DEX_DUDUNSPARCE, .categoryName = _("Land Snake"), @@ -3966,7 +3966,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_FIELD), .abilities = { ABILITY_SERENE_GRACE, ABILITY_RUN_AWAY, ABILITY_RATTLED }, .bodyColor = BODY_COLOR_YELLOW, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Dudunsprce", "Dudunsparce"), + .speciesName = _("Dudunsparce"), .cryId = CRY_DUDUNSPARCE, .natDexNum = NATIONAL_DEX_DUDUNSPARCE, .categoryName = _("Land Snake"), diff --git a/src/data/pokemon/species_info/gen_5_families.h b/src/data/pokemon/species_info/gen_5_families.h index 2495cfa961..d7927e028e 100644 --- a/src/data/pokemon/species_info/gen_5_families.h +++ b/src/data/pokemon/species_info/gen_5_families.h @@ -3989,7 +3989,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_WATER_2), .abilities = { ABILITY_SWIFT_SWIM, ABILITY_ADAPTABILITY, ABILITY_MOLD_BREAKER }, .bodyColor = BODY_COLOR_GREEN, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Bsculegion", "Basculegion"), + .speciesName = _("Basculegion"), .cryId = CRY_BASCULEGION, .natDexNum = NATIONAL_DEX_BASCULEGION, .categoryName = _("Big Fish"), @@ -4051,7 +4051,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_WATER_2), .abilities = { ABILITY_SWIFT_SWIM, ABILITY_ADAPTABILITY, ABILITY_MOLD_BREAKER }, .bodyColor = BODY_COLOR_GREEN, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Bsculegion", "Basculegion"), + .speciesName = _("Basculegion"), .cryId = CRY_BASCULEGION, .natDexNum = NATIONAL_DEX_BASCULEGION, .categoryName = _("Big Fish"), diff --git a/src/data/pokemon/species_info/gen_6_families.h b/src/data/pokemon/species_info/gen_6_families.h index d9fdf67355..bae2833b9e 100644 --- a/src/data/pokemon/species_info/gen_6_families.h +++ b/src/data/pokemon/species_info/gen_6_families.h @@ -876,7 +876,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_FLYING), .abilities = { ABILITY_FLAME_BODY, ABILITY_NONE, ABILITY_GALE_WINGS }, .bodyColor = BODY_COLOR_RED, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Flechinder", "Fletchinder"), + .speciesName = _("Fletchinder"), .cryId = CRY_FLETCHINDER, .natDexNum = NATIONAL_DEX_FLETCHINDER, .categoryName = _("Ember"), diff --git a/src/data/pokemon/species_info/gen_7_families.h b/src/data/pokemon/species_info/gen_7_families.h index c16220ca62..0465def06b 100644 --- a/src/data/pokemon/species_info/gen_7_families.h +++ b/src/data/pokemon/species_info/gen_7_families.h @@ -1327,7 +1327,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_WATER_3), .abilities = { ABILITY_HYPER_CUTTER, ABILITY_IRON_FIST, ABILITY_ANGER_POINT }, .bodyColor = BODY_COLOR_WHITE, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Crabminabl", "Crabominable"), + .speciesName = _("Crabominable"), .cryId = CRY_CRABOMINABLE, .natDexNum = NATIONAL_DEX_CRABOMINABLE, .categoryName = _("Woolly Crab"), @@ -6778,7 +6778,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .abilities = { ABILITY_BEAST_BOOST, ABILITY_NONE, ABILITY_NONE }, .bodyColor = BODY_COLOR_WHITE, .noFlip = TRUE, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Blacephaln", "Blacephalon"), + .speciesName = _("Blacephalon"), .cryId = CRY_BLACEPHALON, .natDexNum = NATIONAL_DEX_BLACEPHALON, .categoryName = _("Fireworks"), diff --git a/src/data/pokemon/species_info/gen_8_families.h b/src/data/pokemon/species_info/gen_8_families.h index 83a2c99bc8..ca1791caa0 100644 --- a/src/data/pokemon/species_info/gen_8_families.h +++ b/src/data/pokemon/species_info/gen_8_families.h @@ -938,7 +938,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_FLYING), .abilities = { ABILITY_KEEN_EYE, ABILITY_UNNERVE, ABILITY_BIG_PECKS }, .bodyColor = BODY_COLOR_BLUE, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Corvisquir", "Corvisquire"), + .speciesName = _("Corvisquire"), .cryId = CRY_CORVISQUIRE, .natDexNum = NATIONAL_DEX_CORVISQUIRE, .categoryName = _("Raven"), @@ -1000,7 +1000,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_FLYING), .abilities = { ABILITY_PRESSURE, ABILITY_UNNERVE, ABILITY_MIRROR_ARMOR }, .bodyColor = BODY_COLOR_PURPLE, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Corviknigh", "Corviknight"), + .speciesName = _("Corviknight"), .cryId = CRY_CORVIKNIGHT, .natDexNum = NATIONAL_DEX_CORVIKNIGHT, .categoryName = _("Raven"), @@ -3117,7 +3117,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_WATER_2), .abilities = { ABILITY_SWIFT_SWIM, ABILITY_NONE, ABILITY_PROPELLER_TAIL }, .bodyColor = BODY_COLOR_BROWN, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Barraskewd", "Barraskewda"), + .speciesName = _("Barraskewda"), .cryId = CRY_BARRASKEWDA, .natDexNum = NATIONAL_DEX_BARRASKEWDA, .categoryName = _("Skewer"), @@ -3542,7 +3542,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_BUG), .abilities = { ABILITY_FLASH_FIRE, ABILITY_WHITE_SMOKE, ABILITY_FLAME_BODY }, .bodyColor = BODY_COLOR_RED, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Centiskorc", "Centiskorch"), + .speciesName = _("Centiskorch"), .cryId = CRY_CENTISKORCH, .natDexNum = NATIONAL_DEX_CENTISKORCH, .categoryName = _("Radiator"), @@ -3911,7 +3911,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_MINERAL, EGG_GROUP_AMORPHOUS), .abilities = { ABILITY_WEAK_ARMOR, ABILITY_NONE, ABILITY_CURSED_BODY }, .bodyColor = BODY_COLOR_PURPLE, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Polteageis", "Polteageist"), + .speciesName = _("Polteageist"), .cryId = CRY_POLTEAGEIST, .natDexNum = NATIONAL_DEX_POLTEAGEIST, .categoryName = _("Black Tea"), @@ -3972,7 +3972,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_MINERAL, EGG_GROUP_AMORPHOUS), .abilities = { ABILITY_WEAK_ARMOR, ABILITY_NONE, ABILITY_CURSED_BODY }, .bodyColor = BODY_COLOR_PURPLE, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Polteageis", "Polteageist"), + .speciesName = _("Polteageist"), .cryId = CRY_POLTEAGEIST, .natDexNum = NATIONAL_DEX_POLTEAGEIST, .categoryName = _("Black Tea"), @@ -5007,7 +5007,7 @@ const struct SpeciesInfo gSpeciesInfoGen8[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_MINERAL), .abilities = { ABILITY_POWER_SPOT, ABILITY_NONE, ABILITY_NONE }, .bodyColor = BODY_COLOR_GRAY, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Stonjourne", "Stonjourner"), + .speciesName = _("Stonjourner"), .cryId = CRY_STONJOURNER, .natDexNum = NATIONAL_DEX_STONJOURNER, .categoryName = _("Big Rock"), diff --git a/src/data/pokemon/species_info/gen_9_families.h b/src/data/pokemon/species_info/gen_9_families.h index 66ae0b8dff..d17f807499 100644 --- a/src/data/pokemon/species_info/gen_9_families.h +++ b/src/data/pokemon/species_info/gen_9_families.h @@ -130,7 +130,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_FIELD, EGG_GROUP_GRASS), .abilities = { ABILITY_OVERGROW, ABILITY_NONE, ABILITY_PROTEAN }, .bodyColor = BODY_COLOR_GREEN, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Meowscarad", "Meowscarada"), + .speciesName = _("Meowscarada"), .cryId = CRY_MEOWSCARADA, .natDexNum = NATIONAL_DEX_MEOWSCARADA, .categoryName = _("Magician"), @@ -1476,7 +1476,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_FLYING), .abilities = { ABILITY_INTIMIDATE, ABILITY_HUSTLE, ABILITY_GUTS }, .bodyColor = BODY_COLOR_GREEN, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Sqawkabily", "Squawkabilly"), + .speciesName = _("Squawkabilly"), .cryId = CRY_SQUAWKABILLY, .natDexNum = NATIONAL_DEX_SQUAWKABILLY, .categoryName = _("Parrot"), @@ -1530,7 +1530,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_FLYING), .abilities = { ABILITY_INTIMIDATE, ABILITY_HUSTLE, ABILITY_GUTS }, .bodyColor = BODY_COLOR_BLUE, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Sqawkabily", "Squawkabilly"), + .speciesName = _("Squawkabilly"), .cryId = CRY_SQUAWKABILLY, .natDexNum = NATIONAL_DEX_SQUAWKABILLY, .categoryName = _("Parrot"), @@ -1584,7 +1584,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_FLYING), .abilities = { ABILITY_INTIMIDATE, ABILITY_HUSTLE, ABILITY_SHEER_FORCE }, .bodyColor = BODY_COLOR_YELLOW, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Sqawkabily", "Squawkabilly"), + .speciesName = _("Squawkabilly"), .cryId = CRY_SQUAWKABILLY, .natDexNum = NATIONAL_DEX_SQUAWKABILLY, .categoryName = _("Parrot"), @@ -1638,7 +1638,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_FLYING), .abilities = { ABILITY_INTIMIDATE, ABILITY_HUSTLE, ABILITY_SHEER_FORCE }, .bodyColor = BODY_COLOR_WHITE, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Sqawkabily", "Squawkabilly"), + .speciesName = _("Squawkabilly"), .cryId = CRY_SQUAWKABILLY, .natDexNum = NATIONAL_DEX_SQUAWKABILLY, .categoryName = _("Parrot"), @@ -2179,7 +2179,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_WATER_1, EGG_GROUP_FLYING), .abilities = { ABILITY_WIND_POWER, ABILITY_VOLT_ABSORB, ABILITY_COMPETITIVE }, .bodyColor = BODY_COLOR_YELLOW, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Kilowatrel", "Kilowattrel"), + .speciesName = _("Kilowattrel"), .cryId = CRY_KILOWATTREL, .natDexNum = NATIONAL_DEX_KILOWATTREL, .categoryName = _("Frigatebird"), @@ -2503,7 +2503,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_GRASS), .abilities = { ABILITY_WIND_RIDER, ABILITY_NONE, ABILITY_INFILTRATOR }, .bodyColor = BODY_COLOR_BROWN, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Brmblghast", "Brambleghast"), + .speciesName = _("Brambleghast"), .cryId = CRY_BRAMBLEGHAST, .natDexNum = NATIONAL_DEX_BRAMBLEGHAST, .categoryName = _("Tumbleweed"), @@ -4464,7 +4464,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_NO_EGGS_DISCOVERED), .abilities = { ABILITY_PROTOSYNTHESIS, ABILITY_NONE, ABILITY_NONE }, .bodyColor = BODY_COLOR_PINK, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("ScreamTail", "Scream Tail"), + .speciesName = _("Scream Tail"), .cryId = CRY_SCREAM_TAIL, .natDexNum = NATIONAL_DEX_SCREAM_TAIL, .categoryName = _("Paradox"), @@ -4520,7 +4520,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_NO_EGGS_DISCOVERED), .abilities = { ABILITY_PROTOSYNTHESIS, ABILITY_NONE, ABILITY_NONE }, .bodyColor = BODY_COLOR_WHITE, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("BruteBonet", "Brute Bonnet"), + .speciesName = _("Brute Bonnet"), .cryId = CRY_BRUTE_BONNET, .natDexNum = NATIONAL_DEX_BRUTE_BONNET, .categoryName = _("Paradox"), @@ -4578,7 +4578,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_NO_EGGS_DISCOVERED), .abilities = { ABILITY_PROTOSYNTHESIS, ABILITY_NONE, ABILITY_NONE }, .bodyColor = BODY_COLOR_GRAY, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("FluttrMane", "Flutter Mane"), + .speciesName = _("Flutter Mane"), .cryId = CRY_FLUTTER_MANE, .natDexNum = NATIONAL_DEX_FLUTTER_MANE, .categoryName = _("Paradox"), @@ -4635,7 +4635,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_NO_EGGS_DISCOVERED), .abilities = { ABILITY_PROTOSYNTHESIS, ABILITY_NONE, ABILITY_NONE }, .bodyColor = BODY_COLOR_WHITE, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("SlithrWing", "Slither Wing"), + .speciesName = _("Slither Wing"), .cryId = CRY_SLITHER_WING, .natDexNum = NATIONAL_DEX_SLITHER_WING, .categoryName = _("Paradox"), @@ -4690,7 +4690,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_NO_EGGS_DISCOVERED), .abilities = { ABILITY_PROTOSYNTHESIS, ABILITY_NONE, ABILITY_NONE }, .bodyColor = BODY_COLOR_GRAY, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("SndyShocks", "Sandy Shocks"), + .speciesName = _("Sandy Shocks"), .cryId = CRY_SANDY_SHOCKS, .natDexNum = NATIONAL_DEX_SANDY_SHOCKS, .categoryName = _("Paradox"), @@ -4746,7 +4746,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_NO_EGGS_DISCOVERED), .abilities = { ABILITY_QUARK_DRIVE, ABILITY_NONE, ABILITY_NONE }, .bodyColor = BODY_COLOR_GRAY, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("IronTreads", "Iron Treads"), + .speciesName = _("Iron Treads"), .cryId = CRY_IRON_TREADS, .natDexNum = NATIONAL_DEX_IRON_TREADS, .categoryName = _("Paradox"), @@ -4802,7 +4802,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_NO_EGGS_DISCOVERED), .abilities = { ABILITY_QUARK_DRIVE, ABILITY_NONE, ABILITY_NONE }, .bodyColor = BODY_COLOR_RED, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("IronBundle", "Iron Bundle"), + .speciesName = _("Iron Bundle"), .cryId = CRY_IRON_BUNDLE, .natDexNum = NATIONAL_DEX_IRON_BUNDLE, .categoryName = _("Paradox"), @@ -4914,7 +4914,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_NO_EGGS_DISCOVERED), .abilities = { ABILITY_QUARK_DRIVE, ABILITY_NONE, ABILITY_NONE }, .bodyColor = BODY_COLOR_BLUE, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("IronJuguls", "Iron Jugulis"), + .speciesName = _("Iron Jugulis"), .cryId = CRY_IRON_JUGULIS, .natDexNum = NATIONAL_DEX_IRON_JUGULIS, .categoryName = _("Paradox"), @@ -5028,7 +5028,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_NO_EGGS_DISCOVERED), .abilities = { ABILITY_QUARK_DRIVE, ABILITY_NONE, ABILITY_NONE }, .bodyColor = BODY_COLOR_GREEN, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("IronThorns", "Iron Thorns"), + .speciesName = _("Iron Thorns"), .cryId = CRY_IRON_THORNS, .natDexNum = NATIONAL_DEX_IRON_THORNS, .categoryName = _("Paradox"), @@ -5632,7 +5632,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_NO_EGGS_DISCOVERED), .abilities = { ABILITY_PROTOSYNTHESIS, ABILITY_NONE, ABILITY_NONE }, .bodyColor = BODY_COLOR_BLUE, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("RoarngMoon", "Roaring Moon"), + .speciesName = _("Roaring Moon"), .cryId = CRY_ROARING_MOON, .natDexNum = NATIONAL_DEX_ROARING_MOON, .categoryName = _("Paradox"), @@ -5689,7 +5689,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_NO_EGGS_DISCOVERED), .abilities = { ABILITY_QUARK_DRIVE, ABILITY_NONE, ABILITY_NONE }, .bodyColor = BODY_COLOR_WHITE, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("IronVliant", "Iron Valiant"), + .speciesName = _("Iron Valiant"), .cryId = CRY_IRON_VALIANT, .natDexNum = NATIONAL_DEX_IRON_VALIANT, .categoryName = _("Paradox"), @@ -5858,7 +5858,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_NO_EGGS_DISCOVERED), .abilities = { ABILITY_PROTOSYNTHESIS, ABILITY_NONE, ABILITY_NONE }, .bodyColor = BODY_COLOR_BLUE, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("WalkngWake", "Walking Wake"), + .speciesName = _("Walking Wake"), .cryId = CRY_WALKING_WAKE, .natDexNum = NATIONAL_DEX_WALKING_WAKE, .categoryName = _("Paradox"), @@ -5913,7 +5913,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_NO_EGGS_DISCOVERED), .abilities = { ABILITY_QUARK_DRIVE, ABILITY_NONE, ABILITY_NONE }, .bodyColor = BODY_COLOR_GREEN, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("IronLeaves", "Iron Leaves"), + .speciesName = _("Iron Leaves"), .cryId = CRY_IRON_LEAVES, .natDexNum = NATIONAL_DEX_IRON_LEAVES, .categoryName = _("Paradox"), @@ -5967,7 +5967,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_MINERAL, EGG_GROUP_AMORPHOUS), .abilities = { ABILITY_HOSPITALITY, ABILITY_NONE, ABILITY_HEATPROOF }, .bodyColor = BODY_COLOR_GREEN, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Ptchageist", "Poltchageist"), + .speciesName = _("Poltchageist"), .cryId = CRY_POLTCHAGEIST, .natDexNum = NATIONAL_DEX_POLTCHAGEIST, .categoryName = _("Matcha"), @@ -6020,7 +6020,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_MINERAL, EGG_GROUP_AMORPHOUS), .abilities = { ABILITY_HOSPITALITY, ABILITY_NONE, ABILITY_HEATPROOF }, .bodyColor = BODY_COLOR_GREEN, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Ptchageist", "Poltchageist"), + .speciesName = _("Poltchageist"), .cryId = CRY_POLTCHAGEIST, .natDexNum = NATIONAL_DEX_POLTCHAGEIST, .categoryName = _("Matcha"), @@ -6293,7 +6293,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_NO_EGGS_DISCOVERED), .abilities = { ABILITY_TOXIC_CHAIN, ABILITY_NONE, ABILITY_TECHNICIAN }, .bodyColor = BODY_COLOR_BLACK, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("Fezndipiti", "Fezandipiti"), + .speciesName = _("Fezandipiti"), .cryId = CRY_FEZANDIPITI, .natDexNum = NATIONAL_DEX_FEZANDIPITI, .categoryName = _("Retainer"), @@ -6418,7 +6418,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_NO_EGGS_DISCOVERED), .abilities = { ABILITY_PROTOSYNTHESIS, ABILITY_NONE, ABILITY_NONE }, .bodyColor = BODY_COLOR_BROWN, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("GouginFire", "Gouging Fire"), + .speciesName = _("Gouging Fire"), .cryId = CRY_GOUGING_FIRE, .natDexNum = NATIONAL_DEX_GOUGING_FIRE, .categoryName = _("Paradox"), @@ -6474,7 +6474,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_NO_EGGS_DISCOVERED), .abilities = { ABILITY_PROTOSYNTHESIS, ABILITY_NONE, ABILITY_NONE }, .bodyColor = BODY_COLOR_YELLOW, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("RagingBolt", "Raging Bolt"), + .speciesName = _("Raging Bolt"), .cryId = CRY_RAGING_BOLT, .natDexNum = NATIONAL_DEX_RAGING_BOLT, .categoryName = _("Paradox"), @@ -6530,7 +6530,7 @@ const struct SpeciesInfo gSpeciesInfoGen9[] = .eggGroups = MON_EGG_GROUPS(EGG_GROUP_NO_EGGS_DISCOVERED), .abilities = { ABILITY_QUARK_DRIVE, ABILITY_NONE, ABILITY_NONE }, .bodyColor = BODY_COLOR_GRAY, - .speciesName = HANDLE_EXPANDED_SPECIES_NAME("IronBouldr", "Iron Boulder"), + .speciesName = _("Iron Boulder"), .cryId = CRY_IRON_BOULDER, .natDexNum = NATIONAL_DEX_IRON_BOULDER, .categoryName = _("Paradox"), diff --git a/src/data/types_info.h b/src/data/types_info.h index df74199bdd..d14012ed5c 100644 --- a/src/data/types_info.h +++ b/src/data/types_info.h @@ -40,12 +40,6 @@ const uq4_12_t gTypeEffectivenessTable[NUMBER_OF_MON_TYPES][NUMBER_OF_MON_TYPES] #undef ______ #undef X -#if B_EXPANDED_TYPE_NAMES == TRUE -#define HANDLE_EXPANDED_TYPE_NAME(_name, ...) _(DEFAULT(_name, __VA_ARGS__)) -#else -#define HANDLE_EXPANDED_TYPE_NAME(_name, ...) _(_name) -#endif - // .generic is large enough that the text for TYPE_ELECTRIC will exceed TEXT_BUFF_ARRAY_COUNT. // In this array there's commented-out data such as references to type-resist berries that would otherwise would go unused. // However, we figured this information would be useful for users that want to add their own types as a reminder of @@ -84,7 +78,7 @@ const struct TypeInfo gTypesInfo[NUMBER_OF_MON_TYPES] = }, [TYPE_FIGHTING] = { - .name = HANDLE_EXPANDED_TYPE_NAME("Fight", "Fighting"), + .name = _("Fighting"), .generic = _("a FIGHTING move"), .palette = 13, .zMove = MOVE_ALL_OUT_PUMMELING, @@ -325,7 +319,7 @@ const struct TypeInfo gTypesInfo[NUMBER_OF_MON_TYPES] = }, [TYPE_ELECTRIC] = { - .name = HANDLE_EXPANDED_TYPE_NAME("Electr", "Electric"), + .name = _("Electric"), .generic = _("an ELECTRIC move"), .palette = 13, .zMove = MOVE_GIGAVOLT_HAVOC, @@ -346,7 +340,7 @@ const struct TypeInfo gTypesInfo[NUMBER_OF_MON_TYPES] = }, [TYPE_PSYCHIC] = { - .name = HANDLE_EXPANDED_TYPE_NAME("Psychc", "Psychic"), + .name = _("Psychic"), .generic = _("a PSYCHIC move"), .palette = 14, .zMove = MOVE_SHATTERED_PSYCHE, @@ -451,7 +445,7 @@ const struct TypeInfo gTypesInfo[NUMBER_OF_MON_TYPES] = }, [TYPE_STELLAR] = { - .name = HANDLE_EXPANDED_TYPE_NAME("Stellr", "Stellar"), + .name = _("Stellar"), .generic = _("a STELLAR move"), .palette = 15, .zMove = MOVE_BREAKNECK_BLITZ,