diff options
author | YamaArashi <shadow962@live.com> | 2017-01-05 04:24:19 -0800 |
---|---|---|
committer | YamaArashi <shadow962@live.com> | 2017-01-05 04:24:19 -0800 |
commit | 9b0872d1b84d6b4ed4e36a576049b3f409674b95 (patch) | |
tree | f2a7719a0addc6706534870f671f30590415b9bd /src | |
parent | 3d412c4502bfb255e839b6d9289bf01f9f4814bd (diff) |
define some menu data in C
Diffstat (limited to 'src')
-rw-r--r-- | src/menu.c | 9 | ||||
-rw-r--r-- | src/start_menu.c | 62 |
2 files changed, 56 insertions, 15 deletions
diff --git a/src/menu.c b/src/menu.c index 31841146d..ee9376079 100644 --- a/src/menu.c +++ b/src/menu.c @@ -22,6 +22,9 @@ struct Menu u8 columnXCoords[8]; }; +extern u8 OtherText_Yes[]; +extern u8 OtherText_No[]; + static void MultistepInitMenuWindowInternal(const struct WindowConfig *, u16); static void InitMenuWindowInternal(const struct WindowConfig *, u16); static bool8 sub_80723D4(void); @@ -41,7 +44,11 @@ EWRAM_DATA u16 gMenuTextWindowTileOffset = 0; EWRAM_DATA u16 gMenuTextWindowContentTileOffset = 0; EWRAM_DATA u16 gMenuMessageBoxContentTileOffset = 0; -extern const struct MenuAction gMenuYesNoItems[]; +const struct MenuAction gMenuYesNoItems[] = +{ + { OtherText_Yes, NULL }, + { OtherText_No, NULL }, +}; void CloseMenu(void) { diff --git a/src/start_menu.c b/src/start_menu.c index d0e552591..4c5e30c8a 100644 --- a/src/start_menu.c +++ b/src/start_menu.c @@ -51,7 +51,6 @@ extern u16 gSaveFileStatus; extern u16 gScriptResult; extern u8 (*gCallback_03004AE8)(void); extern u8 gUnknown_03004860; -extern struct MenuItem gStartMenuItems[]; extern u8 gNumSafariBalls; EWRAM_DATA static u8 sStartMenuCursorPos = 0; @@ -67,6 +66,41 @@ extern u8 gSaveText_ThereIsAlreadyAFile[]; extern u8 gSaveText_ThereIsADifferentFile[]; extern u8 gSaveText_WouldYouLikeToSave[]; extern u8 gOtherText_SafariStock[]; +extern u8 SystemText_Pokedex[]; +extern u8 SystemText_Pokemon[]; +extern u8 SystemText_BAG[]; +extern u8 SystemText_Pokenav[]; +extern u8 SystemText_Player[]; +extern u8 SystemText_Save[]; +extern u8 SystemText_Option[]; +extern u8 SystemText_Exit[]; +extern u8 SystemText_Retire[]; +extern u8 SystemText_Player[]; + +static u8 StartMenu_PokedexCallback(void); +static u8 StartMenu_PokemonCallback(void); +static u8 StartMenu_BagCallback(void); +static u8 StartMenu_PokenavCallback(void); +static u8 StartMenu_PlayerCallback(void); +static u8 StartMenu_SaveCallback(void); +static u8 StartMenu_OptionCallback(void); +static u8 StartMenu_ExitCallback(void); +static u8 StartMenu_RetireCallback(void); +static u8 StartMenu_PlayerLinkCallback(void); + +static const struct MenuItem sStartMenuItems[] = +{ + { SystemText_Pokedex, StartMenu_PokedexCallback }, + { SystemText_Pokemon, StartMenu_PokemonCallback }, + { SystemText_BAG, StartMenu_BagCallback }, + { SystemText_Pokenav, StartMenu_PokenavCallback }, + { SystemText_Player, StartMenu_PlayerCallback }, + { SystemText_Save, StartMenu_SaveCallback }, + { SystemText_Option, StartMenu_OptionCallback }, + { SystemText_Exit, StartMenu_ExitCallback }, + { SystemText_Retire, StartMenu_RetireCallback }, + { SystemText_Player, StartMenu_PlayerLinkCallback }, +}; //Private functions static void BuildStartMenuActions(void); @@ -180,7 +214,7 @@ static bool32 PrintStartMenuItemsMultistep(s16 *index, u32 n) do { - MenuPrint(gStartMenuItems[sCurrentStartMenuActions[_index]].text, 23, 2 + _index * 2); + MenuPrint(sStartMenuItems[sCurrentStartMenuActions[_index]].text, 23, 2 + _index * 2); _index++; if(_index >= sNumStartMenuActions) { @@ -303,12 +337,12 @@ static u8 StartMenu_InputProcessCallback(void) if(gMain.newKeys & A_BUTTON) { PlaySE(SE_SELECT); - if(gStartMenuItems[sCurrentStartMenuActions[sStartMenuCursorPos]].callback == StartMenu_PokedexCallback) + if(sStartMenuItems[sCurrentStartMenuActions[sStartMenuCursorPos]].callback == StartMenu_PokedexCallback) { if(GetNationalPokedexCount(0) == 0) return 0; } - gCallback_03004AE8 = gStartMenuItems[sCurrentStartMenuActions[sStartMenuCursorPos]].callback; + gCallback_03004AE8 = sStartMenuItems[sCurrentStartMenuActions[sStartMenuCursorPos]].callback; if(gCallback_03004AE8 != StartMenu_SaveCallback && gCallback_03004AE8 != StartMenu_ExitCallback && gCallback_03004AE8 != StartMenu_RetireCallback) @@ -324,7 +358,7 @@ static u8 StartMenu_InputProcessCallback(void) } //When player selects POKEDEX -u8 StartMenu_PokedexCallback(void) +static u8 StartMenu_PokedexCallback(void) { if(!gPaletteFade.active) { @@ -337,7 +371,7 @@ u8 StartMenu_PokedexCallback(void) } //When player selects POKEMON -u8 StartMenu_PokemonCallback(void) +static u8 StartMenu_PokemonCallback(void) { if(!gPaletteFade.active) { @@ -349,7 +383,7 @@ u8 StartMenu_PokemonCallback(void) } //When player selects BAG -u8 StartMenu_BagCallback(void) +static u8 StartMenu_BagCallback(void) { if(!gPaletteFade.active) { @@ -361,7 +395,7 @@ u8 StartMenu_BagCallback(void) } //When player selects POKENAV -u8 StartMenu_PokenavCallback(void) +static u8 StartMenu_PokenavCallback(void) { if(!gPaletteFade.active) { @@ -373,7 +407,7 @@ u8 StartMenu_PokenavCallback(void) } //When player selects his/her name -u8 StartMenu_PlayerCallback(void) +static u8 StartMenu_PlayerCallback(void) { if(!gPaletteFade.active) { @@ -385,7 +419,7 @@ u8 StartMenu_PlayerCallback(void) } //When player selects SAVE -u8 StartMenu_SaveCallback(void) +static u8 StartMenu_SaveCallback(void) { sub_8072DEC(); gCallback_03004AE8 = SaveCallback1; @@ -393,7 +427,7 @@ u8 StartMenu_SaveCallback(void) } //When player selects OPTION -u8 StartMenu_OptionCallback(void) +static u8 StartMenu_OptionCallback(void) { if(!gPaletteFade.active) { @@ -406,14 +440,14 @@ u8 StartMenu_OptionCallback(void) } //When player selects EXIT -u8 StartMenu_ExitCallback(void) +static u8 StartMenu_ExitCallback(void) { CloseMenu(); return 1; } //When player selects RETIRE -u8 StartMenu_RetireCallback(void) +static u8 StartMenu_RetireCallback(void) { CloseMenu(); SafariZoneRetirePrompt(); @@ -421,7 +455,7 @@ u8 StartMenu_RetireCallback(void) } //When player selects their name in multiplayer mode -u8 StartMenu_PlayerLinkCallback(void) +static u8 StartMenu_PlayerLinkCallback(void) { if(!gPaletteFade.active) { |