diff options
Diffstat (limited to 'include/battle.h')
-rw-r--r-- | include/battle.h | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/include/battle.h b/include/battle.h index 06daeb081..d58b234e3 100644 --- a/include/battle.h +++ b/include/battle.h @@ -1,6 +1,22 @@ #ifndef GUARD_BATTLE_H #define GUARD_BATTLE_H +#define BATTLE_TYPE_DOUBLE 0x0001 +#define BATTLE_TYPE_LINK 0x0002 +#define BATTLE_TYPE_WILD 0x0004 +#define BATTLE_TYPE_TRAINER 0x0008 +#define BATTLE_TYPE_FIRST_BATTLE 0x0010 +#define BATTLE_TYPE_20 0x0020 +#define BATTLE_TYPE_40 0x0040 +#define BATTLE_TYPE_SAFARI 0x0080 +#define BATTLE_TYPE_BATTLE_TOWER 0x0100 +#define BATTLE_TYPE_WALLY_TUTORIAL 0x0200 +#define BATTLE_TYPE_ROAMER 0x0400 +#define BATTLE_TYPE_EREADER_TRAINER 0x0800 +#define BATTLE_TYPE_KYOGRE_GROUDON 0x1000 +#define BATTLE_TYPE_LEGENDARY 0x2000 +#define BATTLE_TYPE_REGI 0x4000 + struct Trainer { /*0x00*/ u8 partyFlags; @@ -16,4 +32,39 @@ struct Trainer /*0x24*/ void *party; }; +struct AI_ThinkingStruct /* 0x2016800 */ +{ +/* 0x00 */ u8 unk0; +/* 0x01 */ u8 moveConsidered; +/* 0x02 */ u16 unk2; +/* 0x04 */ s8 score[4]; // score? +/* 0x08 */ u32 unk8; +/* 0x0C */ u32 aiFlags; +/* 0x10 */ u8 unk10; +/* 0x11 */ u8 aiLogicId; +/* 0x12 */ u8 filler12[6]; +/* 0x18 */ u8 unk18[4]; +}; + +struct SmallBattleStruct1 +{ + u8 unk1; + u8 unk2; + u8 unk3; + u8 unk4; +}; + +struct BattleStruct /* 0x2000000 */ +{ + u8 filler0[0x1601C]; + struct SmallBattleStruct1 unk; + u8 filler1[0xAB]; // 0x2016020 + /* 0x160CB */ u8 linkPlayerIndex; + u8 filler2[0x734]; + struct AI_ThinkingStruct ai; +}; + +extern struct BattleStruct battle_2000000; +extern struct AI_ThinkingStruct gAIThinkingSpace; + #endif // GUARD_BATTLE_H |