summaryrefslogtreecommitdiff
path: root/src/pokenav_menu_handler_1.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/pokenav_menu_handler_1.c')
-rw-r--r--src/pokenav_menu_handler_1.c154
1 files changed, 77 insertions, 77 deletions
diff --git a/src/pokenav_menu_handler_1.c b/src/pokenav_menu_handler_1.c
index d8d8e1509..4792756c1 100644
--- a/src/pokenav_menu_handler_1.c
+++ b/src/pokenav_menu_handler_1.c
@@ -32,53 +32,53 @@ static u32 (*GetMainMenuInputHandler(void))(struct Pokenav1Struct*);
static void SetMenuInputHandler(struct Pokenav1Struct *state);
// Number of entries - 1 for that menu type
-static const u8 sLastCursorPositions[] =
+static const u8 sLastCursorPositions[] =
{
- [POKENAV_MENU_TYPE_DEFAULT] = 2,
- [POKENAV_MENU_TYPE_UNLOCK_MC] = 3,
- [POKENAV_MENU_TYPE_UNLOCK_MC_RIBBONS] = 4,
- [POKENAV_MENU_TYPE_CONDITION] = 2,
+ [POKENAV_MENU_TYPE_DEFAULT] = 2,
+ [POKENAV_MENU_TYPE_UNLOCK_MC] = 3,
+ [POKENAV_MENU_TYPE_UNLOCK_MC_RIBBONS] = 4,
+ [POKENAV_MENU_TYPE_CONDITION] = 2,
[POKENAV_MENU_TYPE_CONDITION_SEARCH] = 5
};
static const u8 sMenuItems[][6] =
{
- [POKENAV_MENU_TYPE_DEFAULT] =
- {
- POKENAV_MENUITEM_MAP,
- POKENAV_MENUITEM_CONDITION,
+ [POKENAV_MENU_TYPE_DEFAULT] =
+ {
+ POKENAV_MENUITEM_MAP,
+ POKENAV_MENUITEM_CONDITION,
[2 ... 5] = POKENAV_MENUITEM_SWITCH_OFF
},
- [POKENAV_MENU_TYPE_UNLOCK_MC] =
- {
- POKENAV_MENUITEM_MAP,
- POKENAV_MENUITEM_CONDITION,
- POKENAV_MENUITEM_MATCH_CALL,
+ [POKENAV_MENU_TYPE_UNLOCK_MC] =
+ {
+ POKENAV_MENUITEM_MAP,
+ POKENAV_MENUITEM_CONDITION,
+ POKENAV_MENUITEM_MATCH_CALL,
[3 ... 5] = POKENAV_MENUITEM_SWITCH_OFF
},
- [POKENAV_MENU_TYPE_UNLOCK_MC_RIBBONS] =
- {
- POKENAV_MENUITEM_MAP,
- POKENAV_MENUITEM_CONDITION,
- POKENAV_MENUITEM_MATCH_CALL,
- POKENAV_MENUITEM_RIBBONS,
+ [POKENAV_MENU_TYPE_UNLOCK_MC_RIBBONS] =
+ {
+ POKENAV_MENUITEM_MAP,
+ POKENAV_MENUITEM_CONDITION,
+ POKENAV_MENUITEM_MATCH_CALL,
+ POKENAV_MENUITEM_RIBBONS,
[4 ... 5] = POKENAV_MENUITEM_SWITCH_OFF
},
- [POKENAV_MENU_TYPE_CONDITION] =
- {
- POKENAV_MENUITEM_CONDITION_PARTY,
- POKENAV_MENUITEM_CONDITION_SEARCH,
- POKENAV_MENUITEM_CONDITION_CANCEL,
+ [POKENAV_MENU_TYPE_CONDITION] =
+ {
+ POKENAV_MENUITEM_CONDITION_PARTY,
+ POKENAV_MENUITEM_CONDITION_SEARCH,
+ POKENAV_MENUITEM_CONDITION_CANCEL,
[3 ... 5] = POKENAV_MENUITEM_SWITCH_OFF
},
- [POKENAV_MENU_TYPE_CONDITION_SEARCH] =
- {
- POKENAV_MENUITEM_CONDITION_SEARCH_COOL,
- POKENAV_MENUITEM_CONDITION_SEARCH_BEAUTY,
- POKENAV_MENUITEM_CONDITION_SEARCH_CUTE,
- POKENAV_MENUITEM_CONDITION_SEARCH_SMART,
- POKENAV_MENUITEM_CONDITION_SEARCH_TOUGH,
- POKENAV_MENUITEM_CONDITION_SEARCH_CANCEL
+ [POKENAV_MENU_TYPE_CONDITION_SEARCH] =
+ {
+ POKENAV_MENUITEM_CONDITION_SEARCH_COOL,
+ POKENAV_MENUITEM_CONDITION_SEARCH_BEAUTY,
+ POKENAV_MENUITEM_CONDITION_SEARCH_CUTE,
+ POKENAV_MENUITEM_CONDITION_SEARCH_SMART,
+ POKENAV_MENUITEM_CONDITION_SEARCH_TOUGH,
+ POKENAV_MENUITEM_CONDITION_SEARCH_CANCEL
},
};
@@ -87,24 +87,24 @@ static u8 GetPokenavMainMenuType(void)
u8 menuType = POKENAV_MENU_TYPE_DEFAULT;
if (FlagGet(FLAG_ADDED_MATCH_CALL_TO_POKENAV))
- {
+ {
menuType = POKENAV_MENU_TYPE_UNLOCK_MC;
if (FlagGet(FLAG_SYS_RIBBON_GET))
menuType = POKENAV_MENU_TYPE_UNLOCK_MC_RIBBONS;
}
-
+
return menuType;
}
bool32 PokenavCallback_Init_MainMenuCursorOnMap(void)
{
- struct Pokenav1Struct *state = AllocSubstruct(1, sizeof(struct Pokenav1Struct));
+ struct Pokenav1Struct *state = AllocSubstruct(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER, sizeof(struct Pokenav1Struct));
if (!state)
return FALSE;
-
+
state->menuType = GetPokenavMainMenuType();
- state->cursorPos = 0;
+ state->cursorPos = POKENAV_MENUITEM_MAP;
state->currMenuItem = POKENAV_MENUITEM_MAP;
state->helpBarIndex = HELPBAR_NONE;
SetMenuInputHandler(state);
@@ -113,12 +113,12 @@ bool32 PokenavCallback_Init_MainMenuCursorOnMap(void)
bool32 PokenavCallback_Init_MainMenuCursorOnMatchCall(void)
{
- struct Pokenav1Struct *state = AllocSubstruct(1, sizeof(struct Pokenav1Struct));
+ struct Pokenav1Struct *state = AllocSubstruct(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER, sizeof(struct Pokenav1Struct));
if (!state)
return FALSE;
-
+
state->menuType = GetPokenavMainMenuType();
- state->cursorPos = 2;
+ state->cursorPos = POKENAV_MENUITEM_MATCH_CALL;
state->currMenuItem = POKENAV_MENUITEM_MATCH_CALL;
state->helpBarIndex = HELPBAR_NONE;
SetMenuInputHandler(state);
@@ -127,12 +127,12 @@ bool32 PokenavCallback_Init_MainMenuCursorOnMatchCall(void)
bool32 PokenavCallback_Init_MainMenuCursorOnRibbons(void)
{
- struct Pokenav1Struct *state = AllocSubstruct(1, sizeof(struct Pokenav1Struct));
+ struct Pokenav1Struct *state = AllocSubstruct(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER, sizeof(struct Pokenav1Struct));
if (!state)
return FALSE;
-
+
state->menuType = GetPokenavMainMenuType();
- state->cursorPos = 3;
+ state->cursorPos = POKENAV_MENUITEM_RIBBONS;
state->currMenuItem = POKENAV_MENUITEM_RIBBONS;
SetMenuInputHandler(state);
return TRUE;
@@ -140,12 +140,12 @@ bool32 PokenavCallback_Init_MainMenuCursorOnRibbons(void)
bool32 PokenavCallback_Init_ConditionMenu(void)
{
- struct Pokenav1Struct *state = AllocSubstruct(1, sizeof(struct Pokenav1Struct));
+ struct Pokenav1Struct *state = AllocSubstruct(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER, sizeof(struct Pokenav1Struct));
if (!state)
return FALSE;
-
+
state->menuType = POKENAV_MENU_TYPE_CONDITION;
- state->cursorPos = 0;
+ state->cursorPos = 0; //party
state->currMenuItem = POKENAV_MENUITEM_CONDITION_PARTY;
state->helpBarIndex = HELPBAR_NONE;
SetMenuInputHandler(state);
@@ -154,10 +154,10 @@ bool32 PokenavCallback_Init_ConditionMenu(void)
bool32 PokenavCallback_Init_ConditionSearchMenu(void)
{
- struct Pokenav1Struct *state = AllocSubstruct(1, sizeof(struct Pokenav1Struct));
+ struct Pokenav1Struct *state = AllocSubstruct(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER, sizeof(struct Pokenav1Struct));
if (!state)
return FALSE;
-
+
state->menuType = POKENAV_MENU_TYPE_CONDITION_SEARCH;
state->cursorPos = GetSelectedConditionSearch();
state->currMenuItem = state->cursorPos + POKENAV_MENUITEM_CONDITION_SEARCH_COOL;
@@ -202,13 +202,13 @@ static u32 (*GetMainMenuInputHandler(void))(struct Pokenav1Struct*)
u32 GetMenuHandlerCallback(void)
{
- struct Pokenav1Struct *state = GetSubstructPtr(1);
+ struct Pokenav1Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER);
return state->callback(state);
}
void FreeMenuHandlerSubstruct1(void)
{
- FreePokenavSubstruct(1);
+ FreePokenavSubstruct(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER);
}
static u32 HandleMainMenuInput(struct Pokenav1Struct *state)
@@ -216,7 +216,7 @@ static u32 HandleMainMenuInput(struct Pokenav1Struct *state)
if (UpdateMenuCursorPos(state))
return POKENAV_MENU_FUNC_MOVE_CURSOR;
- if (gMain.newKeys & A_BUTTON)
+ if (JOY_NEW(A_BUTTON))
{
switch (sMenuItems[state->menuType][state->cursorPos])
{
@@ -247,12 +247,12 @@ static u32 HandleMainMenuInput(struct Pokenav1Struct *state)
return POKENAV_MENU_FUNC_NO_RIBBON_WINNERS;
}
case POKENAV_MENUITEM_SWITCH_OFF:
- return -1;
+ return POKENAV_MENU_FUNC_EXIT;
}
}
-
- if (gMain.newKeys & B_BUTTON)
- return -1;
+
+ if (JOY_NEW(B_BUTTON))
+ return POKENAV_MENU_FUNC_EXIT;
return POKENAV_MENU_FUNC_NONE;
}
@@ -262,8 +262,8 @@ static u32 HandleMainMenuInputTutorial(struct Pokenav1Struct *state)
{
if (UpdateMenuCursorPos(state))
return POKENAV_MENU_FUNC_MOVE_CURSOR;
-
- if (gMain.newKeys & A_BUTTON)
+
+ if (JOY_NEW(A_BUTTON))
{
if (sMenuItems[state->menuType][state->cursorPos] == POKENAV_MENUITEM_MATCH_CALL)
{
@@ -277,13 +277,13 @@ static u32 HandleMainMenuInputTutorial(struct Pokenav1Struct *state)
return POKENAV_MENU_FUNC_NONE;
}
}
-
- if (gMain.newKeys & B_BUTTON)
+
+ if (JOY_NEW(B_BUTTON))
{
PlaySE(SE_FAILURE);
return POKENAV_MENU_FUNC_NONE;
}
-
+
return POKENAV_MENU_FUNC_NONE;
}
@@ -292,8 +292,8 @@ static u32 HandleMainMenuInputEndTutorial(struct Pokenav1Struct *state)
{
if (UpdateMenuCursorPos(state))
return POKENAV_MENU_FUNC_MOVE_CURSOR;
-
- if (gMain.newKeys & A_BUTTON)
+
+ if (JOY_NEW(A_BUTTON))
{
u32 menuItem = sMenuItems[state->menuType][state->cursorPos];
if (menuItem != POKENAV_MENUITEM_MATCH_CALL && menuItem != POKENAV_MENUITEM_SWITCH_OFF)
@@ -312,7 +312,7 @@ static u32 HandleMainMenuInputEndTutorial(struct Pokenav1Struct *state)
return -1;
}
}
- else if (gMain.newKeys & B_BUTTON)
+ else if (JOY_NEW(B_BUTTON))
{
return -1;
}
@@ -329,7 +329,7 @@ static u32 HandleCantOpenRibbonsInput(struct Pokenav1Struct *state)
return POKENAV_MENU_FUNC_MOVE_CURSOR;
}
- if (gMain.newKeys & (A_BUTTON | B_BUTTON))
+ if (JOY_NEW(A_BUTTON | B_BUTTON))
{
state->callback = GetMainMenuInputHandler();
return POKENAV_MENU_FUNC_RESHOW_DESCRIPTION;
@@ -342,8 +342,8 @@ static u32 HandleConditionMenuInput(struct Pokenav1Struct *state)
{
if (UpdateMenuCursorPos(state))
return POKENAV_MENU_FUNC_MOVE_CURSOR;
-
- if (gMain.newKeys & A_BUTTON)
+
+ if (JOY_NEW(A_BUTTON))
{
switch (sMenuItems[state->menuType][state->cursorPos])
{
@@ -363,7 +363,7 @@ static u32 HandleConditionMenuInput(struct Pokenav1Struct *state)
return POKENAV_MENU_FUNC_RETURN_TO_MAIN;
}
}
- if (gMain.newKeys & B_BUTTON)
+ if (JOY_NEW(B_BUTTON))
{
if (state->cursorPos != sLastCursorPositions[state->menuType])
{
@@ -386,8 +386,8 @@ static u32 HandleConditionSearchMenuInput(struct Pokenav1Struct *state)
{
if (UpdateMenuCursorPos(state))
return POKENAV_MENU_FUNC_MOVE_CURSOR;
-
- if (gMain.newKeys & A_BUTTON)
+
+ if (JOY_NEW(A_BUTTON))
{
u8 menuItem = sMenuItems[state->menuType][state->cursorPos];
if (menuItem != POKENAV_MENUITEM_CONDITION_SEARCH_CANCEL)
@@ -404,7 +404,7 @@ static u32 HandleConditionSearchMenuInput(struct Pokenav1Struct *state)
return POKENAV_MENU_FUNC_RETURN_TO_CONDITION;
}
}
- if (gMain.newKeys & B_BUTTON)
+ if (JOY_NEW(B_BUTTON))
{
if (state->cursorPos != sLastCursorPositions[state->menuType])
{
@@ -463,7 +463,7 @@ static void ReturnToConditionMenu(struct Pokenav1Struct *state)
static bool32 UpdateMenuCursorPos(struct Pokenav1Struct *state)
{
- if (gMain.newKeys & DPAD_UP)
+ if (JOY_NEW(DPAD_UP))
{
if (--state->cursorPos < 0)
state->cursorPos = sLastCursorPositions[state->menuType];
@@ -471,7 +471,7 @@ static bool32 UpdateMenuCursorPos(struct Pokenav1Struct *state)
state->currMenuItem = sMenuItems[state->menuType][state->cursorPos];
return TRUE;
}
- else if (gMain.newKeys & DPAD_DOWN)
+ else if (JOY_NEW(DPAD_DOWN))
{
state->cursorPos++;
if (state->cursorPos > sLastCursorPositions[state->menuType])
@@ -488,26 +488,26 @@ static bool32 UpdateMenuCursorPos(struct Pokenav1Struct *state)
int GetPokenavMenuType(void)
{
- struct Pokenav1Struct *state = GetSubstructPtr(1);
+ struct Pokenav1Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER);
return state->menuType;
}
// Position of cursor relative to number of current menu options
int GetPokenavCursorPos(void)
{
- struct Pokenav1Struct *state = GetSubstructPtr(1);
+ struct Pokenav1Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER);
return state->cursorPos;
}
// ID of menu item the cursor is currently on
int GetCurrentMenuItemId(void)
{
- struct Pokenav1Struct *state = GetSubstructPtr(1);
+ struct Pokenav1Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER);
return state->currMenuItem;
}
u16 GetHelpBarTextId(void)
{
- struct Pokenav1Struct *state = GetSubstructPtr(1);
+ struct Pokenav1Struct *state = GetSubstructPtr(POKENAV_SUBSTRUCT_MAIN_MENU_HANDLER);
return state->helpBarIndex;
}