pokeemerald/include/menu_helpers.h

45 lines
1.7 KiB
C
Raw Normal View History

2017-10-13 05:05:36 +02:00
#ifndef GUARD_MENU_HELPERS_H
#define GUARD_MENU_HELPERS_H
2018-02-07 07:07:42 +01:00
#include "task.h"
2018-08-15 06:56:11 +02:00
#include "window.h"
2018-02-07 07:07:42 +01:00
2019-10-18 01:22:03 +02:00
#define MENU_L_PRESSED 1
#define MENU_R_PRESSED 2
2017-10-13 05:05:36 +02:00
// Exported type declarations
2017-12-16 00:08:23 +01:00
struct YesNoFuncTable
{
Decoration + decoration_inventory (#89) * SetDecorationInventoriesPointers * ClearDecorationInventories * CheckHasDecoration * DecorationAdd * DecorationCheckSpace * DecorationRemove * sub_8161A38 * CountDecorations; Funcion renaming * Disassemble decoration data structs, tilemaps, and descriptions * sub_8126968 * sub_81269D4 * through sub_8126A88 * through sub_8126B2C * sub_8126B80 * sub_8126C08 * sub_8126C48 * sub_8126CA4 * sub_8126D10 * sub_8126E44 * sub_8126E8C * sub_8126F68 * sub_8127058 * sub_8127088 * sub_81270E8 * through sub_8127208 * through sub_8127268 * sub_8127284 * through sub_81272F8 * sub_8127330 * through sub_8127480 * sub_81274A0 * sub_8127500; makefile now tells scaninc to scan headers * Actual real fix to mapfile being in build/emerald instead of wd * through sub_812759C * through sub_812764C * through sub_8127744 * through sub_81277BC * sub_81277E8 * sub_8127814 * through sub_81279C4 * through sub_8127ACC * sub_8127B04 * sub_8127B54 * sub_8127B90 * sub_8127D38 * sub_8127E18 * sub_8127F68 * sub_8128060 * ConfigureCameraObjectForPlacingDecoration * SetUpPlacingDecorationPlayerAvatar * sub_812826C * through sub_8128414 * through sub_81284F4 * sub_812853C * sub_8128950 * through sub_8128AAC * through sub_8128BBC * c1_overworld_prev_quest * sub_8128C64 * sub_8128CD4 * sub_8128D10 * sub_8128DB4 * through sub_8128E18 * through sub_8129068 * sub_8129088 * through sub_81291E8 * sub_812925C * sub_81292D0 * sub_81292E8 * gpu_pal_decompress_alloc_tag_and_upload * AddDecorationIconObjectFromIconTable * GetDecorationIconPicOrPalette * AddDecorationIconObjectFromFieldObject * AddDecorationIconObject * through sub_8129708 * sub_81297F8 * sub_81298EC * SetUpPuttingAwayDecorationPlayerAvatar * sub_8129ABC * sub_8129B34 * sub_8129BCC * through sub_8129C74 * through sub_8129D8C * sub_8129E0C * sub_8129E74 * sub_8129F20 * sub_8129FC8 * sub_812A040 * nonmatching sub_812A0E8 * through sub_812A22C * sub_812A25C * sub_812A2C4 * through sub_812A39C * Remaining fns in decoration.s * Decompile decoration headers * Decompile all remaining decoration data that had already been disassembled * Disassemble two data objects * Suggest structure of list menu template * decompile through decoration list menu template * Disassemble decoration icon graphics table * Rip icon gfx * Decompile deco icon table * Decompile more data related to drawing decorations * Decompile gUnknown_085A7250 structs * Decompile two sprite templates * Decompile remaining data in decoration.s * Decompile decoration ewram * deco -> decor
2017-10-23 00:55:07 +02:00
TaskFunc yesFunc;
TaskFunc noFunc;
};
2017-10-13 05:05:36 +02:00
// Exported RAM declarations
// Exported ROM declarations
2017-12-09 21:23:40 +01:00
void ResetVramOamAndBgCntRegs(void);
void ResetAllBgsCoordinates(void);
2018-05-15 20:22:19 +02:00
void SetVBlankHBlankCallbacksToNull(void);
void DisplayMessageAndContinueTask(u8 taskId, u8 windowId, u16 arg2, u8 arg3, u8 fontId, u8 textSpeed, const u8 *string, void *taskFunc);
2017-12-09 21:23:40 +01:00
bool16 RunTextPrintersRetIsActive(u8 textPrinterId);
2018-12-31 23:09:45 +01:00
void DoYesNoFuncWithChoice(u8 taskId, const struct YesNoFuncTable *data);
2017-12-16 15:10:29 +01:00
void CreateYesNoMenuWithCallbacks(u8 taskId, const struct WindowTemplate *template, u8 arg2, u8 arg3, u8 arg4, u16 tileStart, u8 palette, const struct YesNoFuncTable *yesNo);
2018-05-15 20:22:19 +02:00
bool8 AdjustQuantityAccordingToDPadInput(s16 *arg0, u16 arg1);
2019-10-18 01:22:03 +02:00
u8 GetLRKeysPressed(void);
u8 GetLRKeysPressedAndHeld(void);
2018-05-15 20:22:19 +02:00
bool8 sub_8122148(u16 itemId);
2021-04-23 00:49:54 +02:00
bool8 IsWritingMailAllowed(u16 itemId);
2020-05-14 10:37:09 +02:00
bool8 MenuHelpers_LinkSomething(void);
bool8 MenuHelpers_CallLinkSomething(void);
2018-05-15 20:22:19 +02:00
void sub_812220C(struct ItemSlot *slots, u8 count, u8 *arg2, u8 *usedSlotsCount, u8 maxUsedSlotsCount);
void sub_812225C(u16 *scrollOffset, u16 *cursorPos, u8 maxShownItems, u8 numItems);
2018-05-15 20:22:19 +02:00
void sub_8122298(u16 *arg0, u16 *arg1, u8 arg2, u8 arg3, u8 arg4);
2021-04-11 22:23:10 +02:00
void LoadListMenuSwapLineGfx(void);
void CreateSwapLineSprites(u8 *spriteIds, u8 count);
void DestroySwapLineSprites(u8 *spriteIds, u8 count);
void SetSwapLineSpritesInvisibility(u8 *spriteIds, u8 count, bool8 invisible);
void UpdateSwapLineSpritesPos(u8 *spriteIds, u8 count, s16 x, u16 y);
2017-10-13 05:05:36 +02:00
#endif //GUARD_MENU_HELPERS_H