From 4ac9dea30e60d6e82d4eec8988e92b7fc74f829b Mon Sep 17 00:00:00 2001 From: PhallenTree <168426989+PhallenTree@users.noreply.github.com> Date: Fri, 20 Dec 2024 10:11:18 +0000 Subject: [PATCH] Fixes Quash-affected battlers having the wrong order for End Turn effects (#5838) --- src/battle_anim_effects_1.c | 1 + src/battle_util.c | 7 +------ 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/src/battle_anim_effects_1.c b/src/battle_anim_effects_1.c index 1d50cee3d1..da0faed032 100644 --- a/src/battle_anim_effects_1.c +++ b/src/battle_anim_effects_1.c @@ -6757,6 +6757,7 @@ static void AnimTask_AllySwitchDataSwap(u8 taskId) break; } SWAP(gBattlerByTurnOrder[i], gBattlerByTurnOrder[j], temp); + SWAP(gActionsByTurnOrder[i], gActionsByTurnOrder[j], temp); break; } } diff --git a/src/battle_util.c b/src/battle_util.c index 5644696776..0776b6e392 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -1679,17 +1679,12 @@ u8 DoFieldEndTurnEffects(void) switch (gBattleStruct->turnCountersTracker) { case ENDTURN_ORDER: - for (i = 0; i < gBattlersCount; i++) - { - gBattlerByTurnOrder[i] = i; - } for (i = 0; i < gBattlersCount - 1; i++) { s32 j; for (j = i + 1; j < gBattlersCount; j++) { - if (!gProtectStructs[i].quash - && !gProtectStructs[j].quash + if (!(gProtectStructs[i].quash && gProtectStructs[j].quash) && GetWhichBattlerFaster(gBattlerByTurnOrder[i], gBattlerByTurnOrder[j], FALSE) == -1) SwapTurnOrder(i, j); }