diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/charge_move.h | 9 | ||||
-rw-r--r-- | include/constants/status.h | 179 | ||||
-rw-r--r-- | include/dungeon_ai.h | 9 | ||||
-rw-r--r-- | include/dungeon_capabilities.h | 9 | ||||
-rw-r--r-- | include/dungeon_capabilities_1.h | 11 | ||||
-rw-r--r-- | include/dungeon_entity.h | 6 | ||||
-rw-r--r-- | include/dungeon_movement.h | 2 | ||||
-rw-r--r-- | include/dungeon_pokemon_attributes.h | 9 | ||||
-rw-r--r-- | include/dungeon_pokemon_attributes_1.h | 9 | ||||
-rw-r--r-- | include/dungeon_util.h | 2 | ||||
-rw-r--r-- | include/dungeon_util_1.h | 9 |
11 files changed, 141 insertions, 113 deletions
diff --git a/include/charge_move.h b/include/charge_move.h new file mode 100644 index 0000000..9d10ac2 --- /dev/null +++ b/include/charge_move.h @@ -0,0 +1,9 @@ +#ifndef GUARD_CHARGE_MOVE_H +#define GUARD_CHARGE_MOVE_H + +#include "dungeon_entity.h" + +// 0x570F4 +bool8 IsCharging(struct DungeonEntity *pokemon, bool8 checkCharge); + +#endif diff --git a/include/constants/status.h b/include/constants/status.h index 9fad5b0..229171f 100644 --- a/include/constants/status.h +++ b/include/constants/status.h @@ -1,125 +1,88 @@ #ifndef GUARD_CONSTANTS_STATUS_H #define GUARD_CONSTANTS_STATUS_H -enum SleepStatus -{ - SLEEP_STATUS_SLEEP = 1, - SLEEP_STATUS_SLEEPLESS = 2, - SLEEP_STATUS_NIGHTMARE = 3, - SLEEP_STATUS_YAWNING = 4, - SLEEP_STATUS_NAPPING = 5 -}; +#define SLEEP_STATUS_NONE 0 +#define SLEEP_STATUS_SLEEP 1 +#define SLEEP_STATUS_SLEEPLESS 2 +#define SLEEP_STATUS_NIGHTMARE 3 +#define SLEEP_STATUS_YAWNING 4 +#define SLEEP_STATUS_NAPPING 5 -enum NonVolatileStatus -{ - NON_VOLATILE_STATUS_BURNED = 1, - NON_VOLATILE_STATUS_POISONED = 2, - NON_VOLATILE_STATUS_BADLY_POISONED = 3, - NON_VOLATILE_STATUS_PARALYZED = 4 -}; +#define NON_VOLATILE_STATUS_BURNED 1 +#define NON_VOLATILE_STATUS_POISONED 2 +#define NON_VOLATILE_STATUS_BADLY_POISONED 3 +#define NON_VOLATILE_STATUS_PARALYZED 4 -enum ImmobilizeStatus -{ - IMMOBILIZE_STATUS_FROZEN = 1, - IMMOBILIZE_STATUS_IMMOBILIZED = 2, - IMMOBILIZE_STATUS_WRAPPED_AROUND_FOE = 3, - IMMOBILIZE_STATUS_WRAPPED_BY_FOE = 4, - IMMOBILIZE_STATUS_INGRAIN = 5, - IMMOBILIZE_STATUS_PETRIFIED = 6, - IMMOBILIZE_STATUS_SQUEEZED = 7 -}; +#define IMMOBILIZE_STATUS_FROZEN 1 +#define IMMOBILIZE_STATUS_IMMOBILIZED 2 +#define IMMOBILIZE_STATUS_WRAPPED_AROUND_FOE 3 +#define IMMOBILIZE_STATUS_WRAPPED_BY_FOE 4 +#define IMMOBILIZE_STATUS_INGRAIN 5 +#define IMMOBILIZE_STATUS_PETRIFIED 6 +#define IMMOBILIZE_STATUS_SQUEEZED 7 -enum ChargingStatus -{ - CHARGING_STATUS_BIDE = 0x1, - CHARGING_STATUS_SOLARBEAM = 0x2, - CHARGING_STATUS_SKY_ATTACK = 0x3, - CHARGING_STATUS_RAZOR_WIND = 0x4, - CHARGING_STATUS_FOCUS_PUNCH = 0x5, - CHARGING_STATUS_SKULL_BASH = 0x6, - CHARGING_STATUS_FLY = 0x7, - CHARGING_STATUS_BOUNCE = 0x8, - CHARGING_STATUS_DIVE = 0x9, - CHARGING_STATUS_DIG = 0xA, - CHARGING_STATUS_CHARGE = 0xB, - CHARGING_STATUS_RAGE = 0xC -}; +#define CHARGING_STATUS_NONE 0x0 +#define CHARGING_STATUS_BIDE 0x1 +#define CHARGING_STATUS_SOLARBEAM 0x2 +#define CHARGING_STATUS_SKY_ATTACK 0x3 +#define CHARGING_STATUS_RAZOR_WIND 0x4 +#define CHARGING_STATUS_FOCUS_PUNCH 0x5 +#define CHARGING_STATUS_SKULL_BASH 0x6 +#define CHARGING_STATUS_FLY 0x7 +#define CHARGING_STATUS_BOUNCE 0x8 +#define CHARGING_STATUS_DIVE 0x9 +#define CHARGING_STATUS_DIG 0xA +#define CHARGING_STATUS_CHARGE 0xB +#define CHARGING_STATUS_RAGE 0xC -enum ProtectionStatus -{ - PROTECTION_STATUS_REFLECT = 0x1, - PROTECTION_STATUS_SAFEGUARD = 0x2, - PROTECTION_STATUS_LIGHT_SCREEN = 0x3, - PROTECTION_STATUS_COUNTER = 0x4, - PROTECTION_STATUS_MAGIC_COAT = 0x5, - PROTECTION_STATUS_WISH = 0x6, - PROTECTION_STATUS_PROTECT = 0x7, - PROTECTION_STATUS_MIRROR_COAT = 0x8, - PROTECTION_STATUS_ENDURE = 0x9, - PROTECTION_STATUS_MINI_COUNTER = 0xA, - PROTECTION_STATUS_MIRROR_MOVE = 0xB, - PROTECTION_STATUS_CONVERSION_2 = 0xC, - PROTECTION_STATUS_VITAL_THROW = 0xD, - PROTECTION_STATUS_MIST = 0xE -}; +#define PROTECTION_STATUS_REFLECT 0x1 +#define PROTECTION_STATUS_SAFEGUARD 0x2 +#define PROTECTION_STATUS_LIGHT_SCREEN 0x3 +#define PROTECTION_STATUS_COUNTER 0x4 +#define PROTECTION_STATUS_MAGIC_COAT 0x5 +#define PROTECTION_STATUS_WISH 0x6 +#define PROTECTION_STATUS_PROTECT 0x7 +#define PROTECTION_STATUS_MIRROR_COAT 0x8 +#define PROTECTION_STATUS_ENDURE 0x9 +#define PROTECTION_STATUS_MINI_COUNTER 0xA +#define PROTECTION_STATUS_MIRROR_MOVE 0xB +#define PROTECTION_STATUS_CONVERSION_2 0xC +#define PROTECTION_STATUS_VITAL_THROW 0xD +#define PROTECTION_STATUS_MIST 0xE -enum WaitingStatus -{ - WAITING_STATUS_CURSED = 1, - WAITING_STATUS_DECOY = 2, - WAITING_STATUS_SNATCH = 3 -}; +#define WAITING_STATUS_CURSED 1 +#define WAITING_STATUS_DECOY 2 +#define WAITING_STATUS_SNATCH 3 -enum LinkedStatus -{ - LINKED_STATUS_LEECH_SEED = 1, - LINKED_STATUS_DESTINY_BOND = 2 -}; +#define LINKED_STATUS_LEECH_SEED 1 +#define LINKED_STATUS_DESTINY_BOND 2 -enum MoveStatus -{ - MOVE_STATUS_SURE_SHOT = 1, - MOVE_STATUS_WHIFFER = 2, - MOVE_STATUS_SET_DAMAGE = 3, - MOVE_STATUS_FOCUS_ENERGY = 4 -}; +#define MOVE_STATUS_SURE_SHOT 1 +#define MOVE_STATUS_WHIFFER 2 +#define MOVE_STATUS_SET_DAMAGE 3 +#define MOVE_STATUS_FOCUS_ENERGY 4 -enum ItemStatus -{ - ITEM_STATUS_LONG_TOSS = 1, - ITEM_STATUS_PIERCE = 2 -}; +#define ITEM_STATUS_LONG_TOSS 1 +#define ITEM_STATUS_PIERCE 2 -enum TransformStatus -{ - TRANSFORM_STATUS_INVISIBLE = 1, - TRANSFORM_STATUS_TRANSFORMED = 2, - TRANSFORM_STATUS_MOBILE = 3 -}; +#define TRANSFORM_STATUS_INVISIBLE 1 +#define TRANSFORM_STATUS_TRANSFORMED 2 +#define TRANSFORM_STATUS_MOBILE 3 -enum EyesightStatus -{ - EYESIGHT_STATUS_BLINKER = 1, - EYESIGHT_STATUS_CROSS_EYED = 2, - EYESIGHT_STATUS_EYEDROPS = 3 -}; +#define EYESIGHT_STATUS_BLINKER 1 +#define EYESIGHT_STATUS_CROSS_EYED 2 +#define EYESIGHT_STATUS_EYEDROPS 3 -enum VolatileStatus -{ - VOLATILE_STATUS_CRINGING = 1, - VOLATILE_STATUS_CONFUSED = 2, - VOLATILE_STATUS_PAUSED = 3, - VOLATILE_STATUS_COWERING = 4, - VOLATILE_STATUS_TAUNTED = 5, - VOLATILE_STATUS_ENCORE = 6, - VOLATILE_STATUS_INFATUATED = 7 -}; +#define VOLATILE_STATUS_CRINGING 1 +#define VOLATILE_STATUS_CONFUSED 2 +#define VOLATILE_STATUS_PAUSED 3 +#define VOLATILE_STATUS_COWERING 4 +#define VOLATILE_STATUS_TAUNTED 5 +#define VOLATILE_STATUS_ENCORE 6 +#define VOLATILE_STATUS_INFATUATED 7 -enum TargetingDecoy -{ - TARGETING_DECOY_NONE = 0, - TARGETING_DECOY_TEAM = 1, - TARGETING_DECOY_WILD = 2 -}; +#define TARGETING_DECOY_NONE 0 +#define TARGETING_DECOY_TEAM 1 +#define TARGETING_DECOY_WILD 2 #endif diff --git a/include/dungeon_ai.h b/include/dungeon_ai.h new file mode 100644 index 0000000..e02da08 --- /dev/null +++ b/include/dungeon_ai.h @@ -0,0 +1,9 @@ +#ifndef GUARD_DUNGEON_AI_H +#define GUARD_DUNGEON_AI_H + +#include "dungeon_entity.h" + +// 0x71494 +bool8 ShouldAvoidEnemies(struct DungeonEntity *pokemon); + +#endif diff --git a/include/dungeon_capabilities.h b/include/dungeon_capabilities.h new file mode 100644 index 0000000..6574b32 --- /dev/null +++ b/include/dungeon_capabilities.h @@ -0,0 +1,9 @@ +#ifndef GUARD_DUNGEON_CAPABILITIES_H +#define GUARD_DUNGEON_CAPABILITIES_H + +#include "dungeon_entity.h" + +// 0x70B6C +bool8 CannotMove(struct DungeonEntity *pokemon, bool8 checkBlinker); + +#endif diff --git a/include/dungeon_capabilities_1.h b/include/dungeon_capabilities_1.h new file mode 100644 index 0000000..1d10a0f --- /dev/null +++ b/include/dungeon_capabilities_1.h @@ -0,0 +1,11 @@ +#ifndef GUARD_DUNGEON_CAPABILITIES_1_H +#define GUARD_DUNGEON_CAPABILITIES_1_H + +#include "dungeon_entity.h" + +// 0x70C60 +bool8 CannotUseItems(struct DungeonEntity *pokemon); +// 0x70CD0 +bool8 CannotAct(struct DungeonEntity *pokemon); + +#endif diff --git a/include/dungeon_entity.h b/include/dungeon_entity.h index 58a7d24..d89b997 100644 --- a/include/dungeon_entity.h +++ b/include/dungeon_entity.h @@ -22,9 +22,9 @@ struct DungeonEntityData u8 fillB; /* 0xC */ u16 IQ; /* 0xE */ s16 HP; - /* 0x10 */ u16 maxHP; + /* 0x10 */ s16 maxHP; // Bosses have higher HP than normal for their level. This is the max HP they would normally have given their level. - /* 0x12 */ u16 originalHP; + /* 0x12 */ s16 originalHP; /* 0x14 */ u8 attack; /* 0x15 */ u8 specialAttack; /* 0x16 */ u8 defense; @@ -94,7 +94,7 @@ struct DungeonEntityData // Bitwise flags corresponding to selected IQ skills. /* 0x8C */ u8 IQSkillsSelected[4]; // IQ skills selected in the IQ skills menu. /* 0x90 */ u8 IQSkillsEnabled[4]; - /* 0x94 */ u8 tactics; + /* 0x94 */ u8 tactic; u8 fill95[0xA4 - 0x95]; /* 0xA4 */ u8 clientType; u8 fillA5[0xA8 - 0xA5]; diff --git a/include/dungeon_movement.h b/include/dungeon_movement.h index 9d40a2e..e3ab174 100644 --- a/include/dungeon_movement.h +++ b/include/dungeon_movement.h @@ -6,4 +6,4 @@ // 0x75990 void DecideAction(struct DungeonEntity *pokemon); -#endif
\ No newline at end of file +#endif diff --git a/include/dungeon_pokemon_attributes.h b/include/dungeon_pokemon_attributes.h new file mode 100644 index 0000000..941c966 --- /dev/null +++ b/include/dungeon_pokemon_attributes.h @@ -0,0 +1,9 @@ +#ifndef GUARD_DUNGEON_POKEMON_ATTRIBUTES_H +#define GUARD_DUNGEON_POKEMON_ATTRIBUTES_H + +#include "dungeon_entity.h" + +// 0x71824 +bool8 HasAbility(struct DungeonEntity *pokemon, u8 ability); + +#endif diff --git a/include/dungeon_pokemon_attributes_1.h b/include/dungeon_pokemon_attributes_1.h new file mode 100644 index 0000000..51788d2 --- /dev/null +++ b/include/dungeon_pokemon_attributes_1.h @@ -0,0 +1,9 @@ +#ifndef GUARD_DUNGEON_POKEMON_ATTRIBUTES_1_H +#define GUARD_DUNGEON_POKEMON_ATTRIBUTES_1_H + +#include "dungeon_entity.h" + +// 0x718AC +bool8 HasTactic(struct DungeonEntity *pokemon, u8 tactic); + +#endif diff --git a/include/dungeon_util.h b/include/dungeon_util.h index 5113156..f3059b0 100644 --- a/include/dungeon_util.h +++ b/include/dungeon_util.h @@ -6,4 +6,4 @@ // 0x450E0 bool8 EntityExists(struct DungeonEntity *pokemon); -#endif
\ No newline at end of file +#endif diff --git a/include/dungeon_util_1.h b/include/dungeon_util_1.h new file mode 100644 index 0000000..cfda253 --- /dev/null +++ b/include/dungeon_util_1.h @@ -0,0 +1,9 @@ +#ifndef GUARD_DUNGEON_UTIL_1_H +#define GUARD_DUNGEON_UTIL_1_H + +#include "dungeon_entity.h" + +// 0x85A50 +bool8 IsMovingClient(struct DungeonEntity *entity); + +#endif |