mirror of
https://github.com/pret/pokeruby.git
synced 2026-08-09 10:57:40 -05:00
88 lines
1.8 KiB
C
Executable File
88 lines
1.8 KiB
C
Executable File
#ifndef GUARD_PLAYERPC_H
|
|
#define GUARD_PLAYERPC_H
|
|
|
|
// general task defines
|
|
#define TASK gTasks[taskId]
|
|
#define FUNC func
|
|
|
|
// local task defines
|
|
#define PAGE_INDEX data[0]
|
|
#define ITEMS_ABOVE_TOP data[1]
|
|
#define NUM_ITEMS data[2]
|
|
#define NUM_QUANTITY_ROLLER data[3]
|
|
#define NUM_PAGE_ITEMS data[4]
|
|
// not used
|
|
#define CURRENT_ITEM_STORAGE_MENU data[6]
|
|
// not used
|
|
#define SWAP_ITEM_INDEX data[8]
|
|
#define SWITCH_MODE_ACTIVE data[9]
|
|
|
|
#define NEW_GAME_PC_ITEMS(i, type) ((u16)((u16 *)gNewGamePCItems + type)[i * 2])
|
|
|
|
// defined and used in the above macro
|
|
enum
|
|
{
|
|
ITEM_ID,
|
|
QUANTITY
|
|
};
|
|
|
|
// player PC menu options
|
|
enum
|
|
{
|
|
PLAYERPC_MENU_ITEMSTORAGE,
|
|
PLAYERPC_MENU_MAILBOX,
|
|
PLAYERPC_MENU_DECORATION,
|
|
PLAYERPC_MENU_TURNOFF
|
|
};
|
|
|
|
// item storage menus
|
|
enum
|
|
{
|
|
ITEMPC_MENU_WITHDRAW,
|
|
ITEMPC_MENU_DEPOSIT,
|
|
ITEMPC_MENU_TOSS,
|
|
ITEMPC_MENU_EXIT
|
|
};
|
|
|
|
// mailbox mail options
|
|
enum
|
|
{
|
|
MAILBOX_READ,
|
|
MAILBOX_MOVE_TO_BAG,
|
|
MAILBOX_GIVE,
|
|
MAILBOX_CANCEL,
|
|
};
|
|
|
|
// special item description handlers
|
|
enum
|
|
{
|
|
ITEMPC_SWITCH_WHICH_ITEM = 0xFFF7,
|
|
ITEMPC_OKAY_TO_THROW_AWAY,
|
|
ITEMPC_TOO_IMPORTANT,
|
|
ITEMPC_NO_MORE_ROOM,
|
|
ITEMPC_THREW_AWAY_ITEM,
|
|
ITEMPC_HOW_MANY_TO_TOSS,
|
|
ITEMPC_WITHDREW_THING,
|
|
ITEMPC_HOW_MANY_TO_WITHDRAW,
|
|
ITEMPC_GO_BACK_TO_PREV
|
|
};
|
|
|
|
struct MailboxStruct
|
|
{
|
|
/*0x00*/ u8 cursorPos;
|
|
/*0x01*/ u8 pageItems; // number of items (not including Cancel) on the current page.
|
|
/*0x02*/ u8 itemsAbove; // number of items above the top item on the page.
|
|
/*0x03*/ u8 count; // total number of items in mailbox storage.
|
|
};
|
|
|
|
extern struct MailboxStruct gMailboxInfo;
|
|
|
|
void ReshowPlayerPC(u8 var);
|
|
void NewGameInitPCItems(void);
|
|
void BedroomPC(void);
|
|
void PlayerPC(void);
|
|
void ItemStorage_ReturnToMenuAfterDeposit(void);
|
|
void Mailbox_ReturnToMailListAfterDeposit(void);
|
|
|
|
#endif
|