diff options
author | PikalaxALT <pikalaxalt@gmail.com> | 2019-07-29 21:10:54 -0400 |
---|---|---|
committer | PikalaxALT <pikalaxalt@gmail.com> | 2019-07-29 21:10:54 -0400 |
commit | e130a00cdf69c58dbff8e98a69559aeb33f87b60 (patch) | |
tree | e128e502a2229f5d934f0436a0eb31dc86350bbb /include/menu.h | |
parent | ef4c86fbfdd18b78700f61b629907a85579197c0 (diff) | |
parent | d4cc0e161bf103d3d3e01fefa02e867d4a2053c2 (diff) |
Merge branch 'master' into slot_machine
Diffstat (limited to 'include/menu.h')
-rw-r--r-- | include/menu.h | 79 |
1 files changed, 47 insertions, 32 deletions
diff --git a/include/menu.h b/include/menu.h index 172944064..19d7c82a4 100644 --- a/include/menu.h +++ b/include/menu.h @@ -2,10 +2,12 @@ #define GUARD_MENU_H #include "global.h" - #include "text.h" #include "window.h" +#define MENU_NOTHING_CHOSEN -2 +#define MENU_B_PRESSED -1 + struct MenuAction { const u8 *text; @@ -15,41 +17,54 @@ struct MenuAction } func; }; -void box_print(u8, u8, u8, u8, const void *, s8, const u8 *); -void sub_8198070(u8 windowId, bool8 copyToVram); -void SetWindowTemplateFields(struct WindowTemplate* template, u8 priority, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 palNum, u16 baseBlock); -void SetWindowBorderStyle(u8 windowId, bool8 copyToVram, u16 tileStart, u8 palette); -void schedule_bg_copy_tilemap_to_vram(u8 bgNum); -void PrintMenuTable(u8 idx, u8 nstrs, const struct MenuAction *strs); -void InitMenuInUpperLeftCornerPlaySoundWhenAPressed(u8 idx, u8 nstrs,u8); -u8 GetMenuCursorPos(void); -s8 ProcessMenuInput(void); -s8 ProcessMenuInputNoWrapAround(void); -void blit_move_info_icon(u8 winId, u8 a2, u16 x, u16 y); -void reset_temp_tile_data_buffers(void); -int decompress_and_copy_tile_data_to_vram(u8 bg_id, const void *src, int size, u16 offset, u8 mode); -bool8 free_temp_tile_data_buffers_if_possible(void); -u64 sub_8198A50(struct WindowTemplate*, u8, u8, u8, u8, u8, u8, u16); // returns something but it isn't used, fix when menu.s is decomp'd -//void CreateYesNoMenu(const struct WindowTemplate *windowTemplate, u16 borderFirstTileNum, u8 borderPalette, u8 initialCursorPos); -s8 Menu_ProcessInputNoWrapClearOnChoose(void); -void do_scheduled_bg_tilemap_copies_to_vram(void); -void clear_scheduled_bg_copies_to_vram(void); -void AddTextPrinterParametrized2(u8 windowId, u8 fontId, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, const struct TextColor *color, s8 speed, const u8 *str); -void sub_8197B1C(u8 windowId, bool8 copyToVram, u16 a2, u16 a3); -void sub_810F4D8(u8 windowId, bool32 someBool); -void *sub_80F68F0(u8 bgId, const void *src, u32 size, u16 offset, u8 mode); -void CreateWindow_SnapRight_StdPal(u8, u8, u8, u8, u16); -void Menu_PrintHelpSystemUIHeader(const u8 *, const u8 *, u8, u32, u8); -void PrintTextOnRightSnappedWindow(const u8 *, u32, u8); -void sub_810F71C(void); -void sub_810F740(void); -u8 ProgramAndPlaceMenuCursorOnWindow(u8 windowId, u8 fontId, u8 left, u8 top, u8 cursorHeight, u8 numChoices, u8 initialCursorPosition); -void CreateYesNoMenu(const struct WindowTemplate *, u8, u8, u8, u16, u8, u8); - +// menu2 +void AddTextPrinterParameterized3(u8 windowId, u8 fontId, u8 x, u8 y, const struct TextColor * color, s8 speed, const u8 * str); +void AddTextPrinterParameterized4(u8 windowId, u8 fontId, u8 x, u8 y, u8 letterSpacing, u8 lineSpacing, const struct TextColor *color, s8 speed, const u8 *str); +void AddTextPrinterParameterized5(u8 windowId, u8 fontId, const u8 *str, u8 x, u8 y, u8 speed, void (*callback)(struct TextPrinterTemplate *, u16), u8 letterSpacing, u8 lineSpacing); +void sub_812E6DC(u8 windowId, const u8 * src, u16 x, u16 y); void StartBlendTask(u8 eva_start, u8 evb_start, u8 eva_end, u8 evb_end, u8 ev_step, u8 priority); bool8 IsBlendTaskActive(void); void AddItemMenuActionTextPrinters(u8 windowId, u8 fontId, u8 left, u8 top, u8 letterSpacing, u8 lineHeight, u8 itemCount, const struct MenuAction *strs, const u8 *a8); void sub_810F260(u8 windowId, u8 a1); void sub_812E62C(u8 windowId, u8 fontId, const u8 *str, u8 x, u8 y, u8 speed, void (*callback)(struct TextPrinterTemplate *, u16), u8 letterSpacing, u8 lineSpacing); +u8 sub_812EA78(u16 species, u32 personality, u8 a2); +s8 sub_812EAE4(u16 species, u32 personality, u8 a2); + +// list_menu +void sub_8107CD8(u8 palOffset, u16 speciesId); +void sub_8107CF8(u8 windowId, u16 speciesId, u32 personality, u16 x, u16 y); +void sub_8107D38(u8 palOffset, u8 palId); +void BlitMoveInfoIcon(u8 windowId, u8 iconId, u16 x, u16 y); + +// menu +s8 Menu_ProcessInputGridLayout(void); +u8 MultichoiceGrid_InitCursor(u8 windowId, u8 fontId, u8 left, u8 top, u8 optionWidth, u8 cols, u8 rows, u8 cursorPos); +void MultichoiceGrid_PrintItems(u8 windowId, u8 fontId, u8 itemWidth, u8 itemHeight, u8 cols, u8 rows, const struct MenuAction *strs); +void DestroyYesNoMenu(void); +s8 Menu_ProcessInputNoWrapClearOnChoose(void); +void CreateYesNoMenu(const struct WindowTemplate *window, u8 fontId, u8 left, u8 top, u16 baseTileNum, u8 paletteNum, u8 initialCursorPos); +void AddItemMenuActionTextPrinters(u8 windowId, u8 fontId, u8 left, u8 top, u8 letterSpacing, u8 lineHeight, u8 itemCount, const struct MenuAction *strs, const u8 *orderArray); +void UnionRoomAndTradeMenuPrintOptions(u8 windowId, u8 fontId, u8 lineHeight, u8 itemCount, const struct MenuAction *strs); +void MultichoiceList_PrintItems(u8 windowId, u8 fontId, u8 left, u8 top, u8 lineHeight, u8 itemCount, const struct MenuAction *strs, u8 letterSpacing, u8 lineSpacing); +void PrintTextArray(u8 windowId, u8 fontId, u8 left, u8 top, u8 lineHeight, u8 itemCount, const struct MenuAction *strs); +s8 Menu_ProcessInputNoWrapAround_other(void); +s8 Menu_ProcessInput_other(void); +s8 Menu_ProcessInputNoWrapAround(void); +s8 Menu_ProcessInput(void); +u8 Menu_GetCursorPos(void); +u8 Menu_MoveCursorNoWrapAround(s8 cursorDelta); +u8 Menu_MoveCursor(s8 cursorDelta); +u8 Menu_InitCursor(u8 windowId, u8 fontId, u8 left, u8 top, u8 cursorHeight, u8 numChoices, u8 initialCursorPos); +u8 Menu_InitCursorInternal(u8 windowId, u8 fontId, u8 left, u8 top, u8 cursorHeight, u8 numChoices, u8 initialCursorPos, bool8 APressMuted); +void TopBarWindowPrintTwoStrings(const u8 *string, const u8 *string2, bool8 fgColorChooser, u8 notUsed, bool8 copyToVram); +void TopBarWindowPrintString(const u8 *string, u8 unUsed, bool8 copyToVram); +void ClearTopBarWindow(void); +void DestroyTopBarWindow(void); +u8 CreateTopBarWindowLoadPalette(u8 bg, u8 width, u8 yPos, u8 palette, u16 baseTile); +void ClearStdWindowAndFrameToTransparent(u8 windowId, bool8 copyToVram); +void DrawStdFrameWithCustomTileAndPalette(u8 windowId, bool8 copyToVram, u16 baseTileNum, u8 paletteNum); +void ClearDialogWindowAndFrameToTransparent(u8 windowId, bool8 copyToVram); +void DrawDialogFrameWithCustomTileAndPalette(u8 windowId, bool8 copyToVram, u16 tileNum, u8 paletteNum); +struct WindowTemplate SetWindowTemplateFields(u8 bg, u8 left, u8 top, u8 width, u8 height, u8 paletteNum, u16 baseBlock); #endif // GUARD_MENU_H |