From fe2d7442af2004783358e2106a766d49f175cbce Mon Sep 17 00:00:00 2001 From: hedara90 <90hedara@gmail.com> Date: Sat, 3 May 2025 10:54:49 +0200 Subject: [PATCH] Remove old slide workaround (#6754) Co-authored-by: Hedara --- data/battle_scripts_2.s | 10 ++++------ include/battle.h | 1 - include/constants/battle.h | 6 ++++++ src/battle_script_commands.c | 11 ++--------- 4 files changed, 12 insertions(+), 16 deletions(-) diff --git a/data/battle_scripts_2.s b/data/battle_scripts_2.s index 572d076fab..27e3706e3f 100644 --- a/data/battle_scripts_2.s +++ b/data/battle_scripts_2.s @@ -265,13 +265,12 @@ BattleScript_ActionWallyThrow: end2 BattleScript_TrainerASlideMsgRet:: - handletrainerslidemsg BS_SCRIPTING, 0 trainerslidein BS_OPPONENT1 - handletrainerslidemsg BS_SCRIPTING, 1 + handletrainerslidemsg BS_SCRIPTING, PRINT_SLIDE_MESSAGE waitstate trainerslideout BS_OPPONENT1 waitstate - handletrainerslidemsg BS_SCRIPTING, 2 + handletrainerslidemsg BS_SCRIPTING, RESTORE_BATTLER_SLIDE_CONTROL return BattleScript_TrainerASlideMsgEnd2:: @@ -279,13 +278,12 @@ BattleScript_TrainerASlideMsgEnd2:: end2 BattleScript_TrainerBSlideMsgRet:: - handletrainerslidemsg BS_SCRIPTING, 0 trainerslidein BS_OPPONENT2 - handletrainerslidemsg BS_SCRIPTING, 1 + handletrainerslidemsg BS_SCRIPTING, PRINT_SLIDE_MESSAGE waitstate trainerslideout BS_OPPONENT2 waitstate - handletrainerslidemsg BS_SCRIPTING, 2 + handletrainerslidemsg BS_SCRIPTING, RESTORE_BATTLER_SLIDE_CONTROL return BattleScript_TrainerBSlideMsgEnd2:: diff --git a/include/battle.h b/include/battle.h index 49bd92cb1c..8874857efb 100644 --- a/include/battle.h +++ b/include/battle.h @@ -825,7 +825,6 @@ struct BattleStruct u8 usedMicleBerry; struct MessageStatus slideMessageStatus; u8 trainerSlideSpriteIds[MAX_BATTLERS_COUNT]; - u8 storeBattlerSpriteId; u16 opponentMonCanTera:6; u16 opponentMonCanDynamax:6; u16 padding:4; diff --git a/include/constants/battle.h b/include/constants/battle.h index 3bc59e8773..86226013d5 100644 --- a/include/constants/battle.h +++ b/include/constants/battle.h @@ -605,4 +605,10 @@ enum StartingStatus STARTING_STATUS_SWAMP_OPPONENT, }; +enum SlideMsgStates +{ + PRINT_SLIDE_MESSAGE, + RESTORE_BATTLER_SLIDE_CONTROL, +}; + #endif // GUARD_CONSTANTS_BATTLE_H diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index c9db4dbc99..03680aa5fc 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -11128,20 +11128,13 @@ static void Cmd_various(void) case VARIOUS_HANDLE_TRAINER_SLIDE_MSG: { VARIOUS_ARGS(u8 case_); - if (cmd->case_ == 0) - { - // Save sprite IDs, because trainer slide in will overwrite gBattlerSpriteIds variable. - gBattleStruct->storeBattlerSpriteId = (gBattlerSpriteIds[battler] & 0xFF) | (gBattlerSpriteIds[BATTLE_PARTNER(battler)] << 8); - } - else if (cmd->case_ == 1) + if (cmd->case_ == PRINT_SLIDE_MESSAGE) { BtlController_EmitPrintString(battler, BUFFER_A, STRINGID_TRAINERSLIDE); MarkBattlerForControllerExec(battler); } - else + else if (cmd->case_ == RESTORE_BATTLER_SLIDE_CONTROL) { - gBattlerSpriteIds[BATTLE_PARTNER(battler)] = gBattleStruct->storeBattlerSpriteId >> 8; - gBattlerSpriteIds[battler] = gBattleStruct->storeBattlerSpriteId & 0xFF; if (IsBattlerAlive(battler)) { SetBattlerShadowSpriteCallback(battler, gBattleMons[battler].species);