#ifndef POKEPLATINUM_BATTLE_BAG_TEXT_H
#define POKEPLATINUM_BATTLE_BAG_TEXT_H

#include "overlay013/battle_bag.h"

enum BattleBagMenuWindow {
    BATTLE_BAG_MENU_WINDOW_HP_PP_RESTORE = 0,
    BATTLE_BAG_MENU_WINDOW_STATUS_HEALERS,
    BATTLE_BAG_MENU_WINDOW_POKE_BALLS,
    BATTLE_BAG_MENU_WINDOW_BATTLE_ITEMS,
    BATTLE_BAG_MENU_WINDOW_LAST_USED_ITEM,
};

enum BattleBagPocketMenuWindow {
    BATTLE_BAG_POCKET_MENU_WINDOW_ITEM_SLOT_1_NAME = 0,
    BATTLE_BAG_POCKET_MENU_WINDOW_ITEM_SLOT_1_AMOUNT,
    BATTLE_BAG_POCKET_MENU_WINDOW_ITEM_SLOT_2_NAME,
    BATTLE_BAG_POCKET_MENU_WINDOW_ITEM_SLOT_2_AMOUNT,
    BATTLE_BAG_POCKET_MENU_WINDOW_ITEM_SLOT_3_NAME,
    BATTLE_BAG_POCKET_MENU_WINDOW_ITEM_SLOT_3_AMOUNT,
    BATTLE_BAG_POCKET_MENU_WINDOW_ITEM_SLOT_4_NAME,
    BATTLE_BAG_POCKET_MENU_WINDOW_ITEM_SLOT_4_AMOUNT,
    BATTLE_BAG_POCKET_MENU_WINDOW_ITEM_SLOT_5_NAME,
    BATTLE_BAG_POCKET_MENU_WINDOW_ITEM_SLOT_5_AMOUNT,
    BATTLE_BAG_POCKET_MENU_WINDOW_ITEM_SLOT_6_NAME,
    BATTLE_BAG_POCKET_MENU_WINDOW_ITEM_SLOT_6_AMOUNT,
    BATTLE_BAG_POCKET_MENU_WINDOW_ALT_ITEM_SLOT_1_NAME,
    BATTLE_BAG_POCKET_MENU_WINDOW_ALT_ITEM_SLOT_1_AMOUNT,
    BATTLE_BAG_POCKET_MENU_WINDOW_ALT_ITEM_SLOT_2_NAME,
    BATTLE_BAG_POCKET_MENU_WINDOW_ALT_ITEM_SLOT_2_AMOUNT,
    BATTLE_BAG_POCKET_MENU_WINDOW_ALT_ITEM_SLOT_3_NAME,
    BATTLE_BAG_POCKET_MENU_WINDOW_ALT_ITEM_SLOT_3_AMOUNT,
    BATTLE_BAG_POCKET_MENU_WINDOW_ALT_ITEM_SLOT_4_NAME,
    BATTLE_BAG_POCKET_MENU_WINDOW_ALT_ITEM_SLOT_4_AMOUNT,
    BATTLE_BAG_POCKET_MENU_WINDOW_ALT_ITEM_SLOT_5_NAME,
    BATTLE_BAG_POCKET_MENU_WINDOW_ALT_ITEM_SLOT_5_AMOUNT,
    BATTLE_BAG_POCKET_MENU_WINDOW_ALT_ITEM_SLOT_6_NAME,
    BATTLE_BAG_POCKET_MENU_WINDOW_ALT_ITEM_SLOT_6_AMOUNT,
    BATTLE_BAG_POCKET_MENU_WINDOW_POCKET_NAME,
    BATTLE_BAG_POCKET_MENU_WINDOW_PAGE_NUMS,
};

enum BattleBagUseItemMenuWindow {
    BATTLE_BAG_USE_ITEM_MENU_WINDOW_ITEM_NAME = 0,
    BATTLE_BAG_USE_ITEM_MENU_WINDOW_ITEM_AMOUNT,
    BATTLE_BAG_USE_ITEM_MENU_WINDOW_ITEM_DESC,
    BATTLE_BAG_USE_ITEM_MENU_WINDOW_ITEM_USE,
};

void BattleBagText_InitializeWindows(BattleBag *battleBag);
void BattleBagText_InitializeScreenWindows(BattleBag *battleBag, enum BattleBagScreen screen);
void BattleBagText_ClearScreenWindows(BattleBag *battleBag);
void BattleBagText_ClearWindows(BattleBag *battleBag);
void BattleBagText_ChangeScreen(BattleBag *battleBag, enum BattleBagScreen screen);
void BattleBagText_PrintAllPocketItemInfo(BattleBag *battleBag);
void BattleBagText_PrintPocketPageNums(BattleBag *battleBag);
void BattleBagText_DisplayMessage(BattleBag *battleBag);
void BattleBagText_PrintToMessageBox(BattleBag *battleBag);

#endif // POKEPLATINUM_BATTLE_BAG_TEXT_H
