mirror of
https://github.com/pret/pokefirered.git
synced 2026-04-24 14:57:07 -05:00
64 lines
1.8 KiB
C
64 lines
1.8 KiB
C
#ifndef GUARD_POKEMON_STORAGE_SYSTEM_H
|
|
#define GUARD_POKEMON_STORAGE_SYSTEM_H
|
|
|
|
#include "global.h"
|
|
#include "pokemon.h"
|
|
|
|
#define TOTAL_BOXES_COUNT 14
|
|
#define IN_BOX_ROWS 5 // Number of rows, 6 Pokémon per row
|
|
#define IN_BOX_COLUMNS 6 // Number of columns, 5 Pokémon per column
|
|
#define IN_BOX_COUNT (IN_BOX_ROWS * IN_BOX_COLUMNS)
|
|
#define BOX_NAME_LENGTH 8
|
|
|
|
/*
|
|
COLUMNS
|
|
ROWS 0 1 2 3 4 5
|
|
6 7 8 9 10 11
|
|
12 13 14 15 16 17
|
|
18 19 20 21 22 23
|
|
24 25 26 27 28 29
|
|
*/
|
|
|
|
enum
|
|
{
|
|
WALLPAPER_FOREST,
|
|
WALLPAPER_CITY,
|
|
WALLPAPER_DESERT,
|
|
WALLPAPER_SAVANNA,
|
|
WALLPAPER_CRAG,
|
|
WALLPAPER_VOLCANO,
|
|
WALLPAPER_SNOW,
|
|
WALLPAPER_CAVE,
|
|
WALLPAPER_BEACH,
|
|
WALLPAPER_SEAFLOOR,
|
|
WALLPAPER_RIVER,
|
|
WALLPAPER_SKY,
|
|
WALLPAPER_STARS,
|
|
WALLPAPER_POKECENTER,
|
|
WALLPAPER_TILES,
|
|
WALLPAPER_SIMPLE,
|
|
WALLPAPER_COUNT
|
|
};
|
|
#define MAX_DEFAULT_WALLPAPER WALLPAPER_SAVANNA
|
|
|
|
struct PokemonStorage
|
|
{
|
|
/*0x0000*/ u8 currentBox;
|
|
/*0x0001*/ struct BoxPokemon boxes[TOTAL_BOXES_COUNT][IN_BOX_COUNT];
|
|
/*0x8344*/ u8 boxNames[TOTAL_BOXES_COUNT][BOX_NAME_LENGTH + 1];
|
|
/*0x83C2*/ u8 boxWallpapers[TOTAL_BOXES_COUNT];
|
|
};
|
|
|
|
u8 *GetBoxNamePtr(u8 boxNumber);
|
|
struct BoxPokemon *GetBoxedMonPtr(u8 boxId, u8 monPosition);
|
|
void SetBoxMonNickAt(u8 boxId, u8 monPosition, const u8 *newNick);
|
|
s16 CompactPartySlots(void);
|
|
u32 GetBoxMonDataAt(u8 boxId, u8 monPosition, s32 request);
|
|
void ZeroBoxMonAt(u8 boxId, u8 monPosition);
|
|
void CB2_ReturnToPokeStorage(void);
|
|
void ResetPokemonStorageSystem(void);
|
|
u8 StorageGetCurrentBox(void);
|
|
void DrawTextWindowAndBufferTiles(const u8 *string, void *dst, u8 zero1, u8 zero2, u8 *buffer, s32 bytesToBuffer);
|
|
|
|
#endif // GUARD_POKEMON_STORAGE_SYSTEM_H
|