diff options
Diffstat (limited to 'src/battle_main.c')
-rw-r--r-- | src/battle_main.c | 132 |
1 files changed, 67 insertions, 65 deletions
diff --git a/src/battle_main.c b/src/battle_main.c index 56eabd515..721aa7f9f 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -9,6 +9,7 @@ #include "gba/flash_internal.h" #include "battle.h" #include "battle_ai_script_commands.h" +#include "battle_controllers.h" #include "battle_interface.h" #include "battle_message.h" #include "battle_setup.h" @@ -32,7 +33,6 @@ #include "pokemon.h" #include "random.h" #include "roamer.h" -#include "rom3.h" #include "rom_8077ABC.h" #include "rom_8094928.h" #include "safari_zone.h" @@ -83,7 +83,7 @@ extern u32 gBattleControllerExecFlags; extern u8 gBattlersCount; extern u16 gBattlerPartyIndexes[]; extern u8 gCurrentActionFuncId; -extern u8 gBanksByTurnOrder[]; +extern u8 gBattlerByTurnOrder[]; extern u8 gBattlerSpriteIds[]; extern u16 gCurrentMove; // This is mis-named. It is a species, not a move ID. extern u8 gLastUsedAbility; @@ -92,7 +92,7 @@ extern u8 gAbsentBattlerFlags; extern u8 gMultiHitCounter; extern u8 gActionForBanks[]; extern u16 gUnknown_02024C2C[]; -extern u16 gLastUsedMove[]; +extern u16 gLastMoves[]; extern u16 gLastLandedMoves[]; extern u16 gLastHitByType[]; extern u16 gUnknown_02024C4C[]; @@ -100,7 +100,7 @@ extern u16 gLockedMoves[]; extern u16 gChosenMovesByBanks[]; extern u32 gHitMarker; extern u8 gUnknown_02024C70[]; -extern u16 gSideAffecting[]; +extern u16 gSideStatuses[]; extern u32 gStatuses3[]; //extern u8 gDisableStructs[][0x1C]; extern u16 gPauseCounterBattle; @@ -208,7 +208,7 @@ void CB2_InitBattle(void) { if (gBattleTypeFlags & BATTLE_TYPE_MULTI) { - sub_800B858(); + HandleLinkBattleSetup(); SetMainCallback2(sub_800F104); gBattleCommunication[0] = 0; } @@ -1402,9 +1402,9 @@ extern const u16 gUnknown_Debug_821F424[][5]; extern const u16 gUnknown_Debug_821F56C[][5]; extern const u32 gUnknown_Debug_821F798[][4]; -extern const u8 gUnusedOldCharmap_Gfx_lz[]; -extern const u8 gUnusedOldCharmap_Tilemap_lz[]; -extern const u8 gUnusedOldCharmap_Pal_lz[]; +extern const u8 gDebugBattleCharmap_Gfx_lz[]; +extern const u8 gDebugBattleCharmap_Tilemap_lz[]; +extern const u8 gDebugBattleCharmap_Pal_lz[]; void debug_sub_8010800(void) { @@ -1457,10 +1457,10 @@ void debug_sub_80108B8(void) REG_BG1CNT = 0x4801; REG_BLDCNT = 0; REG_BLDY = 0; - LZDecompressVram(gUnusedOldCharmap_Gfx_lz, (void *)VRAM); - LZDecompressWram(gUnusedOldCharmap_Tilemap_lz, gSharedMem); - LZDecompressVram(gUnusedOldCharmap_Pal_lz, (void *)PLTT); - LZDecompressVram(gUnusedOldCharmap_Pal_lz, (void *)(PLTT + 0x1E0)); + LZDecompressVram(gDebugBattleCharmap_Gfx_lz, (void *)VRAM); + LZDecompressWram(gDebugBattleCharmap_Tilemap_lz, gSharedMem); + LZDecompressVram(gDebugBattleCharmap_Pal_lz, (void *)PLTT); + LZDecompressVram(gDebugBattleCharmap_Pal_lz, (void *)(PLTT + 0x1E0)); m4aSoundVSyncOn(); SetVBlankCallback(debug_sub_8011D40); SetMainCallback2(debug_sub_8010CAC); @@ -2475,11 +2475,13 @@ void debug_nullsub_3(void) extern const u32 gUnknown_Debug_821F680[][0x23]; +// Shows a cursor void debug_sub_80125A0(void) { gSharedMem[gUnknown_Debug_821F680[gUnknown_Debug_03004360][gUnknown_Debug_030043A0 + gUnknown_Debug_030043A4 * 5]] = 0x6D; } +// Hides a cursor void debug_sub_80125E4(void) { gSharedMem[gUnknown_Debug_821F680[gUnknown_Debug_03004360][gUnknown_Debug_030043A0 + gUnknown_Debug_030043A4 * 5]] = 0x81; @@ -3329,7 +3331,7 @@ void sub_8010874(void) MEMSET_ALT(&gDisableStructs[i], 0, 0x1C, j, r4); gDisableStructs[i].isFirstTurn= 2; gUnknown_02024C70[i] = 0; - gLastUsedMove[i] = 0; + gLastMoves[i] = 0; gLastLandedMoves[i] = 0; gLastHitByType[i] = 0; gUnknown_02024C4C[i] = 0; @@ -3341,7 +3343,7 @@ void sub_8010874(void) for (i = 0; i < 2; i++) { - gSideAffecting[i] = 0; + gSideStatuses[i] = 0; MEMSET_ALT(&gSideTimers[i], 0, 12, j, r4); } @@ -3399,7 +3401,7 @@ void sub_8010874(void) gBattleResults.unk2 = 0; gBattleResults.unk3 = 0; gBattleResults.unk4 = 0; - gBattleResults.unk5_0 = 0; + gBattleResults.playerMonWasDamaged = 0; gBattleResults.unk5_1 = 0; gBattleResults.lastOpponentSpecies = 0; gBattleResults.lastUsedMove = 0; @@ -3433,23 +3435,23 @@ void SwitchInClearSetData(void) { if ((gBattleMons[i].status2 & STATUS2_ESCAPE_PREVENTION) && gDisableStructs[i].bankPreventingEscape == gActiveBattler) gBattleMons[i].status2 &= ~STATUS2_ESCAPE_PREVENTION; - if ((gStatuses3[i] & STATUS3_ALWAYS_HITS) && gDisableStructs[i].bankWithSureHit == gActiveBattler) + if ((gStatuses3[i] & STATUS3_ALWAYS_HITS) && gDisableStructs[i].battlerWithSureHit == gActiveBattler) { gStatuses3[i] &= ~STATUS3_ALWAYS_HITS; - gDisableStructs[i].bankWithSureHit = 0; + gDisableStructs[i].battlerWithSureHit = 0; } } } if (gBattleMoves[gCurrentMove].effect == EFFECT_BATON_PASS) { gBattleMons[gActiveBattler].status2 &= (STATUS2_CONFUSION | STATUS2_FOCUS_ENERGY | STATUS2_SUBSTITUTE | STATUS2_ESCAPE_PREVENTION | STATUS2_CURSED); - gStatuses3[gActiveBattler] &= (STATUS3_LEECHSEED_BANK | STATUS3_LEECHSEED | STATUS3_ALWAYS_HITS | STATUS3_PERISH_SONG | STATUS3_ROOTED | STATUS3_MUDSPORT | STATUS3_WATERSPORT); + gStatuses3[gActiveBattler] &= (STATUS3_LEECHSEED_BATTLER | STATUS3_LEECHSEED | STATUS3_ALWAYS_HITS | STATUS3_PERISH_SONG | STATUS3_ROOTED | STATUS3_MUDSPORT | STATUS3_WATERSPORT); for (i = 0; i < gBattlersCount; i++) { if (GetBattlerSide(gActiveBattler) != GetBattlerSide(i) && (gStatuses3[i] & STATUS3_ALWAYS_HITS) != 0 - && (gDisableStructs[i].bankWithSureHit == gActiveBattler)) + && (gDisableStructs[i].battlerWithSureHit == gActiveBattler)) { gStatuses3[i] &= ~STATUS3_ALWAYS_HITS; gStatuses3[i] |= 0x10; @@ -3478,13 +3480,13 @@ void SwitchInClearSetData(void) if (gBattleMoves[gCurrentMove].effect == EFFECT_BATON_PASS) { gDisableStructs[gActiveBattler].substituteHP = sp0.substituteHP; - gDisableStructs[gActiveBattler].bankWithSureHit = sp0.bankWithSureHit; + gDisableStructs[gActiveBattler].battlerWithSureHit = sp0.battlerWithSureHit; gDisableStructs[gActiveBattler].perishSongTimer1 = sp0.perishSongTimer1; gDisableStructs[gActiveBattler].perishSongTimer2 = sp0.perishSongTimer2; } gDisableStructs[gActiveBattler].isFirstTurn= 2; - gLastUsedMove[gActiveBattler] = 0; + gLastMoves[gActiveBattler] = 0; gLastLandedMoves[gActiveBattler] = 0; gLastHitByType[gActiveBattler] = 0; gUnknown_02024C4C[gActiveBattler] = 0; @@ -3548,7 +3550,7 @@ void UndoEffectsAfterFainting(void) gProtectStructs[gActiveBattler].notFirstStrike = 0; gDisableStructs[gActiveBattler].isFirstTurn= 2; - gLastUsedMove[gActiveBattler] = 0; + gLastMoves[gActiveBattler] = 0; gLastLandedMoves[gActiveBattler] = 0; gLastHitByType[gActiveBattler] = 0; gUnknown_02024C4C[gActiveBattler] = 0; @@ -3885,12 +3887,12 @@ void BattleBeginFirstTurn(void) if (ewram16058 == 0) { for (i = 0; i < gBattlersCount; i++) - gBanksByTurnOrder[i] = i; + gBattlerByTurnOrder[i] = i; for (i = 0; i < gBattlersCount - 1; i++) { for (j = i + 1; j < gBattlersCount; j++) { - if (GetWhoStrikesFirst(gBanksByTurnOrder[i], gBanksByTurnOrder[j], 1) != 0) + if (GetWhoStrikesFirst(gBattlerByTurnOrder[i], gBattlerByTurnOrder[j], 1) != 0) SwapTurnOrder(i, j); } } @@ -3902,7 +3904,7 @@ void BattleBeginFirstTurn(void) } while (ewram16058 < gBattlersCount) { - if (AbilityBattleEffects(0, gBanksByTurnOrder[ewram16058], 0, 0, 0) != 0) + if (AbilityBattleEffects(0, gBattlerByTurnOrder[ewram16058], 0, 0, 0) != 0) r9++; ewram16058++; if (r9 != 0) @@ -3914,7 +3916,7 @@ void BattleBeginFirstTurn(void) return; while (ewram160F9 < gBattlersCount) { - if (ItemBattleEffects(0, gBanksByTurnOrder[ewram160F9], 0) != 0) + if (ItemBattleEffects(0, gBattlerByTurnOrder[ewram160F9], 0) != 0) r9++; ewram160F9++; if (r9 != 0) @@ -3981,7 +3983,7 @@ void BattleTurnPassed(void) TurnValuesCleanUp(1); if (gBattleOutcome == 0) { - if (UpdateTurnCounters() != 0) + if (DoFieldEndTurnEffects() != 0) return; if (TurnBasedEffects() != 0) return; @@ -4482,9 +4484,9 @@ void SwapTurnOrder(u8 a, u8 b) gActionsByTurnOrder[a] = gActionsByTurnOrder[b]; gActionsByTurnOrder[b] = temp; - temp = gBanksByTurnOrder[a]; - gBanksByTurnOrder[a] = gBanksByTurnOrder[b]; - gBanksByTurnOrder[b] = temp; + temp = gBattlerByTurnOrder[a]; + gBattlerByTurnOrder[a] = gBattlerByTurnOrder[b]; + gBattlerByTurnOrder[b] = temp; } // Determines which of the two given mons will strike first in a battle. @@ -4545,7 +4547,7 @@ u8 GetWhoStrikesFirst(u8 bank1, u8 bank2, bool8 ignoreMovePriorities) if (heldItemEffect == HOLD_EFFECT_MACHO_BRACE) bank1AdjustedSpeed /= 2; - if (gBattleMons[bank1].status1 & STATUS_PARALYSIS) + if (gBattleMons[bank1].status1 & STATUS1_PARALYSIS) bank1AdjustedSpeed /= 4; if (heldItemEffect == HOLD_EFFECT_QUICK_CLAW && gRandomTurnNumber < (heldItemEffectParam * 0xFFFF) / 100) @@ -4575,7 +4577,7 @@ u8 GetWhoStrikesFirst(u8 bank1, u8 bank2, bool8 ignoreMovePriorities) if (heldItemEffect == HOLD_EFFECT_MACHO_BRACE) bank2AdjustedSpeed /= 2; - if (gBattleMons[bank2].status1 & STATUS_PARALYSIS) + if (gBattleMons[bank2].status1 & STATUS1_PARALYSIS) bank2AdjustedSpeed /= 4; if (heldItemEffect == HOLD_EFFECT_QUICK_CLAW && gRandomTurnNumber < (heldItemEffectParam * 0xFFFF) / 100) @@ -4642,7 +4644,7 @@ void SetActionsAndBanksTurnOrder(void) for (gActiveBattler = 0; gActiveBattler < gBattlersCount; gActiveBattler++) { gActionsByTurnOrder[var] = gActionForBanks[gActiveBattler]; - gBanksByTurnOrder[var] = gActiveBattler; + gBattlerByTurnOrder[var] = gActiveBattler; var++; } } @@ -4671,14 +4673,14 @@ void SetActionsAndBanksTurnOrder(void) if (var == 5) { gActionsByTurnOrder[0] = gActionForBanks[gActiveBattler]; - gBanksByTurnOrder[0] = gActiveBattler; + gBattlerByTurnOrder[0] = gActiveBattler; var = 1; for (i = 0; i < gBattlersCount; i++) { if (i != gActiveBattler) { gActionsByTurnOrder[var] = gActionForBanks[i]; - gBanksByTurnOrder[var] = i; + gBattlerByTurnOrder[var] = i; var++; } } @@ -4693,7 +4695,7 @@ void SetActionsAndBanksTurnOrder(void) if (gActionForBanks[gActiveBattler] == B_ACTION_USE_ITEM || gActionForBanks[gActiveBattler] == B_ACTION_SWITCH) { gActionsByTurnOrder[var] = gActionForBanks[gActiveBattler]; - gBanksByTurnOrder[var] = gActiveBattler; + gBattlerByTurnOrder[var] = gActiveBattler; var++; } } @@ -4702,7 +4704,7 @@ void SetActionsAndBanksTurnOrder(void) if (gActionForBanks[gActiveBattler] != B_ACTION_USE_ITEM && gActionForBanks[gActiveBattler] != B_ACTION_SWITCH) { gActionsByTurnOrder[var] = gActionForBanks[gActiveBattler]; - gBanksByTurnOrder[var] = gActiveBattler; + gBattlerByTurnOrder[var] = gActiveBattler; var++; } } @@ -4710,8 +4712,8 @@ void SetActionsAndBanksTurnOrder(void) { for (j = i + 1; j < gBattlersCount; j++) { - u8 bank1 = gBanksByTurnOrder[i]; - u8 bank2 = gBanksByTurnOrder[j]; + u8 bank1 = gBattlerByTurnOrder[i]; + u8 bank2 = gBattlerByTurnOrder[j]; if (gActionsByTurnOrder[i] != B_ACTION_USE_ITEM && gActionsByTurnOrder[j] != B_ACTION_USE_ITEM && gActionsByTurnOrder[i] != B_ACTION_SWITCH @@ -4787,7 +4789,7 @@ void CheckFocusPunch_ClearVarsBeforeTurnStarts(void) gActiveBattler = gBattlerAttacker = eFocusPunchBattler; eFocusPunchBattler++; if (gChosenMovesByBanks[gActiveBattler] == MOVE_FOCUS_PUNCH - && !(gBattleMons[gActiveBattler].status1 & STATUS_SLEEP) + && !(gBattleMons[gActiveBattler].status1 & STATUS1_SLEEP) && !(gDisableStructs[gBattlerAttacker].truantCounter) && !(gProtectStructs[gActiveBattler].noValidMoves)) { @@ -4846,7 +4848,7 @@ void HandleEndTurn_BattleWon(void) gBattleTextBuff1[0] = gBattleOutcome; gBattlerAttacker = GetBattlerAtPosition(B_POSITION_PLAYER_LEFT); gBattlescriptCurrInstr = BattleScript_LinkBattleWonOrLost; - gBattleOutcome &= ~(OUTCOME_LINK_BATTLE_RUN); + gBattleOutcome &= ~(B_OUTCOME_LINK_BATTLE_RAN); } else if (gBattleTypeFlags & (BATTLE_TYPE_BATTLE_TOWER | BATTLE_TYPE_EREADER_TRAINER)) { @@ -4896,7 +4898,7 @@ void HandleEndTurn_BattleLost(void) gBattleTextBuff1[0] = gBattleOutcome; gBattlerAttacker = GetBattlerAtPosition(B_POSITION_PLAYER_LEFT); gBattlescriptCurrInstr = BattleScript_LinkBattleWonOrLost; - gBattleOutcome &= ~(OUTCOME_LINK_BATTLE_RUN); + gBattleOutcome &= ~(B_OUTCOME_LINK_BATTLE_RAN); } else { @@ -4983,7 +4985,7 @@ static void FreeResetData_ReturnToOvOrDoEvolutions(void) if (!gPaletteFade.active) { ResetSpriteData(); - if (gLeveledUpInBattle == 0 || gBattleOutcome != BATTLE_WON) + if (gLeveledUpInBattle == 0 || gBattleOutcome != B_OUTCOME_WON) { gBattleMainFunc = ReturnFromBattleToOverworld; return; @@ -5049,7 +5051,7 @@ static void ReturnFromBattleToOverworld(void) if (gBattleTypeFlags & BATTLE_TYPE_ROAMER) { UpdateRoamerHPStatus(&gEnemyParty[0]); - if (gBattleOutcome == BATTLE_WON || gBattleOutcome == BATTLE_CAUGHT) + if (gBattleOutcome == B_OUTCOME_WON || gBattleOutcome == B_OUTCOME_CAUGHT) SetRoamerInactive(); } @@ -5083,7 +5085,7 @@ void HandleAction_UseMove(void) u8 side; u8 var = 4; - gBattlerAttacker = gBanksByTurnOrder[gCurrentTurnActionNumber]; + gBattlerAttacker = gBattlerByTurnOrder[gCurrentTurnActionNumber]; if (ewram160A6 & gBitTable[gBattlerAttacker]) { @@ -5167,9 +5169,9 @@ void HandleAction_UseMove(void) if (side != GetBattlerSide(gActiveBattler) && ewram16010arr(gBattlerAttacker) != gActiveBattler && gBattleMons[gActiveBattler].ability == ABILITY_LIGHTNING_ROD - && BankGetTurnOrder(gActiveBattler) < var) + && GetBattlerTurnOrderNum(gActiveBattler) < var) { - var = BankGetTurnOrder(gActiveBattler); + var = GetBattlerTurnOrderNum(gActiveBattler); } } if (var == 4) @@ -5212,7 +5214,7 @@ void HandleAction_UseMove(void) } else { - gActiveBattler = gBanksByTurnOrder[var]; + gActiveBattler = gBattlerByTurnOrder[var]; RecordAbilityBattle(gActiveBattler, gBattleMons[gActiveBattler].ability); gSpecialStatuses[gActiveBattler].lightningRodRedirected = 1; gBattlerTarget = gActiveBattler; @@ -5266,7 +5268,7 @@ void HandleAction_UseMove(void) void HandleAction_Switch(void) { - gBattlerAttacker = gBanksByTurnOrder[gCurrentTurnActionNumber]; + gBattlerAttacker = gBattlerByTurnOrder[gCurrentTurnActionNumber]; gBattle_BG0_X = 0; gBattle_BG0_Y = 0; gActionSelectionCursor[gBattlerAttacker] = 0; @@ -5284,7 +5286,7 @@ void HandleAction_Switch(void) void HandleAction_UseItem(void) { - gBattlerAttacker = gBattlerTarget = gBanksByTurnOrder[gCurrentTurnActionNumber]; + gBattlerAttacker = gBattlerTarget = gBattlerByTurnOrder[gCurrentTurnActionNumber]; gBattle_BG0_X = 0; gBattle_BG0_Y = 0; gDisableStructs[gBattlerAttacker].furyCutterCounter = 0; @@ -5407,7 +5409,7 @@ bool8 TryRunFromBattle(u8 bank) if (effect) { gCurrentTurnActionNumber = gBattlersCount; - gBattleOutcome = BATTLE_RAN; + gBattleOutcome = B_OUTCOME_RAN; } return effect; @@ -5415,7 +5417,7 @@ bool8 TryRunFromBattle(u8 bank) void HandleAction_Run(void) { - gBattlerAttacker = gBanksByTurnOrder[gCurrentTurnActionNumber]; + gBattlerAttacker = gBattlerByTurnOrder[gCurrentTurnActionNumber]; if (gBattleTypeFlags & BATTLE_TYPE_LINK) { @@ -5426,16 +5428,16 @@ void HandleAction_Run(void) if (GetBattlerSide(gActiveBattler) == B_SIDE_PLAYER) { if (gActionForBanks[gActiveBattler] == B_ACTION_RUN) - gBattleOutcome |= BATTLE_LOST; + gBattleOutcome |= B_OUTCOME_LOST; } else { if (gActionForBanks[gActiveBattler] == B_ACTION_RUN) - gBattleOutcome |= BATTLE_WON; + gBattleOutcome |= B_OUTCOME_WON; } } - gBattleOutcome |= OUTCOME_LINK_BATTLE_RUN; + gBattleOutcome |= B_OUTCOME_LINK_BATTLE_RAN; } else { @@ -5460,7 +5462,7 @@ void HandleAction_Run(void) else { gCurrentTurnActionNumber = gBattlersCount; - gBattleOutcome = BATTLE_POKE_FLED; + gBattleOutcome = B_OUTCOME_MON_FLED; } } } @@ -5468,7 +5470,7 @@ void HandleAction_Run(void) void HandleAction_WatchesCarefully(void) { - gBattlerAttacker = gBanksByTurnOrder[gCurrentTurnActionNumber]; + gBattlerAttacker = gBattlerByTurnOrder[gCurrentTurnActionNumber]; gBattle_BG0_X = 0; gBattle_BG0_Y = 0; gBattlescriptCurrInstr = gBattlescriptsForSafariActions[0]; @@ -5477,7 +5479,7 @@ void HandleAction_WatchesCarefully(void) void HandleAction_SafariZoneBallThrow(void) { - gBattlerAttacker = gBanksByTurnOrder[gCurrentTurnActionNumber]; + gBattlerAttacker = gBattlerByTurnOrder[gCurrentTurnActionNumber]; gBattle_BG0_X = 0; gBattle_BG0_Y = 0; gNumSafariBalls--; @@ -5488,7 +5490,7 @@ void HandleAction_SafariZoneBallThrow(void) void HandleAction_ThrowPokeblock(void) { - gBattlerAttacker = gBanksByTurnOrder[gCurrentTurnActionNumber]; + gBattlerAttacker = gBattlerByTurnOrder[gCurrentTurnActionNumber]; gBattle_BG0_X = 0; gBattle_BG0_Y = 0; gBattleCommunication[MULTISTRING_CHOOSER] = gBattleBufferB[gBattlerAttacker][1] - 1; @@ -5510,7 +5512,7 @@ void HandleAction_ThrowPokeblock(void) void HandleAction_GoNear(void) { - gBattlerAttacker = gBanksByTurnOrder[gCurrentTurnActionNumber]; + gBattlerAttacker = gBattlerByTurnOrder[gCurrentTurnActionNumber]; gBattle_BG0_X = 0; gBattle_BG0_Y = 0; @@ -5537,15 +5539,15 @@ void HandleAction_GoNear(void) void HandleAction_SafriZoneRun(void) { - gBattlerAttacker = gBanksByTurnOrder[gCurrentTurnActionNumber]; + gBattlerAttacker = gBattlerByTurnOrder[gCurrentTurnActionNumber]; PlaySE(SE_NIGERU); gCurrentTurnActionNumber = gBattlersCount; - gBattleOutcome = BATTLE_RAN; + gBattleOutcome = B_OUTCOME_RAN; } void HandleAction_Action9(void) { - gBattlerAttacker = gBanksByTurnOrder[gCurrentTurnActionNumber]; + gBattlerAttacker = gBattlerByTurnOrder[gCurrentTurnActionNumber]; gBattle_BG0_X = 0; gBattle_BG0_Y = 0; @@ -5573,7 +5575,7 @@ void HandleAction_NothingIsFainted(void) | HITMARKER_NO_PPDEDUCT | HITMARKER_IGNORE_SAFEGUARD | HITMARKER_IGNORE_ON_AIR | HITMARKER_IGNORE_UNDERGROUND | HITMARKER_IGNORE_UNDERWATER | HITMARKER_x100000 | HITMARKER_OBEYS | HITMARKER_x10 | HITMARKER_SYNCHRONISE_EFFECT - | HITMARKER_x8000000 | HITMARKER_x4000000); + | HITMARKER_CHARGING | HITMARKER_x4000000); } void HandleAction_ActionFinished(void) @@ -5585,7 +5587,7 @@ void HandleAction_ActionFinished(void) | HITMARKER_NO_PPDEDUCT | HITMARKER_IGNORE_SAFEGUARD | HITMARKER_IGNORE_ON_AIR | HITMARKER_IGNORE_UNDERGROUND | HITMARKER_IGNORE_UNDERWATER | HITMARKER_x100000 | HITMARKER_OBEYS | HITMARKER_x10 | HITMARKER_SYNCHRONISE_EFFECT - | HITMARKER_x8000000 | HITMARKER_x4000000); + | HITMARKER_CHARGING | HITMARKER_x4000000); gBattleMoveDamage = 0; ewram16002 = 0; |