diff options
Diffstat (limited to 'include/battle.h')
-rw-r--r-- | include/battle.h | 31 |
1 files changed, 23 insertions, 8 deletions
diff --git a/include/battle.h b/include/battle.h index f98b2231a..ee707f78b 100644 --- a/include/battle.h +++ b/include/battle.h @@ -28,7 +28,7 @@ #define SIDE_OPPONENT 0x1 #define GET_BANK_IDENTITY(bank)((gBanksByIdentity[bank])) -#define GET_BANK_SIDE(bank)((GetBankIdentity(bank) & BIT_SIDE)) +#define GET_BANK_SIDE(bank)((GetBattlerPosition(bank) & BIT_SIDE)) #define GET_BANK_SIDE2(bank)((GET_BANK_IDENTITY(bank) & BIT_SIDE)) #define BATTLE_TYPE_DOUBLE 0x0001 @@ -47,7 +47,7 @@ #define BATTLE_TYPE_LEGENDARY 0x2000 #define BATTLE_TYPE_REGI 0x4000 #define BATTLE_TYPE_TWO_OPPONENTS 0x8000 -#define BATTLE_TYPE_DOME 0x10000 +#define BATTLE_TYPE_DOME 0x10000 // this is used in pokemon.c, but its clearly not the correct name for FR/LG. TODO: Fix these #define BATTLE_TYPE_PALACE 0x20000 #define BATTLE_TYPE_ARENA 0x40000 #define BATTLE_TYPE_FACTORY 0x80000 @@ -210,7 +210,7 @@ struct TrainerMonNoItemDefaultMoves }; u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg); -u8 GetBankSide(u8 bank); +u8 GetBattlerSide(u8 bank); struct TrainerMonItemDefaultMoves { @@ -545,7 +545,7 @@ struct BattleStruct u8 field_46; u8 field_47; u8 focusPunchBank; - u8 field_49; + u8 battlerPreventingSwitchout; u8 moneyMultiplier; u8 savedTurnActionNumber; u8 switchInAbilitiesCounter; @@ -598,7 +598,7 @@ struct BattleStruct u8 field_A7; u16 hpOnSwitchout[2]; u32 savedBattleTypeFlags; - u8 field_B0; + u8 abilityPreventingSwitchout; u8 hpScale; u8 synchronizeMoveEffect; u8 field_B3; @@ -646,6 +646,9 @@ extern struct BattleStruct* gBattleStruct; typeArg = gBattleMoves[move].type; \ } +#define IS_TYPE_PHYSICAL(moveType)(moveType < TYPE_MYSTERY) +#define IS_TYPE_SPECIAL(moveType)(moveType > TYPE_MYSTERY) + #define MOVE_EFFECT_SLEEP 0x1 #define MOVE_EFFECT_POISON 0x2 #define MOVE_EFFECT_BURN 0x3 @@ -847,9 +850,9 @@ enum }; // rom_80A5C6C -u8 GetBankSide(u8 bank); -u8 GetBankIdentity(u8 bank); -u8 GetBankByIdentity(u8 bank); +u8 GetBattlerSide(u8 bank); +u8 GetBattlerPosition(u8 bank); +u8 GetBattlerAtPosition(u8 bank); struct BattleSpriteInfo { @@ -961,5 +964,17 @@ extern u16 gLastUsedItem; extern u32 gBattleTypeFlags; extern struct MonSpritesGfx* gMonSpritesGfxPtr; extern u16 gTrainerBattleOpponent_A; +extern u16 gMoveToLearn; +extern u16 gBattleMovePower; +extern struct BattleEnigmaBerry gEnigmaBerries[MAX_BATTLERS_COUNT]; +extern u16 gCurrentMove; +extern u8 gCritMultiplier; +extern u16 gBattleWeather; +extern u8 gLastUsedAbility; +extern u8 gBattlerInMenuId; +extern u8 gPotentialItemEffectBattler; +extern u8 gBattlersCount; +extern u16 gBattlerPartyIndexes[MAX_BATTLERS_COUNT]; +extern s32 gBattleMoveDamage; #endif // GUARD_BATTLE_H |