Options menu: cleanup
This commit is contained in:
+32
-37
@@ -16,7 +16,6 @@
|
|||||||
#include "gba/m4a_internal.h"
|
#include "gba/m4a_internal.h"
|
||||||
#include "constants/rgb.h"
|
#include "constants/rgb.h"
|
||||||
|
|
||||||
// Task data
|
|
||||||
#define tMenuSelection data[0]
|
#define tMenuSelection data[0]
|
||||||
#define tTextSpeed data[1]
|
#define tTextSpeed data[1]
|
||||||
#define tBattleSceneOff data[2]
|
#define tBattleSceneOff data[2]
|
||||||
@@ -25,7 +24,6 @@
|
|||||||
#define tButtonMode data[5]
|
#define tButtonMode data[5]
|
||||||
#define tWindowFrameType data[6]
|
#define tWindowFrameType data[6]
|
||||||
|
|
||||||
// Menu items
|
|
||||||
enum
|
enum
|
||||||
{
|
{
|
||||||
MENUITEM_TEXTSPEED,
|
MENUITEM_TEXTSPEED,
|
||||||
@@ -38,7 +36,6 @@ enum
|
|||||||
MENUITEM_COUNT,
|
MENUITEM_COUNT,
|
||||||
};
|
};
|
||||||
|
|
||||||
// Window Ids
|
|
||||||
enum
|
enum
|
||||||
{
|
{
|
||||||
WIN_HEADER,
|
WIN_HEADER,
|
||||||
@@ -52,23 +49,22 @@ enum
|
|||||||
#define YPOS_BUTTONMODE (MENUITEM_BUTTONMODE * 16)
|
#define YPOS_BUTTONMODE (MENUITEM_BUTTONMODE * 16)
|
||||||
#define YPOS_FRAMETYPE (MENUITEM_FRAMETYPE * 16)
|
#define YPOS_FRAMETYPE (MENUITEM_FRAMETYPE * 16)
|
||||||
|
|
||||||
// this file's functions
|
|
||||||
static void Task_OptionMenuFadeIn(u8 taskId);
|
static void Task_OptionMenuFadeIn(u8 taskId);
|
||||||
static void Task_OptionMenuProcessInput(u8 taskId);
|
static void Task_OptionMenuProcessInput(u8 taskId);
|
||||||
static void Task_OptionMenuSave(u8 taskId);
|
static void Task_OptionMenuSave(u8 taskId);
|
||||||
static void Task_OptionMenuFadeOut(u8 taskId);
|
static void Task_OptionMenuFadeOut(u8 taskId);
|
||||||
static void HighlightOptionMenuItem(u8 selection);
|
static void HighlightOptionMenuItem(u8 selection);
|
||||||
static u8 TextSpeed_ProcessInput(u8 selection);
|
static u8 TextSpeed_ProcessInput(u8 selection);
|
||||||
static void TextSpeed_DrawChoices(u8 selection);
|
static void TextSpeed_DrawChoices(u8 selection);
|
||||||
static u8 BattleScene_ProcessInput(u8 selection);
|
static u8 BattleScene_ProcessInput(u8 selection);
|
||||||
static void BattleScene_DrawChoices(u8 selection);
|
static void BattleScene_DrawChoices(u8 selection);
|
||||||
static u8 BattleStyle_ProcessInput(u8 selection);
|
static u8 BattleStyle_ProcessInput(u8 selection);
|
||||||
static void BattleStyle_DrawChoices(u8 selection);
|
static void BattleStyle_DrawChoices(u8 selection);
|
||||||
static u8 Sound_ProcessInput(u8 selection);
|
static u8 Sound_ProcessInput(u8 selection);
|
||||||
static void Sound_DrawChoices(u8 selection);
|
static void Sound_DrawChoices(u8 selection);
|
||||||
static u8 FrameType_ProcessInput(u8 selection);
|
static u8 FrameType_ProcessInput(u8 selection);
|
||||||
static void FrameType_DrawChoices(u8 selection);
|
static void FrameType_DrawChoices(u8 selection);
|
||||||
static u8 ButtonMode_ProcessInput(u8 selection);
|
static u8 ButtonMode_ProcessInput(u8 selection);
|
||||||
static void ButtonMode_DrawChoices(u8 selection);
|
static void ButtonMode_DrawChoices(u8 selection);
|
||||||
static void DrawHeaderText(void);
|
static void DrawHeaderText(void);
|
||||||
static void DrawOptionMenuTexts(void);
|
static void DrawOptionMenuTexts(void);
|
||||||
@@ -116,29 +112,28 @@ static const struct WindowTemplate sOptionMenuWinTemplates[] =
|
|||||||
|
|
||||||
static const struct BgTemplate sOptionMenuBgTemplates[] =
|
static const struct BgTemplate sOptionMenuBgTemplates[] =
|
||||||
{
|
{
|
||||||
{
|
{
|
||||||
.bg = 1,
|
.bg = 1,
|
||||||
.charBaseIndex = 1,
|
.charBaseIndex = 1,
|
||||||
.mapBaseIndex = 30,
|
.mapBaseIndex = 30,
|
||||||
.screenSize = 0,
|
.screenSize = 0,
|
||||||
.paletteMode = 0,
|
.paletteMode = 0,
|
||||||
.priority = 0,
|
.priority = 0,
|
||||||
.baseTile = 0
|
.baseTile = 0
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
.bg = 0,
|
.bg = 0,
|
||||||
.charBaseIndex = 1,
|
.charBaseIndex = 1,
|
||||||
.mapBaseIndex = 31,
|
.mapBaseIndex = 31,
|
||||||
.screenSize = 0,
|
.screenSize = 0,
|
||||||
.paletteMode = 0,
|
.paletteMode = 0,
|
||||||
.priority = 1,
|
.priority = 1,
|
||||||
.baseTile = 0
|
.baseTile = 0
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
static const u16 sOptionMenuBg_Pal[] = {RGB(17, 18, 31)};
|
static const u16 sOptionMenuBg_Pal[] = {RGB(17, 18, 31)};
|
||||||
|
|
||||||
// code
|
|
||||||
static void MainCB2(void)
|
static void MainCB2(void)
|
||||||
{
|
{
|
||||||
RunTasks();
|
RunTasks();
|
||||||
@@ -213,7 +208,7 @@ void CB2_InitOptionMenu(void)
|
|||||||
gMain.state++;
|
gMain.state++;
|
||||||
break;
|
break;
|
||||||
case 6:
|
case 6:
|
||||||
PutWindowTilemap(0);
|
PutWindowTilemap(WIN_HEADER);
|
||||||
DrawHeaderText();
|
DrawHeaderText();
|
||||||
gMain.state++;
|
gMain.state++;
|
||||||
break;
|
break;
|
||||||
@@ -221,7 +216,7 @@ void CB2_InitOptionMenu(void)
|
|||||||
gMain.state++;
|
gMain.state++;
|
||||||
break;
|
break;
|
||||||
case 8:
|
case 8:
|
||||||
PutWindowTilemap(1);
|
PutWindowTilemap(WIN_OPTIONS);
|
||||||
DrawOptionMenuTexts();
|
DrawOptionMenuTexts();
|
||||||
gMain.state++;
|
gMain.state++;
|
||||||
case 9:
|
case 9:
|
||||||
@@ -253,7 +248,7 @@ void CB2_InitOptionMenu(void)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 11:
|
case 11:
|
||||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0x10, 0, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 16, 0, RGB_BLACK);
|
||||||
SetVBlankCallback(VBlankCB);
|
SetVBlankCallback(VBlankCB);
|
||||||
SetMainCallback2(MainCB2);
|
SetMainCallback2(MainCB2);
|
||||||
return;
|
return;
|
||||||
@@ -362,7 +357,7 @@ static void Task_OptionMenuSave(u8 taskId)
|
|||||||
gSaveBlock2Ptr->optionsButtonMode = gTasks[taskId].tButtonMode;
|
gSaveBlock2Ptr->optionsButtonMode = gTasks[taskId].tButtonMode;
|
||||||
gSaveBlock2Ptr->optionsWindowFrameType = gTasks[taskId].tWindowFrameType;
|
gSaveBlock2Ptr->optionsWindowFrameType = gTasks[taskId].tWindowFrameType;
|
||||||
|
|
||||||
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 0x10, RGB_BLACK);
|
BeginNormalPaletteFade(PALETTES_ALL, 0, 0, 16, RGB_BLACK);
|
||||||
gTasks[taskId].func = Task_OptionMenuFadeOut;
|
gTasks[taskId].func = Task_OptionMenuFadeOut;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -387,13 +382,13 @@ static void DrawOptionMenuChoice(const u8 *text, u8 x, u8 y, u8 style)
|
|||||||
u8 dst[16];
|
u8 dst[16];
|
||||||
u16 i;
|
u16 i;
|
||||||
|
|
||||||
for (i = 0; *text != EOS && i <= 14; i++)
|
for (i = 0; *text != EOS && i < ARRAY_COUNT(dst) - 1; i++)
|
||||||
dst[i] = *(text++);
|
dst[i] = *(text++);
|
||||||
|
|
||||||
if (style != 0)
|
if (style != 0)
|
||||||
{
|
{
|
||||||
dst[2] = 4;
|
dst[2] = TEXT_COLOR_RED;
|
||||||
dst[5] = 5;
|
dst[5] = TEXT_COLOR_LIGHT_RED;
|
||||||
}
|
}
|
||||||
|
|
||||||
dst[i] = EOS;
|
dst[i] = EOS;
|
||||||
@@ -564,7 +559,7 @@ static void FrameType_DrawChoices(u8 selection)
|
|||||||
{
|
{
|
||||||
text[i] = n % 10 + CHAR_0;
|
text[i] = n % 10 + CHAR_0;
|
||||||
i++;
|
i++;
|
||||||
text[i] = 0x77;
|
text[i] = CHAR_SPACER;
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user