diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/pokemon.h | 47 | ||||
-rw-r--r-- | include/proto.h | 5 |
2 files changed, 52 insertions, 0 deletions
diff --git a/include/pokemon.h b/include/pokemon.h index 66ad03f2..83630d39 100644 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -362,6 +362,37 @@ typedef enum { UNOWN_QUESTION_MARK = 27 } AlternateForms; +typedef enum EvoMethod +{ + EVO_NONE = 0, + EVO_FRIENDSHIP, + EVO_FRIENDSHIP_DAY, + EVO_FRIENDSHIP_NIGHT, + EVO_LEVEL, + EVO_TRADE, + EVO_TRADE_ITEM, + EVO_STONE, + EVO_LEVEL_ATK_GT_DEF, + EVO_LEVEL_ATK_EQ_DEF, + EVO_LEVEL_ATK_LT_DEF, + EVO_LEVEL_PID_LO, + EVO_LEVEL_PID_HI, + EVO_LEVEL_NINJASK, + EVO_LEVEL_SHEDINJA, + EVO_BEAUTY, + EVO_STONE_MALE, + EVO_STONE_FEMALE, + EVO_ITEM_DAY, + EVO_ITEM_NIGHT, + EVO_HAS_MOVE, + EVO_OTHER_PARTY_MON, + EVO_LEVEL_MALE, + EVO_LEVEL_FEMALE, + EVO_CORONET, + EVO_ETERNA, + EVO_ROUTE217, +} EvoMethod; + // Structs typedef struct { @@ -499,6 +530,22 @@ struct UnkStruct_02069038 struct Pokeanm anim; }; +struct Evolution +{ + u16 method; + u16 param; + u16 target; +}; + +#define PARTY_SIZE 6 + +struct PlayerParty +{ + u32 maxCount; + u32 curCount; + struct Pokemon mons[PARTY_SIZE]; +}; + void ZeroMonData(struct Pokemon * pokemon); void ZeroBoxMonData(struct BoxPokemon * boxmon); u32 SizeOfStructPokemon(void); diff --git a/include/proto.h b/include/proto.h index 3a6081b4..d9a5ec2a 100644 --- a/include/proto.h +++ b/include/proto.h @@ -2,7 +2,10 @@ #define POKEDIAMOND_PROTO_H // For homeless function declarations + +// Declare these here so that we don't have to include pokemon.h struct UnkStruct_02069038; +struct PlayerParty; u16 * FUN_0200AA50(u16 species, u32 heap_id); void FUN_02021A74(u16 * dest, u16 * src); @@ -13,5 +16,7 @@ u32 FUN_0206E7B8(u16 item, u32 a1, u32 a2); u32 GetArceusTypeByPlate(u16 plate); int FUN_02014C3C(u8); void FUN_02014C54(int, int, struct UnkStruct_02069038 *, u8); +u32 IsNighttime(void); // is day or night +u32 PartyHasMon(struct PlayerParty *, u16); #endif //POKEDIAMOND_PROTO_H |