From 5108d173fc2970dc3fed4514d173eb6e5a693c2b Mon Sep 17 00:00:00 2001 From: ghoulslash Date: Wed, 13 Oct 2021 10:11:02 -0400 Subject: [PATCH] fix protect struct fields being set during ai calcs --- src/battle_ai_main.c | 6 +++++- src/battle_main.c | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/battle_ai_main.c b/src/battle_ai_main.c index 2ab6e287e4..188b30ceed 100644 --- a/src/battle_ai_main.c +++ b/src/battle_ai_main.c @@ -209,7 +209,11 @@ u8 BattleAI_ChooseMoveOrAction(void) ret = ChooseMoveOrAction_Singles(); else ret = ChooseMoveOrAction_Doubles(); - + + // Clear protect structures, some flags may be set during AI calcs + // e.g. pranksterElevated from GetMovePriority + memset(&gProtectStructs[gActiveBattler], 0, sizeof(struct ProtectStruct)); + gCurrentMove = savedCurrentMove; return ret; } diff --git a/src/battle_main.c b/src/battle_main.c index 055ec9bbe8..a304defee9 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -3097,6 +3097,7 @@ void FaintClearSetData(void) gProtectStructs[gActiveBattler].usedThroatChopPreventedMove = 0; gProtectStructs[gActiveBattler].statRaised = 0; gProtectStructs[gActiveBattler].statFell = 0; + gProtectStructs[gActiveBattler].pranksterElevated = 0; gDisableStructs[gActiveBattler].isFirstTurn = 2;