#ifndef GUARD_POKEBLOCK_H #define GUARD_POKEBLOCK_H #include "constants/berry.h" #include "constants/pokemon.h" #define GFX_TAG_POKEBLOCK 14818 #define GFX_TAG_POKEBLOCK_CASE 14800 enum { PBLOCK_CLR_BLACK, PBLOCK_CLR_RED, PBLOCK_CLR_BLUE, PBLOCK_CLR_PINK, PBLOCK_CLR_GREEN, PBLOCK_CLR_YELLOW }; enum { PBLOCK_COLOR, PBLOCK_SPICY, PBLOCK_DRY, PBLOCK_SWEET, PBLOCK_BITTER, PBLOCK_SOUR, PBLOCK_FEEL, }; enum { PBLOCK_CASE_FIELD, PBLOCK_CASE_BATTLE, PBLOCK_CASE_FEEDER, PBLOCK_CASE_GIVE }; // use pokeblock extern u8 gPokeblockMonId; extern s16 gPokeblockGain; void ChooseMonToGivePokeblock(struct Pokeblock *pokeblock, void (*callback)(void)); // pokeblock feed void CB2_PreparePokeblockFeedScene(void); // pokeblock extern const s8 gPokeblockFlavorCompatibilityTable[NUM_NATURES * FLAVOR_COUNT]; extern const u8 *const gPokeblockNames[]; extern const struct CompressedSpriteSheet gPokeblockCase_SpriteSheet; extern const struct CompressedSpritePalette gPokeblockCase_SpritePal; void OpenPokeblockCase(u8 caseId, void (*callback)(void)); void OpenPokeblockCaseInBattle(void); void OpenPokeblockCaseOnFeeder(void); void ResetPokeblockScrollPositions(void); u8 CreatePokeblockCaseSprite(s16 x, s16 y, u8 subpriority); void ClearPokeblocks(void); u8 GetHighestPokeblocksFlavorLevel(const struct Pokeblock *pokeblock); u8 GetPokeblocksFeel(const struct Pokeblock *pokeblock); s8 GetFirstFreePokeblockSlot(void); bool32 AddPokeblock(const struct Pokeblock *pokeblock); bool32 TryClearPokeblock(u8 pkblId); s16 GetPokeblockData(const struct Pokeblock *pokeblock, u8 field); s16 PokeblockGetGain(u8 nature, const struct Pokeblock *pokeblock); void PokeblockCopyName(const struct Pokeblock *pokeblock, u8 *dest); bool8 CopyMonFavoritePokeblockName(u8 nature, u8 *dest); u8 GetPokeblocksFlavor(const struct Pokeblock *pokeblock); #endif // GUARD_POKEBLOCK_H