diff options
Diffstat (limited to 'src/new_menu_helpers.c')
-rw-r--r-- | src/new_menu_helpers.c | 437 |
1 files changed, 0 insertions, 437 deletions
diff --git a/src/new_menu_helpers.c b/src/new_menu_helpers.c deleted file mode 100644 index a4aad4058..000000000 --- a/src/new_menu_helpers.c +++ /dev/null @@ -1,437 +0,0 @@ -#include "global.h" -#include "bg.h" -#include "palette.h" -#include "window.h" -#include "text.h" -#include "new_menu_helpers.h" -#include "text_window.h" -#include "menu.h" -#include "menu_helpers.h" - -#define STD_WINDOW_PALETTE_NUM 14 -#define STD_WINDOW_BASE_TILE_NUM 0x214 -#define DLG_WINDOW_PALETTE_NUM 15 -#define DLG_WINDOW_BASE_TILE_NUM 0x200 - -static EWRAM_DATA u8 gUnknown_0203CD8C = 0; -static EWRAM_DATA u8 gUnknown_0203CD8D = 0; - -const u16 gUnknown_0860F074[] = INCBIN_U16("graphics/interface/860F074.gbapal"); -static const u8 gUnknown_0860F094[] = { 8, 4, 1 }; - -static const struct WindowTemplate gUnknown_0860F098[] = -{ - { 0x00, 0x02, 0x0F, 0x1B, 0x04, 0x0F, 0x194 }, - DUMMY_WIN_TEMPLATE -}; - -static const struct WindowTemplate gUnknown_0860F0A8 = -{ - 0x00, 0x15, 0x09, 0x05, 0x04, 0x0F, 0x125 -}; - -// Forward declarations -extern void sub_81973A4(void); -extern void DrawStandardFrame(u8, u8, u8, u8, u8, u8); -extern void DrawDialogueFrame(u8, u8, u8, u8, u8, u8); -extern void sub_81977BC(u8, u8, u8, u8, u8, u8); -extern void sub_8197804(u8, u8, u8, u8, u8, u8); - -void sub_81971D0(void) -{ - InitWindows(gUnknown_0860F098); - gUnknown_0203CD8C = 0xFF; - gUnknown_0203CD8D = 0xFF; -} - -void sub_81971F4(void) -{ - FreeAllWindowBuffers(); -} - -void sub_8197200(void) -{ - ChangeBgX(0, 0, 0); - ChangeBgY(0, 0, 0); - DeactivateAllTextPrinters(); - sub_81973A4(); -} - -u16 sub_8197224(void) -{ - RunTextPrinters(); - return IsTextPrinterActive(0); -} - -u16 AddTextPrinterParameterized(u8 windowId, u8 fontId, const u8 *str, u8 speed, void (*callback)(struct TextSubPrinter *, u16), u8 fgColor, u8 bgColor, u8 shadowColor) -{ - struct TextSubPrinter printer; - - printer.current_text_offset = str; - printer.windowId = windowId; - printer.fontId = fontId; - printer.x = 0; - printer.y = 1; - printer.currentX = 0; - printer.currentY = 1; - printer.letterSpacing = 0; - printer.lineSpacing = 0; - printer.fontColor_l = 0; - printer.fgColor = fgColor; - printer.bgColor = bgColor; - printer.shadowColor = shadowColor; - - gTextFlags.flag_1 = 0; - return AddTextPrinter(&printer, speed, callback); -} - -void AddTextPrinterForMessage(bool8 allowSkippingDelayWithButtonPress) -{ - void (*callback)(struct TextSubPrinter *, u16) = NULL; - gTextFlags.flag_0 = allowSkippingDelayWithButtonPress; - AddTextPrinterParameterized(0, 1, gStringVar4, GetPlayerTextSpeed(), callback, 2, 1, 3); -} - -void AddTextPrinterForMessage_2(bool8 allowSkippingDelayWithButtonPress) -{ - gTextFlags.flag_0 = allowSkippingDelayWithButtonPress; - AddTextPrinterParameterized(0, 1, gStringVar4, GetPlayerTextSpeed(), NULL, 2, 1, 3); -} - -void AddTextPrinterWithCustomSpeedForMessage(bool8 allowSkippingDelayWithButtonPress, u8 speed) -{ - gTextFlags.flag_0 = allowSkippingDelayWithButtonPress; - AddTextPrinterParameterized(0, 1, gStringVar4, speed, NULL, 2, 1, 3); -} - -void sub_81973A4(void) -{ - copy_textbox_border_tile_patterns_to_vram(0, DLG_WINDOW_BASE_TILE_NUM, 0xF0); - sub_809882C(0, STD_WINDOW_BASE_TILE_NUM, 0xE0); -} - -void NewMenuHelpers_DrawDialogueFrame(u8 windowId, bool8 copyToVram) -{ - CallWindowFunction(windowId, DrawDialogueFrame); - FillWindowPixelBuffer(windowId, 0x11); - PutWindowTilemap(windowId); - if (copyToVram == TRUE) - CopyWindowToVram(windowId, 3); -} - -void NewMenuHelpers_DrawStdWindowFrame(u8 windowId, bool8 copyToVram) -{ - CallWindowFunction(windowId, DrawStandardFrame); - FillWindowPixelBuffer(windowId, 0x11); - PutWindowTilemap(windowId); - if (copyToVram == TRUE) - CopyWindowToVram(windowId, 3); -} - -void sub_8197434(u8 windowId, bool8 copyToVram) -{ - CallWindowFunction(windowId, sub_8197804); - FillWindowPixelBuffer(windowId, 0x11); - ClearWindowTilemap(windowId); - if (copyToVram == TRUE) - CopyWindowToVram(windowId, 3); -} - -void sub_819746C(u8 windowId, bool8 copyToVram) -{ - CallWindowFunction(windowId, sub_81977BC); - FillWindowPixelBuffer(windowId, 0x11); - ClearWindowTilemap(windowId); - if (copyToVram == TRUE) - CopyWindowToVram(windowId, 3); -} - -void DrawStandardFrame(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) -{ - int i; - - FillBgTilemapBufferRect(bg, - STD_WINDOW_BASE_TILE_NUM + 0, - tilemapLeft - 1, - tilemapTop - 1, - 1, - 1, - STD_WINDOW_PALETTE_NUM); - FillBgTilemapBufferRect(bg, - STD_WINDOW_BASE_TILE_NUM + 1, - tilemapLeft, - tilemapTop - 1, - width, - 1, - STD_WINDOW_PALETTE_NUM); - FillBgTilemapBufferRect(bg, - STD_WINDOW_BASE_TILE_NUM + 2, - tilemapLeft + width, - tilemapTop - 1, - 1, - 1, - STD_WINDOW_PALETTE_NUM); - - for (i = tilemapTop; i < tilemapTop + height; i++) - { - FillBgTilemapBufferRect(bg, - STD_WINDOW_BASE_TILE_NUM + 3, - tilemapLeft - 1, - i, - 1, - 1, - STD_WINDOW_PALETTE_NUM); - FillBgTilemapBufferRect(bg, - STD_WINDOW_BASE_TILE_NUM + 5, - tilemapLeft + width, - i, - 1, - 1, - STD_WINDOW_PALETTE_NUM); - } - - FillBgTilemapBufferRect(bg, - STD_WINDOW_BASE_TILE_NUM + 6, - tilemapLeft - 1, - tilemapTop + height, - 1, - 1, - STD_WINDOW_PALETTE_NUM); - FillBgTilemapBufferRect(bg, - STD_WINDOW_BASE_TILE_NUM + 7, - tilemapLeft, - tilemapTop + height, - width, - 1, - STD_WINDOW_PALETTE_NUM); - FillBgTilemapBufferRect(bg, - STD_WINDOW_BASE_TILE_NUM + 8, - tilemapLeft + width, - tilemapTop + height, - 1, - 1, - STD_WINDOW_PALETTE_NUM); -} - -void DrawDialogueFrame(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) -{ - FillBgTilemapBufferRect(bg, - DLG_WINDOW_BASE_TILE_NUM + 1, - tilemapLeft - 2, - tilemapTop - 1, - 1, - 1, - DLG_WINDOW_PALETTE_NUM); - FillBgTilemapBufferRect(bg, - DLG_WINDOW_BASE_TILE_NUM + 3, - tilemapLeft - 1, - tilemapTop - 1, - 1, - 1, - DLG_WINDOW_PALETTE_NUM); - FillBgTilemapBufferRect(bg, - DLG_WINDOW_BASE_TILE_NUM + 4, - tilemapLeft, - tilemapTop - 1, - width - 1, - 1, - DLG_WINDOW_PALETTE_NUM); - FillBgTilemapBufferRect(bg, - DLG_WINDOW_BASE_TILE_NUM + 5, - tilemapLeft + width - 1, - tilemapTop - 1, - 1, - 1, - DLG_WINDOW_PALETTE_NUM); - FillBgTilemapBufferRect(bg, - DLG_WINDOW_BASE_TILE_NUM + 6, - tilemapLeft + width, - tilemapTop - 1, - 1, - 1, - DLG_WINDOW_PALETTE_NUM); - FillBgTilemapBufferRect(bg, - DLG_WINDOW_BASE_TILE_NUM + 7, - tilemapLeft - 2, - tilemapTop, - 1, - 5, - DLG_WINDOW_PALETTE_NUM); - FillBgTilemapBufferRect(bg, - DLG_WINDOW_BASE_TILE_NUM + 9, - tilemapLeft - 1, - tilemapTop, - width + 1, - 5, - DLG_WINDOW_PALETTE_NUM); - FillBgTilemapBufferRect(bg, - DLG_WINDOW_BASE_TILE_NUM + 10, - tilemapLeft + width, - tilemapTop, - 1, - 5, - DLG_WINDOW_PALETTE_NUM); - FillBgTilemapBufferRect(bg, - BG_TILE_V_FLIP(DLG_WINDOW_BASE_TILE_NUM + 1), - tilemapLeft - 2, - tilemapTop + height, - 1, - 1, - DLG_WINDOW_PALETTE_NUM); - FillBgTilemapBufferRect(bg, - BG_TILE_V_FLIP(DLG_WINDOW_BASE_TILE_NUM + 3), - tilemapLeft - 1, - tilemapTop + height, - 1, - 1, - DLG_WINDOW_PALETTE_NUM); - FillBgTilemapBufferRect(bg, - BG_TILE_V_FLIP(DLG_WINDOW_BASE_TILE_NUM + 4), - tilemapLeft, - tilemapTop + height, - width - 1, - 1, - DLG_WINDOW_PALETTE_NUM); - FillBgTilemapBufferRect(bg, - BG_TILE_V_FLIP(DLG_WINDOW_BASE_TILE_NUM + 5), - tilemapLeft + width - 1, - tilemapTop + height, - 1, - 1, - DLG_WINDOW_PALETTE_NUM); - FillBgTilemapBufferRect(bg, - BG_TILE_V_FLIP(DLG_WINDOW_BASE_TILE_NUM + 6), - tilemapLeft + width, - tilemapTop + height, - 1, - 1, - DLG_WINDOW_PALETTE_NUM); -} - -void sub_81977BC(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) -{ - FillBgTilemapBufferRect(bg, 0, tilemapLeft - 1, tilemapTop - 1, width + 2, height + 2, STD_WINDOW_PALETTE_NUM); -} - -void sub_8197804(u8 bg, u8 tilemapLeft, u8 tilemapTop, u8 width, u8 height, u8 paletteNum) -{ - FillBgTilemapBufferRect(bg, 0, tilemapLeft - 3, tilemapTop - 1, width + 6, height + 2, STD_WINDOW_PALETTE_NUM); -} - -void SetStandardWindowBorderStyle(u8 windowId, bool8 copyToVram) -{ - SetWindowBorderStyle(windowId, copyToVram, STD_WINDOW_BASE_TILE_NUM, STD_WINDOW_PALETTE_NUM); -} - -void sub_819786C(u8 windowId, bool8 copyToVram) -{ - copy_textbox_border_tile_patterns_to_vram(windowId, DLG_WINDOW_BASE_TILE_NUM, 0xF0); - sub_8197B1C(windowId, copyToVram, DLG_WINDOW_BASE_TILE_NUM, 0xF); -} - -void sub_819789C(void) -{ - LoadPalette(gUnknown_0860F074, 0xE0, 0x14); -} - -void sub_81978B0(u16 offset) -{ - LoadPalette(gUnknown_0860F074, offset, 0x14); -} - -const u16 *sub_81978C8(void) -{ - return gUnknown_0860F074; -} - -u16 sub_81978D0(u8 colorNum) -{ - if (colorNum > 15) - colorNum = 0; - return gUnknown_0860F074[colorNum]; -} - -void DisplayItemMessageOnField(u8 taskId, const u8 *string, TaskFunc callback) -{ - sub_81973A4(); - DisplayMessageAndContinueTask(taskId, 0, DLG_WINDOW_BASE_TILE_NUM, DLG_WINDOW_PALETTE_NUM, 1, GetPlayerTextSpeed(), string, callback); - CopyWindowToVram(0, 3); -} - -void sub_8197930(void) -{ - CreateYesNoMenu(&gUnknown_0860F0A8, STD_WINDOW_BASE_TILE_NUM, STD_WINDOW_PALETTE_NUM, 0); -} - -void sub_8197948(u8 initialCursorPos) -{ - CreateYesNoMenu(&gUnknown_0860F0A8, STD_WINDOW_BASE_TILE_NUM, STD_WINDOW_PALETTE_NUM, initialCursorPos); -} - -u32 sub_8197964(void) -{ - if (gTextFlags.flag_3) - return 1; - return gSaveBlock2Ptr->optionsTextSpeed; -} - -u8 GetPlayerTextSpeed(void) -{ - u32 speed; - if (gSaveBlock2Ptr->optionsTextSpeed > 2) - gSaveBlock2Ptr->optionsTextSpeed = 1; - speed = sub_8197964(); - return gUnknown_0860F094[speed]; -} - -u8 sub_81979C4(u8 a1) -{ - if (gUnknown_0203CD8C == 0xFF) - gUnknown_0203CD8C = sub_8198AA4(0, 0x16, 1, 7, (a1 * 2) + 2, 0xF, 0x139); - return gUnknown_0203CD8C; -} - -u8 GetStartMenuWindowId(void) -{ - return gUnknown_0203CD8C; -} - -void remove_start_menu_window_maybe(void) -{ - if (gUnknown_0203CD8C != 0xFF) - { - RemoveWindow(gUnknown_0203CD8C); - gUnknown_0203CD8C = 0xFF; - } -} - -u16 sub_8197A30(void) -{ - return DLG_WINDOW_BASE_TILE_NUM; -} - -u16 sub_8197A38(void) -{ - return STD_WINDOW_BASE_TILE_NUM; -} - -u8 AddMapNamePopUpWindow(void) -{ - if (gUnknown_0203CD8D == 0xFF) - gUnknown_0203CD8D = sub_8198AA4(0, 1, 1, 10, 3, 14, 0x107); - return gUnknown_0203CD8D; -} - -u8 GetMapNamePopUpWindowId(void) -{ - return gUnknown_0203CD8D; -} - -void RemoveMapNamePopUpWindow(void) -{ - if (gUnknown_0203CD8D != 0xFF) - { - RemoveWindow(gUnknown_0203CD8D); - gUnknown_0203CD8D = 0xFF; - } -} |