diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/battle.h | 9 | ||||
-rw-r--r-- | include/battle_util.h | 28 |
2 files changed, 23 insertions, 14 deletions
diff --git a/include/battle.h b/include/battle.h index 09a53c8a0..01439f3f6 100644 --- a/include/battle.h +++ b/include/battle.h @@ -478,6 +478,15 @@ struct BattleStruct #define IS_MOVE_PHYSICAL(moveType)(moveType < TYPE_MYSTERY) #define IS_MOVE_SPECIAL(moveType)(moveType > TYPE_MYSTERY) +#define TARGET_TURN_DAMAGED ((gSpecialStatuses[gBattlerTarget].physicalDmg != 0 || gSpecialStatuses[gBattlerTarget].specialDmg != 0)) + +#define IS_BATTLER_OF_TYPE(battlerId, type)((gBattleMons[battlerId].type1 == type || gBattleMons[battlerId].type2 == type)) +#define SET_BATTLER_TYPE(battlerId, type) \ +{ \ + gBattleMons[battlerId].type1 = type; \ + gBattleMons[battlerId].type2 = type; \ +} + #define GET_STAT_BUFF_ID(n)((n & 0xF)) // first four bits 0x1, 0x2, 0x4, 0x8 #define GET_STAT_BUFF_VALUE(n)(((n >> 4) & 7)) // 0x10, 0x20, 0x40 #define STAT_BUFF_NEGATIVE 0x80 // 0x80, the sign bit diff --git a/include/battle_util.h b/include/battle_util.h index d992faa47..e5c1aaf18 100644 --- a/include/battle_util.h +++ b/include/battle_util.h @@ -49,36 +49,36 @@ void PressurePPLose(u8 bankDef, u8 bankAtk, u16 move); void PressurePPLoseOnUsingPerishSong(u8 bankAtk); void PressurePPLoseOnUsingImprision(u8 bankAtk); void MarkAllBattlersForControllerExec(void); // unused -void MarkBattlerForControllerExec(u8 bank); +void MarkBattlerForControllerExec(u8 battlerId); void sub_803F850(u8 arg0); -void CancelMultiTurnMoves(u8 bank); -bool8 WasUnableToUseMove(u8 bank); -void PrepareStringBattle(u16 stringId, u8 bank); +void CancelMultiTurnMoves(u8 battlerId); +bool8 WasUnableToUseMove(u8 battlerId); +void PrepareStringBattle(u16 stringId, u8 battlerId); void ResetSentPokesToOpponentValue(void); -void sub_803F9EC(u8 bank); -void sub_803FA70(u8 bank); +void sub_803F9EC(u8 battlerId); +void sub_803FA70(u8 battlerId); void BattleScriptPush(const u8* bsPtr); void BattleScriptPushCursor(void); void BattleScriptPop(void); u8 TrySetCantSelectMoveBattleScript(void); -u8 CheckMoveLimitations(u8 bank, u8 unusableMoves, u8 check); +u8 CheckMoveLimitations(u8 battlerId, u8 unusableMoves, u8 check); bool8 AreAllMovesUnusable(void); -u8 GetImprisonedMovesCount(u8 bank, u16 move); +u8 GetImprisonedMovesCount(u8 battlerId, u16 move); u8 UpdateTurnCounters(void); u8 TurnBasedEffects(void); bool8 HandleWishPerishSongOnTurnEnd(void); bool8 HandleFaintedMonActions(void); void TryClearRageStatuses(void); u8 AtkCanceller_UnableToUseMove(void); -bool8 sub_80423F4(u8 bank, u8 r1, u8 r2); -u8 CastformDataTypeChange(u8 bank); -u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg); +bool8 sub_80423F4(u8 battlerId, u8 r1, u8 r2); +u8 CastformDataTypeChange(u8 battlerId); +u8 AbilityBattleEffects(u8 caseID, u8 battlerId, u8 ability, u8 special, u16 moveArg); void BattleScriptExecute(const u8* BS_ptr); void BattleScriptPushCursorAndCallback(const u8* BS_ptr); -u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn); -void ClearFuryCutterDestinyBondGrudge(u8 bank); +u8 ItemBattleEffects(u8 caseID, u8 battlerId, bool8 moveTurn); +void ClearFuryCutterDestinyBondGrudge(u8 battlerId); void HandleAction_RunBattleScript(void); -u8 GetMoveTarget(u16 move, u8 useMoveTarget); +u8 GetMoveTarget(u16 move, u8 setTarget); u8 IsMonDisobedient(void); #endif // GUARD_BATTLE_UTIL_H |