diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/battle.h | 30 | ||||
-rw-r--r-- | include/battle_util.h | 53 | ||||
-rw-r--r-- | include/constants/abilities.h | 2 | ||||
-rw-r--r-- | include/constants/battle.h | 2 | ||||
-rw-r--r-- | include/constants/battle_frontier.h | 13 | ||||
-rw-r--r-- | include/constants/battle_script_commands.h | 2 | ||||
-rw-r--r-- | include/constants/moves.h | 2 | ||||
-rw-r--r-- | include/constants/trainers.h | 18 | ||||
-rw-r--r-- | include/data/battle_moves.h | 2 | ||||
-rw-r--r-- | include/data/text/abilities.h | 4 | ||||
-rw-r--r-- | include/pokemon.h | 2 | ||||
-rw-r--r-- | include/recorded_battle.h | 2 |
12 files changed, 68 insertions, 64 deletions
diff --git a/include/battle.h b/include/battle.h index 0169dde7c..6e941191f 100644 --- a/include/battle.h +++ b/include/battle.h @@ -16,12 +16,6 @@ #define GET_BATTLER_SIDE(battler) (GetBattlerPosition(battler) & BIT_SIDE) #define GET_BATTLER_SIDE2(battler) (GET_BATTLER_POSITION(battler) & BIT_SIDE) -#define TRAINER_OPPONENT_3FE 0x3FE -#define TRAINER_OPPONENT_C00 0xC00 -#define TRAINER_OPPONENT_800 0x800 -#define STEVEN_PARTNER_ID 0xC03 -#define SECRET_BASE_OPPONENT 0x400 - // Battle Actions // These determine what each battler will do in a turn #define B_ACTION_USE_MOVE 0 @@ -429,7 +423,7 @@ struct BattleTv_Mon struct BattleTv { - struct BattleTv_Mon mon[2][6]; // [side][partyId] + struct BattleTv_Mon mon[2][PARTY_SIZE]; // [side][partyId] struct BattleTv_Position pos[2][2]; // [side][flank] struct BattleTv_Side side[2]; // [side] }; @@ -479,10 +473,10 @@ struct BattleStruct u8 runTries; u8 caughtMonNick[11]; u8 field_78; - u8 field_79; - u8 field_7A; - u8 field_7B; - u8 field_7C; + u8 safariGoNearCounter; + u8 safariPkblThrowCounter; + u8 safariEscapeFactor; + u8 safariCatchFactor; u8 field_7D; u8 field_7E; u8 formToChangeInto; @@ -526,7 +520,7 @@ struct BattleStruct u8 AI_itemFlags[2]; u16 choicedMove[MAX_BATTLERS_COUNT]; u16 changedItems[MAX_BATTLERS_COUNT]; - u8 intimidateBank; + u8 intimidateBattler; u8 switchInItemsCounter; u8 field_DA; u8 turnSideTracker; @@ -611,18 +605,6 @@ struct BattleScripting u8 multiplayerId; }; -enum -{ - BACK_PIC_BRENDAN, - BACK_PIC_MAY, - BACK_PIC_RED, - BACK_PIC_LEAF, - BACK_PIC_RS_BRENDAN, - BACK_PIC_RS_MAY, - BACK_PIC_WALLY, - BACK_PIC_STEVEN -}; - // rom_80A5C6C u8 GetBattlerSide(u8 battler); u8 GetBattlerPosition(u8 bank); diff --git a/include/battle_util.h b/include/battle_util.h index 0b5590011..0531966df 100644 --- a/include/battle_util.h +++ b/include/battle_util.h @@ -8,27 +8,27 @@ #define MOVE_LIMITATION_TAUNT (1 << 4) #define MOVE_LIMITATION_IMPRISION (1 << 5) -#define ABILITYEFFECT_ON_SWITCHIN 0x0 -#define ABILITYEFFECT_ENDTURN 0x1 -#define ABILITYEFFECT_MOVES_BLOCK 0x2 -#define ABILITYEFFECT_ABSORBING 0x3 -#define ABILITYEFFECT_CONTACT 0x4 -#define ABILITYEFFECT_IMMUNITY 0x5 -#define ABILITYEFFECT_FORECAST 0x6 -#define ABILITYEFFECT_SYNCHRONIZE 0x7 -#define ABILITYEFFECT_ATK_SYNCHRONIZE 0x8 -#define ABILITYEFFECT_INTIMIDATE1 0x9 -#define ABILITYEFFECT_INTIMIDATE2 0xA -#define ABILITYEFFECT_TRACE 0xB -#define ABILITYEFFECT_CHECK_OTHER_SIDE 0xC -#define ABILITYEFFECT_CHECK_BANK_SIDE 0xD -#define ABILITYEFFECT_FIELD_SPORT 0xE -#define ABILITYEFFECT_CHECK_FIELD_EXCEPT_BANK 0xF -#define ABILITYEFFECT_COUNT_OTHER_SIDE 0x10 -#define ABILITYEFFECT_COUNT_BANK_SIDE 0x11 -#define ABILITYEFFECT_COUNT_ON_FIELD 0x12 -#define ABILITYEFFECT_CHECK_ON_FIELD 0x13 -#define ABILITYEFFECT_SWITCH_IN_WEATHER 0xFF +#define ABILITYEFFECT_ON_SWITCHIN 0x0 +#define ABILITYEFFECT_ENDTURN 0x1 +#define ABILITYEFFECT_MOVES_BLOCK 0x2 +#define ABILITYEFFECT_ABSORBING 0x3 +#define ABILITYEFFECT_CONTACT 0x4 +#define ABILITYEFFECT_IMMUNITY 0x5 +#define ABILITYEFFECT_FORECAST 0x6 +#define ABILITYEFFECT_SYNCHRONIZE 0x7 +#define ABILITYEFFECT_ATK_SYNCHRONIZE 0x8 +#define ABILITYEFFECT_INTIMIDATE1 0x9 +#define ABILITYEFFECT_INTIMIDATE2 0xA +#define ABILITYEFFECT_TRACE 0xB +#define ABILITYEFFECT_CHECK_OTHER_SIDE 0xC +#define ABILITYEFFECT_CHECK_BATTLER_SIDE 0xD +#define ABILITYEFFECT_FIELD_SPORT 0xE +#define ABILITYEFFECT_CHECK_FIELD_EXCEPT_BATTLER 0xF +#define ABILITYEFFECT_COUNT_OTHER_SIDE 0x10 +#define ABILITYEFFECT_COUNT_BATTLER_SIDE 0x11 +#define ABILITYEFFECT_COUNT_ON_FIELD 0x12 +#define ABILITYEFFECT_CHECK_ON_FIELD 0x13 +#define ABILITYEFFECT_SWITCH_IN_WEATHER 0xFF #define ABILITY_ON_OPPOSING_FIELD(battlerId, abilityId)(AbilityBattleEffects(ABILITYEFFECT_CHECK_OTHER_SIDE, battlerId, abilityId, 0, 0)) #define ABILITY_ON_FIELD(abilityId)(AbilityBattleEffects(ABILITYEFFECT_CHECK_ON_FIELD, 0, abilityId, 0, 0)) @@ -39,15 +39,6 @@ #define WEATHER_HAS_EFFECT ((!ABILITY_ON_FIELD(ABILITY_CLOUD_NINE) && !ABILITY_ON_FIELD(ABILITY_AIR_LOCK))) #define WEATHER_HAS_EFFECT2 ((!ABILITY_ON_FIELD2(ABILITY_CLOUD_NINE) && !ABILITY_ON_FIELD2(ABILITY_AIR_LOCK))) -#define BS_GET_TARGET 0 -#define BS_GET_ATTACKER 1 -#define BS_GET_EFFECT_BANK 2 -#define BS_GET_SCRIPTING_BANK 10 -#define BS_GET_PLAYER1 11 -#define BS_GET_OPPONENT1 12 -#define BS_GET_PLAYER2 13 -#define BS_GET_OPPONENT2 14 - u8 GetBattlerForBattleScript(u8 caseId); void PressurePPLose(u8 bankDef, u8 bankAtk, u16 move); void PressurePPLoseOnUsingPerishSong(u8 bankAtk); @@ -74,7 +65,7 @@ bool8 HandleWishPerishSongOnTurnEnd(void); bool8 HandleFaintedMonActions(void); void TryClearRageStatuses(void); u8 AtkCanceller_UnableToUseMove(void); -bool8 sub_80423F4(u8 battlerId, u8 r1, u8 r2); +bool8 HasNoMonsToSwitch(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); diff --git a/include/constants/abilities.h b/include/constants/abilities.h index 4e2c4056c..4ad54c86f 100644 --- a/include/constants/abilities.h +++ b/include/constants/abilities.h @@ -80,4 +80,6 @@ #define ABILITY_CACOPHONY 76 #define ABILITY_AIR_LOCK 77 +#define ABILITIES_COUNT 78 + #endif // GUARD_CONSTANTS_ABILITIES_H diff --git a/include/constants/battle.h b/include/constants/battle.h index 5a09067ad..b3f9d919a 100644 --- a/include/constants/battle.h +++ b/include/constants/battle.h @@ -130,7 +130,7 @@ #define STATUS2_TORMENT 0x80000000 // Seems like per-battler statuses. Not quite sure how to categorize these -#define STATUS3_LEECHSEED_BANK 0x3 +#define STATUS3_LEECHSEED_BATTLER 0x3 #define STATUS3_LEECHSEED 0x4 #define STATUS3_ALWAYS_HITS 0x18 // two bits #define STATUS3_PERISH_SONG 0x20 diff --git a/include/constants/battle_frontier.h b/include/constants/battle_frontier.h new file mode 100644 index 000000000..4145805c4 --- /dev/null +++ b/include/constants/battle_frontier.h @@ -0,0 +1,13 @@ +#ifndef GUARD_CONSTANTS_BATTLE_FRONTIER_H +#define GUARD_CONSTANTS_BATTLE_FRONTIER_H + +// Battle Frontier facility ids. +#define FRONTIER_FACILITY_TOWER 0 +#define FRONTIER_FACILITY_DOME 1 +#define FRONTIER_FACILITY_PALACE 2 +#define FRONTIER_FACILITY_ARENA 3 +#define FRONTIER_FACILITY_FACTORY 4 +#define FRONTIER_FACILITY_PIKE 5 +#define FRONTIER_FACILITY_PYRAMID 6 + +#endif // GUARD_CONSTANTS_BATTLE_FRONTIER_H diff --git a/include/constants/battle_script_commands.h b/include/constants/battle_script_commands.h index a1a4ed50a..c820a1114 100644 --- a/include/constants/battle_script_commands.h +++ b/include/constants/battle_script_commands.h @@ -37,7 +37,7 @@ #define BS_ATTACKER 1 #define BS_EFFECT_BATTLER 2 #define BS_FAINTED 3 -#define BS_BANK_0 7 +#define BS_BATTLER_0 7 #define BS_ATTACKER_WITH_PARTNER 4 // for atk98_status_icon_update #define BS_ATTACKER_SIDE 8 // for atk1E_jumpifability #define BS_NOT_ATTACKER_SIDE 9 // for atk1E_jumpifability diff --git a/include/constants/moves.h b/include/constants/moves.h index f3a3acb90..85c02e3da 100644 --- a/include/constants/moves.h +++ b/include/constants/moves.h @@ -357,6 +357,6 @@ #define MOVE_DOOM_DESIRE 353 #define MOVE_PSYCHO_BOOST 354 -#define LAST_MOVE_INDEX MOVE_PSYCHO_BOOST +#define MOVES_COUNT 355 #endif // GUARD_CONSTANTS_MOVES_H diff --git a/include/constants/trainers.h b/include/constants/trainers.h index a017b6975..eb695e4ab 100644 --- a/include/constants/trainers.h +++ b/include/constants/trainers.h @@ -857,7 +857,14 @@ #define TRAINER_BRENDAN_16 853 #define TRAINER_MAY_16 854 -#define NO_OF_TRAINERS 854 +#define TRAINERS_COUNT 855 + +// Special Trainer Ids. +#define TRAINER_FRONTIER_BRAIN 1022 +#define TRAINER_SECRET_BASE 1024 +#define TRAINER_LINK_OPPONENT 0x800 +#define TRAINER_OPPONENT_C00 0xC00 +#define TRAINER_STEVEN_PARTNER 0xC03 #define TRAINER_PIC_HIKER 0 #define TRAINER_PIC_AQUA_GRUNT_M 1 @@ -953,6 +960,15 @@ #define TRAINER_PIC_RUBY_SAPPHIRE_BRENDAN 91 #define TRAINER_PIC_RUBY_SAPPHIRE_MAY 92 +#define TRAINER_BACK_PIC_BRENDAN 0 +#define TRAINER_BACK_PIC_MAY 1 +#define TRAINER_BACK_PIC_RED 2 +#define TRAINER_BACK_PIC_LEAF 3 +#define TRAINER_BACK_PIC_RUBY_SAPPHIRE_BRENDAN 4 +#define TRAINER_BACK_PIC_RUBY_SAPPHIRE_MAY 5 +#define TRAINER_BACK_PIC_WALLY 6 +#define TRAINER_BACK_PIC_STEVEN 7 + #define FACILITY_CLASS_HIKER 0x0 #define FACILITY_CLASS_TEAM_AQUA_1 0x1 #define FACILITY_CLASS_PKMN_BREEDER_1 0x2 diff --git a/include/data/battle_moves.h b/include/data/battle_moves.h index 6489fe07f..00a6f7fdb 100644 --- a/include/data/battle_moves.h +++ b/include/data/battle_moves.h @@ -1,7 +1,7 @@ #ifndef GUARD_DATA_BATTLE_MOVES #define GUARD_DATA_BATTLE_MOVES -const struct BattleMove gBattleMoves[LAST_MOVE_INDEX + 1] = +const struct BattleMove gBattleMoves[MOVES_COUNT] = { { // MOVE_NONE .effect = EFFECT_HIT, diff --git a/include/data/text/abilities.h b/include/data/text/abilities.h index 2efd76afc..3a1e989d2 100644 --- a/include/data/text/abilities.h +++ b/include/data/text/abilities.h @@ -80,7 +80,7 @@ static const u8 gShellArmorAbilityDescription[] = _("Blocks critical hits."); static const u8 gCacophonyAbilityDescription[] = _("Avoids sound-based moves."); static const u8 gAirLockAbilityDescription[] = _("Negates weather effects."); -const u8 gAbilityNames[][ABILITY_NAME_LENGTH + 1] = +const u8 gAbilityNames[ABILITIES_COUNT][ABILITY_NAME_LENGTH + 1] = { _("-------"), _("STENCH"), @@ -162,7 +162,7 @@ const u8 gAbilityNames[][ABILITY_NAME_LENGTH + 1] = _("AIR LOCK"), }; -const u8 *const gAbilityDescriptionPointers[] = +const u8 *const gAbilityDescriptionPointers[ABILITIES_COUNT] = { gNoneAbilityDescription, gStenchAbilityDescription, diff --git a/include/pokemon.h b/include/pokemon.h index 37028821a..f928243d0 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -556,7 +556,7 @@ void sub_806D544(u16 species, u32 personality, u8 *dest); void DrawSpindaSpots(u16 species, u32 personality, u8 *dest, u8 a4); void EvolutionRenameMon(struct Pokemon *mon, u16 oldSpecies, u16 newSpecies); bool8 sub_806D7EC(void); -bool16 sub_806D82C(u8 id); +bool16 GetLinkTrainerFlankId(u8 id); s32 GetBattlerMultiplayerId(u16 a1); u8 GetTrainerEncounterMusicId(u16 trainerOpponentId); u16 ModifyStatByNature(u8 nature, u16 n, u8 statIndex); diff --git a/include/recorded_battle.h b/include/recorded_battle.h index 8b1fa258d..81c88a15e 100644 --- a/include/recorded_battle.h +++ b/include/recorded_battle.h @@ -16,7 +16,7 @@ void sub_81851A8(u8 *arg0); bool32 CanCopyRecordedBattleSaveData(void); u32 MoveRecordedBattleToSaveData(void); void PlayRecordedBattle(void (*CB2_After)(void)); -u8 sub_8185EA0(void); +u8 GetRecordedBattleFrontierFacility(void); u8 sub_8185EAC(void); void RecordedBattle_SaveParties(void); u8 GetActiveBattlerLinkPlayerGender(void); |