2017-09-12 15:05:40 +02:00
|
|
|
#ifndef GUARD_POKEDEX_H
|
|
|
|
#define GUARD_POKEDEX_H
|
|
|
|
|
2019-02-18 07:33:41 +01:00
|
|
|
extern u8 gUnusedPokedexU8;
|
2020-03-08 18:24:22 +01:00
|
|
|
extern void (*gPokedexVBlankCB)(void);
|
2018-12-15 21:12:28 +01:00
|
|
|
|
2021-12-13 19:24:19 +01:00
|
|
|
#if P_ENABLE_DEBUG == TRUE
|
|
|
|
extern const u8 *const gMonFootprintTable[];
|
|
|
|
#endif
|
|
|
|
|
2018-12-15 21:12:28 +01:00
|
|
|
enum
|
|
|
|
{
|
|
|
|
DEX_MODE_HOENN,
|
|
|
|
DEX_MODE_NATIONAL
|
|
|
|
};
|
|
|
|
|
2017-09-12 15:05:40 +02:00
|
|
|
enum
|
|
|
|
{
|
|
|
|
FLAG_GET_SEEN,
|
|
|
|
FLAG_GET_CAUGHT,
|
|
|
|
FLAG_SET_SEEN,
|
|
|
|
FLAG_SET_CAUGHT
|
|
|
|
};
|
|
|
|
|
2018-11-28 00:21:23 +01:00
|
|
|
struct PokedexEntry
|
|
|
|
{
|
2019-04-02 21:22:16 +02:00
|
|
|
/*0x00*/ u8 categoryName[13];
|
2018-11-28 00:21:23 +01:00
|
|
|
/*0x0C*/ u16 height; //in decimeters
|
|
|
|
/*0x0E*/ u16 weight; //in hectograms
|
|
|
|
/*0x10*/ const u8 *description;
|
|
|
|
/*0x14*/ u16 unused;
|
|
|
|
/*0x16*/ u16 pokemonScale;
|
|
|
|
/*0x18*/ u16 pokemonOffset;
|
|
|
|
/*0x1A*/ u16 trainerScale;
|
|
|
|
/*0x1C*/ u16 trainerOffset;
|
|
|
|
}; /*size = 0x20*/
|
|
|
|
|
|
|
|
void ResetPokedex(void);
|
|
|
|
u16 GetPokedexHeightWeight(u16 dexNum, u8 data);
|
|
|
|
u16 GetNationalPokedexCount(u8);
|
|
|
|
u16 GetHoennPokedexCount(u8);
|
2020-03-08 18:24:22 +01:00
|
|
|
u8 DisplayCaughtMonDexPage(u16 dexNum, u32 otId, u32 personality);
|
2017-10-13 17:09:36 +02:00
|
|
|
s8 GetSetPokedexFlag(u16 nationalNum, u8 caseId);
|
2018-12-15 21:12:28 +01:00
|
|
|
u16 CreateMonSpriteFromNationalDexNumber(u16, s16, s16, u16);
|
2019-01-19 23:04:33 +01:00
|
|
|
bool16 HasAllHoennMons(void);
|
2019-02-15 09:40:57 +01:00
|
|
|
void ResetPokedexScrollPositions(void);
|
2019-08-24 20:17:11 +02:00
|
|
|
bool16 HasAllMons(void);
|
2020-03-08 18:24:22 +01:00
|
|
|
void CB2_OpenPokedex(void);
|
2017-09-12 15:05:40 +02:00
|
|
|
|
|
|
|
#endif // GUARD_POKEDEX_H
|