diff options
author | yenatch <yenatch@gmail.com> | 2017-07-03 22:58:47 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-07-03 22:58:47 -0400 |
commit | 86a4a2cd3b7cda3b1885e53e7c9ac4d31270bd6c (patch) | |
tree | 5b3c87ca05d93264a7a3e62347a571299ce90795 /include/pokemon.h | |
parent | 8d82578d3a101b06f9d2ced31738021007c4e533 (diff) | |
parent | d8bfc0998dec654e908caddccf8147ea62c0ea4a (diff) |
Merge pull request #328 from PikalaxALT/pokemon_data
Pokémon data
Diffstat (limited to 'include/pokemon.h')
-rwxr-xr-x | include/pokemon.h | 84 |
1 files changed, 73 insertions, 11 deletions
diff --git a/include/pokemon.h b/include/pokemon.h index 46366511d..2f8a57d38 100755 --- a/include/pokemon.h +++ b/include/pokemon.h @@ -122,6 +122,25 @@ #define UNOWN_FORM_COUNT 28 enum { + EGG_GROUP_NONE, + EGG_GROUP_MONSTER, + EGG_GROUP_WATER_1, + EGG_GROUP_BUG, + EGG_GROUP_FLYING, + EGG_GROUP_FIELD, + EGG_GROUP_FAIRY, + EGG_GROUP_GRASS, + EGG_GROUP_HUMAN_LIKE, + EGG_GROUP_WATER_3, + EGG_GROUP_MINERAL, + EGG_GROUP_AMORPHOUS, + EGG_GROUP_WATER_2, + EGG_GROUP_DITTO, + EGG_GROUP_DRAGON, + EGG_GROUP_UNDISCOVERED +}; + +enum { NATURE_HARDY, NATURE_LONELY, NATURE_BRAVE, @@ -384,6 +403,55 @@ struct PokemonStorage u8 unkArray[14]; }; +struct SpindaSpot +{ + u8 x, y; + u16 image[16]; +}; + +struct __attribute__((packed)) LevelUpMove { + u16 move:9; + u16 level:7; +}; + +enum { + GROWTH_MEDIUM_FAST, + GROWTH_ERRATIC, + GROWTH_FLUCTUATING, + GROWTH_MEDIUM_SLOW, + GROWTH_FAST, + GROWTH_SLOW +}; + +enum { + BODY_COLOR_RED, + BODY_COLOR_BLUE, + BODY_COLOR_YELLOW, + BODY_COLOR_GREEN, + BODY_COLOR_BLACK, + BODY_COLOR_BROWN, + BODY_COLOR_PURPLE, + BODY_COLOR_GRAY, + BODY_COLOR_WHITE, + BODY_COLOR_PINK +}; + +#define EVO_FRIENDSHIP 0x0001 // Pokémon levels up with friendship ≥ 220 +#define EVO_FRIENDSHIP_DAY 0x0002 // Pokémon levels up during the day with friendship ≥ 220 +#define EVO_FRIENDSHIP_NIGHT 0x0003 // Pokémon levels up at night with friendship ≥ 220 +#define EVO_LEVEL 0x0004 // Pokémon reaches the specified level +#define EVO_TRADE 0x0005 // Pokémon is traded +#define EVO_TRADE_ITEM 0x0006 // Pokémon is traded while it's holding the specified item +#define EVO_ITEM 0x0007 // specified item is used on Pokémon +#define EVO_LEVEL_ATK_GT_DEF 0x0008 // Pokémon reaches the specified level with attack > defense +#define EVO_LEVEL_ATK_EQ_DEF 0x0009 // Pokémon reaches the specified level with attack = defense +#define EVO_LEVEL_ATK_LT_DEF 0x000a // Pokémon reaches the specified level with attack < defense +#define EVO_LEVEL_SILCOON 0x000b // Pokémon reaches the specified level with a Silcoon personality value +#define EVO_LEVEL_CASCOON 0x000c // Pokémon reaches the specified level with a Cascoon personality value +#define EVO_LEVEL_NINJASK 0x000d // Pokémon reaches the specified level (special value for Ninjask) +#define EVO_LEVEL_SHEDINJA 0x000e // Pokémon reaches the specified level (special value for Shedinja) +#define EVO_BEAUTY 0x000f // Pokémon levels up with beauty ≥ specified value + struct Evolution { u16 method; @@ -396,19 +464,13 @@ struct EvolutionData struct Evolution evolutions[5]; }; -extern const u8 *const gItemEffectTable[]; -extern u8 gTrainerClassToPicIndex[]; -extern u8 gTrainerClassToNameIndex[]; -extern const u32 gExperienceTables[8][101]; -extern const struct BaseStats gBaseStats[]; -extern struct EvolutionData gEvolutionTable[]; -extern const u16 *gLevelUpLearnsets[]; -extern u8 gUnknown_08208238[]; -extern u8 gUnknown_0820823C[]; -extern u8 gStatStageRatios[][2]; - extern struct Pokemon gPlayerParty[PARTY_SIZE]; extern struct Pokemon gEnemyParty[PARTY_SIZE]; +extern const u8 *const gItemEffectTable[]; +extern const struct BaseStats gBaseStats[]; +extern const u32 gExperienceTables[][101]; +extern const u16 *const gLevelUpLearnsets[]; +extern const struct EvolutionData gEvolutionTable[]; extern struct PokemonStorage gPokemonStorage; void ZeroBoxMonData(struct BoxPokemon *boxMon); |