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 01/18] 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 02/18] 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 03/18] 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 04/18] 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 05/18] 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 06/18] 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 80ad7f15cc6806bad97d05e5a9bb0591fc760334 Mon Sep 17 00:00:00 2001 From: kittenchilly Date: Mon, 26 Aug 2024 13:09:50 -0500 Subject: [PATCH 07/18] 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 c075d8e6b1eef6c6948d19647a42e1a9a3c9e3b1 Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Mon, 26 Aug 2024 15:59:01 -0400 Subject: [PATCH 08/18] 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 09/18] 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 10/18] 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 11/18] 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 12/18] 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 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 13/18] 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 14/18] 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 15/18] 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 16/18] 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 17/18] 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 18/18] 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;