diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/data/script_menu.h | 249 | ||||
-rw-r--r-- | src/field_specials.c | 1 | ||||
-rw-r--r-- | src/script_menu.c | 75 |
3 files changed, 163 insertions, 162 deletions
diff --git a/src/data/script_menu.h b/src/data/script_menu.h index 382410652..8e3877b46 100644 --- a/src/data/script_menu.h +++ b/src/data/script_menu.h @@ -288,7 +288,7 @@ const struct MenuAction MultichoiceList_HowsFishing[] = {gText_NotSoGood}, }; -const struct MenuAction MultichoiceList_SSTidalSlateport1[] = +const struct MenuAction MultichoiceList_SSTidalSlateportWithBF[] = { {gText_LilycoveCity}, {gText_BattleFrontier}, @@ -308,7 +308,7 @@ const struct MenuAction MultichoiceList_RightLeft[] = {gText_Left}, }; -const struct MenuAction MultichoiceList_SSTidalSlateport2[] = +const struct MenuAction MultichoiceList_SSTidalSlateportNoBF[] = { {gText_LilycoveCity}, {gText_Exit}, @@ -784,120 +784,120 @@ struct MultichoiceListStruct const struct MultichoiceListStruct gMultichoiceLists[] = { - [MULTI_BRINEY_ON_DEWFORD] = MULTICHOICE(MultichoiceList_BrineyOnDewford), - [MULTI_PC] = MULTICHOICE(MultichoiceList_Exit), - [MULTI_ENTERINFO] = MULTICHOICE(MultichoiceList_EnterInfo), - [MULTI_CONTEST_INFO] = MULTICHOICE(MultichoiceList_ContestInfo), - [MULTI_CONTEST_TYPE] = MULTICHOICE(MultichoiceList_ContestType), - [MULTI_DECOR_NOREGISTRY] = MULTICHOICE(MultichoiceList_DecorNoRegistry), - [MULTI_DECOR_REGISTRY] = MULTICHOICE(MultichoiceList_DecorRegistry), - [MULTI_REGISTER_MENU] = MULTICHOICE(MultichoiceList_RegisterMenu), - [MULTI_SSTIDAL_LILYCOVE] = MULTICHOICE(MultichoiceList_Exit), - [MULTI_UNUSED_9] = MULTICHOICE(MultichoiceList_Exit), - [MULTI_UNUSED_10] = MULTICHOICE(MultichoiceList_Exit), - [MULTI_FRONTIER_PASS_INFO] = MULTICHOICE(MultichoiceList_FrontierPassInfo), - [MULTI_BIKE] = MULTICHOICE(MultichoiceList_Bike), - [MULTI_STATUS_INFO] = MULTICHOICE(MultichoiceList_StatusInfo), - [MULTI_BRINEY_OFF_DEWFORD] = MULTICHOICE(MultichoiceList_BrineyOffDewford), - [MULTI_UNUSED_15] = MULTICHOICE(MultichoiceList_Exit), - [MULTI_VIEWED_PAINTINGS] = MULTICHOICE(MultichoiceList_ViewedPaintings), - [MULTI_YESNOINFO] = MULTICHOICE(MultichoiceList_YesNoInfo), - [MULTI_BATTLE_MODE] = MULTICHOICE(MultichoiceList_BattleMode), - [MULTI_UNUSED_19] = MULTICHOICE(MultichoiceList_Exit), - [MULTI_YESNOINFO_2] = MULTICHOICE(MultichoiceList_YesNoInfo2), - [MULTI_UNUSED_21] = MULTICHOICE(MultichoiceList_Exit), - [MULTI_UNUSED_22] = MULTICHOICE(MultichoiceList_Exit), - [MULTI_CHALLENGEINFO] = MULTICHOICE(MultichoiceList_ChallengeInfo), - [MULTI_LEVEL_MODE] = MULTICHOICE(MultichoiceList_LevelMode), - [MULTI_MECHADOLL1_Q1] = MULTICHOICE(MultichoiceList_Mechadoll1_Q1), - [MULTI_MECHADOLL1_Q2] = MULTICHOICE(MultichoiceList_Mechadoll1_Q2), - [MULTI_MECHADOLL1_Q3] = MULTICHOICE(MultichoiceList_Mechadoll1_Q3), - [MULTI_MECHADOLL2_Q1] = MULTICHOICE(MultichoiceList_Mechadoll2_Q1), - [MULTI_MECHADOLL2_Q2] = MULTICHOICE(MultichoiceList_Mechadoll2_Q2), - [MULTI_MECHADOLL2_Q3] = MULTICHOICE(MultichoiceList_Mechadoll2_Q3), - [MULTI_MECHADOLL3_Q1] = MULTICHOICE(MultichoiceList_Mechadoll3_Q1), - [MULTI_MECHADOLL3_Q2] = MULTICHOICE(MultichoiceList_Mechadoll3_Q2), - [MULTI_MECHADOLL3_Q3] = MULTICHOICE(MultichoiceList_Mechadoll3_Q3), - [MULTI_MECHADOLL4_Q1] = MULTICHOICE(MultichoiceList_Mechadoll4_Q1), - [MULTI_MECHADOLL4_Q2] = MULTICHOICE(MultichoiceList_Mechadoll4_Q2), - [MULTI_MECHADOLL4_Q3] = MULTICHOICE(MultichoiceList_Mechadoll4_Q3), - [MULTI_MECHADOLL5_Q1] = MULTICHOICE(MultichoiceList_Mechadoll5_Q1), - [MULTI_MECHADOLL5_Q2] = MULTICHOICE(MultichoiceList_Mechadoll5_Q2), - [MULTI_MECHADOLL5_Q3] = MULTICHOICE(MultichoiceList_Mechadoll5_Q3), - [MULTI_UNUSED_40] = MULTICHOICE(MultichoiceList_Exit), - [MULTI_UNUSED_41] = MULTICHOICE(MultichoiceList_Exit), - [MULTI_VENDING_MACHINE] = MULTICHOICE(MultichoiceList_VendingMachine), - [MULTI_MACH_BIKE_INFO] = MULTICHOICE(MultichoiceList_MachBikeInfo), - [MULTI_ACRO_BIKE_INFO] = MULTICHOICE(MultichoiceList_AcroBikeInfo), - [MULTI_SATISFACTION] = MULTICHOICE(MultichoiceList_Satisfaction), - [MULTI_STERN_DEEPSEA] = MULTICHOICE(MultichoiceList_SternDeepSea), - [MULTI_UNUSED_ASH_VENDOR] = MULTICHOICE(MultichoiceList_UnusedAshVendor), - [MULTI_GAME_CORNER_DOLLS] = MULTICHOICE(MultichoiceList_GameCornerDolls), - [MULTI_GAME_CORNER_COINS] = MULTICHOICE(MultichoiceList_GameCornerCoins), - [MULTI_HOWS_FISHING] = MULTICHOICE(MultichoiceList_HowsFishing), - [MULTI_UNUSED_51] = MULTICHOICE(MultichoiceList_Exit), - [MULTI_SSTIDAL_SLATEPORT_1] = MULTICHOICE(MultichoiceList_SSTidalSlateport1), - [MULTI_SSTIDAL_BATTLE_FRONTIER] = MULTICHOICE(MultichoiceList_SSTidalBattleFrontier), - [MULTI_RIGHTLEFT] = MULTICHOICE(MultichoiceList_RightLeft), - [MULTI_GAME_CORNER_TMS] = MULTICHOICE(MultichoiceList_GameCornerTMs), - [MULTI_SSTIDAL_SLATEPORT_2] = MULTICHOICE(MultichoiceList_SSTidalSlateport2), - [MULTI_FLOORS] = MULTICHOICE(MultichoiceList_Floors), - [MULTI_SHARDS_R] = MULTICHOICE(MultichoiceList_ShardsR), - [MULTI_SHARDS_Y] = MULTICHOICE(MultichoiceList_ShardsY), - [MULTI_SHARDS_RY] = MULTICHOICE(MultichoiceList_ShardsRY), - [MULTI_SHARDS_B] = MULTICHOICE(MultichoiceList_ShardsB), - [MULTI_SHARDS_RB] = MULTICHOICE(MultichoiceList_ShardsRB), - [MULTI_SHARDS_YB] = MULTICHOICE(MultichoiceList_ShardsYB), - [MULTI_SHARDS_RYB] = MULTICHOICE(MultichoiceList_ShardsRYB), - [MULTI_SHARDS_G] = MULTICHOICE(MultichoiceList_ShardsG), - [MULTI_SHARDS_RG] = MULTICHOICE(MultichoiceList_ShardsRG), - [MULTI_SHARDS_YG] = MULTICHOICE(MultichoiceList_ShardsYG), - [MULTI_SHARDS_RYG] = MULTICHOICE(MultichoiceList_ShardsRYG), - [MULTI_SHARDS_BG] = MULTICHOICE(MultichoiceList_ShardsBG), - [MULTI_SHARDS_RBG] = MULTICHOICE(MultichoiceList_ShardsRBG), - [MULTI_SHARDS_YBG] = MULTICHOICE(MultichoiceList_ShardsYBG), - [MULTI_SHARDS_RYBG] = MULTICHOICE(MultichoiceList_ShardsRYBG), - [MULTI_TOURNEY_WITH_RECORD] = MULTICHOICE(MultichoiceList_TourneyWithRecord), - [MULTI_LINK_SERVICES_A1] = MULTICHOICE(MultichoiceList_LinkServicesA), - [MULTI_LINK_SERVICES_A2] = MULTICHOICE(MultichoiceList_LinkServicesA), - [MULTI_LINK_SERVICES_B1] = MULTICHOICE(MultichoiceList_LinkServicesB), - [MULTI_LINK_SERVICES_B2] = MULTICHOICE(MultichoiceList_LinkServicesB), - [MULTI_LINK_SERVICES_C] = MULTICHOICE(MultichoiceList_LinkServicesC), - [MULTI_LINK_SERVICES_D] = MULTICHOICE(MultichoiceList_LinkServicesD), - [MULTI_WIRELESS_MINIGAME] = MULTICHOICE(MultichoiceList_WirelessMinigame), - [MULTI_LINK_LEADER] = MULTICHOICE(MultichoiceList_LinkLeader), - [MULTI_CONTEST_RANK] = MULTICHOICE(MultichoiceList_ContestRank), - [MULTI_FRONTIER_ITEM_CHOOSE] = MULTICHOICE(MultichoiceList_FrontierItemChoose), - [MULTI_LINK_CONTEST_INFO] = MULTICHOICE(MultichoiceList_LinkContestInfo), - [MULTI_LINK_CONTEST_MODE] = MULTICHOICE(MultichoiceList_LinkContestMode), - [MULTI_FORCED_START_MENU] = MULTICHOICE(MultichoiceList_ForcedStartMenu), - [MULTI_FRONTIER_GAMBLER_BET] = MULTICHOICE(MultichoiceList_FrontierGamblerBet), - [MULTI_TENT] = MULTICHOICE(MultichoiceList_Tent), - [MULTI_UNUSED_SSTIDAL_1] = MULTICHOICE(MultichoiceList_UnusedSSTidal1), - [MULTI_UNUSED_SSTIDAL_2] = MULTICHOICE(MultichoiceList_UnusedSSTidal2), - [MULTI_UNUSED_SSTIDAL_3] = MULTICHOICE(MultichoiceList_UnusedSSTidal3), - [MULTI_UNUSED_SSTIDAL_4] = MULTICHOICE(MultichoiceList_UnusedSSTidal4), - [MULTI_FOSSIL] = MULTICHOICE(MultichoiceList_Fossil), - [MULTI_YESNO] = MULTICHOICE(MultichoiceList_YesNo), - [MULTI_FRONTIER_RULES] = MULTICHOICE(MultichoiceList_FrontierRules), - [MULTI_BATTLE_ARENA_RULES] = MULTICHOICE(MultichoiceList_BattleArenaRules), - [MULTI_BATTLE_TOWER_RULES] = MULTICHOICE(MultichoiceList_BattleTowerRules), - [MULTI_BATTLE_DOME_RULES] = MULTICHOICE(MultichoiceList_BattleDomeRules), - [MULTI_BATTLE_FACTORY_RULES] = MULTICHOICE(MultichoiceList_BattleFactoryRules), - [MULTI_BATTLE_PALACE_RULES] = MULTICHOICE(MultichoiceList_BattlePalaceRules), - [MULTI_BATTLE_PYRAMID_RULES] = MULTICHOICE(MultichoiceList_BattlePyramidRules), - [MULTI_BATTLE_PIKE_RULES] = MULTICHOICE(MultichoiceList_BattlePikeRules), - [MULTI_GO_ON_RECORD_REST_RETIRE] = MULTICHOICE(MultichoiceList_GoOnRecordRestRetire), - [MULTI_GO_ON_REST_RETIRE] = MULTICHOICE(MultichoiceList_GoOnRestRetire), - [MULTI_GO_ON_RECORD_RETIRE] = MULTICHOICE(MultichoiceList_GoOnRecordRetire), - [MULTI_GO_ON_RETIRE] = MULTICHOICE(MultichoiceList_GoOnRetire), - [MULTI_TOURNEY_NO_RECORD] = MULTICHOICE(MultichoiceList_TourneyNoRecord), - [MULTI_TV_LATI] = MULTICHOICE(MultichoiceList_TVLati), - [MULTI_BATTLE_TOWER_FEELINGS] = MULTICHOICE(MultichoiceList_BattleTowerFeelings), - [MULTI_WHERES_RAYQUAZA] = MULTICHOICE(MultichoiceList_WheresRayquaza), - [MULTI_SLATEPORT_TENT_RULES] = MULTICHOICE(MultichoiceList_SlateportTentRules), - [MULTI_FALLARBOR_TENT_RULES] = MULTICHOICE(MultichoiceList_FallarborTentRules), - [MULTI_TAG_MATCH_TYPE] = MULTICHOICE(MultichoiceList_TagMatchType), + [MULTI_BRINEY_ON_DEWFORD] = MULTICHOICE(MultichoiceList_BrineyOnDewford), + [MULTI_PC] = MULTICHOICE(MultichoiceList_Exit), + [MULTI_ENTERINFO] = MULTICHOICE(MultichoiceList_EnterInfo), + [MULTI_CONTEST_INFO] = MULTICHOICE(MultichoiceList_ContestInfo), + [MULTI_CONTEST_TYPE] = MULTICHOICE(MultichoiceList_ContestType), + [MULTI_DECOR_NOREGISTRY] = MULTICHOICE(MultichoiceList_DecorNoRegistry), + [MULTI_DECOR_REGISTRY] = MULTICHOICE(MultichoiceList_DecorRegistry), + [MULTI_REGISTER_MENU] = MULTICHOICE(MultichoiceList_RegisterMenu), + [MULTI_SSTIDAL_LILYCOVE] = MULTICHOICE(MultichoiceList_Exit), + [MULTI_UNUSED_9] = MULTICHOICE(MultichoiceList_Exit), + [MULTI_UNUSED_10] = MULTICHOICE(MultichoiceList_Exit), + [MULTI_FRONTIER_PASS_INFO] = MULTICHOICE(MultichoiceList_FrontierPassInfo), + [MULTI_BIKE] = MULTICHOICE(MultichoiceList_Bike), + [MULTI_STATUS_INFO] = MULTICHOICE(MultichoiceList_StatusInfo), + [MULTI_BRINEY_OFF_DEWFORD] = MULTICHOICE(MultichoiceList_BrineyOffDewford), + [MULTI_UNUSED_15] = MULTICHOICE(MultichoiceList_Exit), + [MULTI_VIEWED_PAINTINGS] = MULTICHOICE(MultichoiceList_ViewedPaintings), + [MULTI_YESNOINFO] = MULTICHOICE(MultichoiceList_YesNoInfo), + [MULTI_BATTLE_MODE] = MULTICHOICE(MultichoiceList_BattleMode), + [MULTI_UNUSED_19] = MULTICHOICE(MultichoiceList_Exit), + [MULTI_YESNOINFO_2] = MULTICHOICE(MultichoiceList_YesNoInfo2), + [MULTI_UNUSED_21] = MULTICHOICE(MultichoiceList_Exit), + [MULTI_UNUSED_22] = MULTICHOICE(MultichoiceList_Exit), + [MULTI_CHALLENGEINFO] = MULTICHOICE(MultichoiceList_ChallengeInfo), + [MULTI_LEVEL_MODE] = MULTICHOICE(MultichoiceList_LevelMode), + [MULTI_MECHADOLL1_Q1] = MULTICHOICE(MultichoiceList_Mechadoll1_Q1), + [MULTI_MECHADOLL1_Q2] = MULTICHOICE(MultichoiceList_Mechadoll1_Q2), + [MULTI_MECHADOLL1_Q3] = MULTICHOICE(MultichoiceList_Mechadoll1_Q3), + [MULTI_MECHADOLL2_Q1] = MULTICHOICE(MultichoiceList_Mechadoll2_Q1), + [MULTI_MECHADOLL2_Q2] = MULTICHOICE(MultichoiceList_Mechadoll2_Q2), + [MULTI_MECHADOLL2_Q3] = MULTICHOICE(MultichoiceList_Mechadoll2_Q3), + [MULTI_MECHADOLL3_Q1] = MULTICHOICE(MultichoiceList_Mechadoll3_Q1), + [MULTI_MECHADOLL3_Q2] = MULTICHOICE(MultichoiceList_Mechadoll3_Q2), + [MULTI_MECHADOLL3_Q3] = MULTICHOICE(MultichoiceList_Mechadoll3_Q3), + [MULTI_MECHADOLL4_Q1] = MULTICHOICE(MultichoiceList_Mechadoll4_Q1), + [MULTI_MECHADOLL4_Q2] = MULTICHOICE(MultichoiceList_Mechadoll4_Q2), + [MULTI_MECHADOLL4_Q3] = MULTICHOICE(MultichoiceList_Mechadoll4_Q3), + [MULTI_MECHADOLL5_Q1] = MULTICHOICE(MultichoiceList_Mechadoll5_Q1), + [MULTI_MECHADOLL5_Q2] = MULTICHOICE(MultichoiceList_Mechadoll5_Q2), + [MULTI_MECHADOLL5_Q3] = MULTICHOICE(MultichoiceList_Mechadoll5_Q3), + [MULTI_UNUSED_40] = MULTICHOICE(MultichoiceList_Exit), + [MULTI_UNUSED_41] = MULTICHOICE(MultichoiceList_Exit), + [MULTI_VENDING_MACHINE] = MULTICHOICE(MultichoiceList_VendingMachine), + [MULTI_MACH_BIKE_INFO] = MULTICHOICE(MultichoiceList_MachBikeInfo), + [MULTI_ACRO_BIKE_INFO] = MULTICHOICE(MultichoiceList_AcroBikeInfo), + [MULTI_SATISFACTION] = MULTICHOICE(MultichoiceList_Satisfaction), + [MULTI_STERN_DEEPSEA] = MULTICHOICE(MultichoiceList_SternDeepSea), + [MULTI_UNUSED_ASH_VENDOR] = MULTICHOICE(MultichoiceList_UnusedAshVendor), + [MULTI_GAME_CORNER_DOLLS] = MULTICHOICE(MultichoiceList_GameCornerDolls), + [MULTI_GAME_CORNER_COINS] = MULTICHOICE(MultichoiceList_GameCornerCoins), + [MULTI_HOWS_FISHING] = MULTICHOICE(MultichoiceList_HowsFishing), + [MULTI_UNUSED_51] = MULTICHOICE(MultichoiceList_Exit), + [MULTI_SSTIDAL_SLATEPORT_WITH_BF] = MULTICHOICE(MultichoiceList_SSTidalSlateportWithBF), + [MULTI_SSTIDAL_BATTLE_FRONTIER] = MULTICHOICE(MultichoiceList_SSTidalBattleFrontier), + [MULTI_RIGHTLEFT] = MULTICHOICE(MultichoiceList_RightLeft), + [MULTI_GAME_CORNER_TMS] = MULTICHOICE(MultichoiceList_GameCornerTMs), + [MULTI_SSTIDAL_SLATEPORT_NO_BF] = MULTICHOICE(MultichoiceList_SSTidalSlateportNoBF), + [MULTI_FLOORS] = MULTICHOICE(MultichoiceList_Floors), + [MULTI_SHARDS_R] = MULTICHOICE(MultichoiceList_ShardsR), + [MULTI_SHARDS_Y] = MULTICHOICE(MultichoiceList_ShardsY), + [MULTI_SHARDS_RY] = MULTICHOICE(MultichoiceList_ShardsRY), + [MULTI_SHARDS_B] = MULTICHOICE(MultichoiceList_ShardsB), + [MULTI_SHARDS_RB] = MULTICHOICE(MultichoiceList_ShardsRB), + [MULTI_SHARDS_YB] = MULTICHOICE(MultichoiceList_ShardsYB), + [MULTI_SHARDS_RYB] = MULTICHOICE(MultichoiceList_ShardsRYB), + [MULTI_SHARDS_G] = MULTICHOICE(MultichoiceList_ShardsG), + [MULTI_SHARDS_RG] = MULTICHOICE(MultichoiceList_ShardsRG), + [MULTI_SHARDS_YG] = MULTICHOICE(MultichoiceList_ShardsYG), + [MULTI_SHARDS_RYG] = MULTICHOICE(MultichoiceList_ShardsRYG), + [MULTI_SHARDS_BG] = MULTICHOICE(MultichoiceList_ShardsBG), + [MULTI_SHARDS_RBG] = MULTICHOICE(MultichoiceList_ShardsRBG), + [MULTI_SHARDS_YBG] = MULTICHOICE(MultichoiceList_ShardsYBG), + [MULTI_SHARDS_RYBG] = MULTICHOICE(MultichoiceList_ShardsRYBG), + [MULTI_TOURNEY_WITH_RECORD] = MULTICHOICE(MultichoiceList_TourneyWithRecord), + [MULTI_LINK_SERVICES_A1] = MULTICHOICE(MultichoiceList_LinkServicesA), + [MULTI_LINK_SERVICES_A2] = MULTICHOICE(MultichoiceList_LinkServicesA), + [MULTI_LINK_SERVICES_B1] = MULTICHOICE(MultichoiceList_LinkServicesB), + [MULTI_LINK_SERVICES_B2] = MULTICHOICE(MultichoiceList_LinkServicesB), + [MULTI_LINK_SERVICES_C] = MULTICHOICE(MultichoiceList_LinkServicesC), + [MULTI_LINK_SERVICES_D] = MULTICHOICE(MultichoiceList_LinkServicesD), + [MULTI_WIRELESS_MINIGAME] = MULTICHOICE(MultichoiceList_WirelessMinigame), + [MULTI_LINK_LEADER] = MULTICHOICE(MultichoiceList_LinkLeader), + [MULTI_CONTEST_RANK] = MULTICHOICE(MultichoiceList_ContestRank), + [MULTI_FRONTIER_ITEM_CHOOSE] = MULTICHOICE(MultichoiceList_FrontierItemChoose), + [MULTI_LINK_CONTEST_INFO] = MULTICHOICE(MultichoiceList_LinkContestInfo), + [MULTI_LINK_CONTEST_MODE] = MULTICHOICE(MultichoiceList_LinkContestMode), + [MULTI_FORCED_START_MENU] = MULTICHOICE(MultichoiceList_ForcedStartMenu), + [MULTI_FRONTIER_GAMBLER_BET] = MULTICHOICE(MultichoiceList_FrontierGamblerBet), + [MULTI_TENT] = MULTICHOICE(MultichoiceList_Tent), + [MULTI_UNUSED_SSTIDAL_1] = MULTICHOICE(MultichoiceList_UnusedSSTidal1), + [MULTI_UNUSED_SSTIDAL_2] = MULTICHOICE(MultichoiceList_UnusedSSTidal2), + [MULTI_UNUSED_SSTIDAL_3] = MULTICHOICE(MultichoiceList_UnusedSSTidal3), + [MULTI_UNUSED_SSTIDAL_4] = MULTICHOICE(MultichoiceList_UnusedSSTidal4), + [MULTI_FOSSIL] = MULTICHOICE(MultichoiceList_Fossil), + [MULTI_YESNO] = MULTICHOICE(MultichoiceList_YesNo), + [MULTI_FRONTIER_RULES] = MULTICHOICE(MultichoiceList_FrontierRules), + [MULTI_BATTLE_ARENA_RULES] = MULTICHOICE(MultichoiceList_BattleArenaRules), + [MULTI_BATTLE_TOWER_RULES] = MULTICHOICE(MultichoiceList_BattleTowerRules), + [MULTI_BATTLE_DOME_RULES] = MULTICHOICE(MultichoiceList_BattleDomeRules), + [MULTI_BATTLE_FACTORY_RULES] = MULTICHOICE(MultichoiceList_BattleFactoryRules), + [MULTI_BATTLE_PALACE_RULES] = MULTICHOICE(MultichoiceList_BattlePalaceRules), + [MULTI_BATTLE_PYRAMID_RULES] = MULTICHOICE(MultichoiceList_BattlePyramidRules), + [MULTI_BATTLE_PIKE_RULES] = MULTICHOICE(MultichoiceList_BattlePikeRules), + [MULTI_GO_ON_RECORD_REST_RETIRE] = MULTICHOICE(MultichoiceList_GoOnRecordRestRetire), + [MULTI_GO_ON_REST_RETIRE] = MULTICHOICE(MultichoiceList_GoOnRestRetire), + [MULTI_GO_ON_RECORD_RETIRE] = MULTICHOICE(MultichoiceList_GoOnRecordRetire), + [MULTI_GO_ON_RETIRE] = MULTICHOICE(MultichoiceList_GoOnRetire), + [MULTI_TOURNEY_NO_RECORD] = MULTICHOICE(MultichoiceList_TourneyNoRecord), + [MULTI_TV_LATI] = MULTICHOICE(MultichoiceList_TVLati), + [MULTI_BATTLE_TOWER_FEELINGS] = MULTICHOICE(MultichoiceList_BattleTowerFeelings), + [MULTI_WHERES_RAYQUAZA] = MULTICHOICE(MultichoiceList_WheresRayquaza), + [MULTI_SLATEPORT_TENT_RULES] = MULTICHOICE(MultichoiceList_SlateportTentRules), + [MULTI_FALLARBOR_TENT_RULES] = MULTICHOICE(MultichoiceList_FallarborTentRules), + [MULTI_TAG_MATCH_TYPE] = MULTICHOICE(MultichoiceList_TagMatchType), }; const u8 *const gStdStrings[] = @@ -952,17 +952,18 @@ const u8 *const sPCNameStrings[] = gText_LogOff, }; -const u8 *const gLilycoveSSTidalDestinations[] = +const u8 *const gLilycoveSSTidalDestinations[SSTIDAL_SELECTION_COUNT] = { - gText_SlateportCity, - gText_BattleFrontier, - gText_SouthernIsland, - gText_NavelRock, - gText_BirthIsland, - gText_FarawayIsland, - gText_Exit, + [SSTIDAL_SELECTION_SLATEPORT] = gText_SlateportCity, + [SSTIDAL_SELECTION_BATTLE_FRONTIER] = gText_BattleFrontier, + [SSTIDAL_SELECTION_SOUTHERN_ISLAND] = gText_SouthernIsland, + [SSTIDAL_SELECTION_NAVEL_ROCK] = gText_NavelRock, + [SSTIDAL_SELECTION_BIRTH_ISLAND] = gText_BirthIsland, + [SSTIDAL_SELECTION_FARAWAY_ISLAND] = gText_FarawayIsland, + [SSTIDAL_SELECTION_EXIT] = gText_Exit, }; +// TODO: name const u8 *const gUnknown_0858BB9C[] = { CableClub_Text_TradeUsingLinkCable, diff --git a/src/field_specials.c b/src/field_specials.c index d1fb49610..f20e38c8b 100644 --- a/src/field_specials.c +++ b/src/field_specials.c @@ -83,7 +83,6 @@ static EWRAM_DATA u8 sPCBoxToSendMon = 0; static EWRAM_DATA u32 sUnknown_0203AB70 = 0; struct ListMenuTemplate gScrollableMultichoice_ListMenuTemplate; -static const u8 *const sScrollableMultichoiceOptions[][MAX_SCROLL_MULTI_LENGTH]; extern const u16 gEventObjectPalette8[]; extern const u16 gEventObjectPalette17[]; diff --git a/src/script_menu.c b/src/script_menu.c index 3a01bcb66..cc4d45df0 100644 --- a/src/script_menu.c +++ b/src/script_menu.c @@ -20,24 +20,23 @@ #include "data/script_menu.h" -EWRAM_DATA u8 gProcessInputDelay = 0; +static EWRAM_DATA u8 sProcessInputDelay = 0; -static u8 sLilycoveSSTidalSelections[ARRAY_COUNT(gLilycoveSSTidalDestinations)]; -//static u32 filler_0300112c; +static u8 sLilycoveSSTidalSelections[SSTIDAL_SELECTION_COUNT]; -static void Task_HandleMultichoiceInput(u8); -static void Task_HandleYesNoInput(u8); -static void Task_HandleMultichoiceGridInput(u8); -static void DrawMultichoiceMenu(u8, u8, u8, bool8, u8); -static void sub_80E1FBC(u8, u8, u8, u8); -static void DrawLinkServicesMultichoiceMenu(u8); +static void Task_HandleMultichoiceInput(u8 taskId); +static void Task_HandleYesNoInput(u8 taskId); +static void Task_HandleMultichoiceGridInput(u8 taskId); +static void DrawMultichoiceMenu(u8 left, u8 top, u8 multichoiceId, bool8 ignoreBPress, u8 cursorPos); +static void InitMultichoiceCheckWrap(bool8 ignoreBPress, u8 count, u8 windowId, u8 multichoiceId); +static void DrawLinkServicesMultichoiceMenu(u8 multichoiceId); static void CreatePCMultichoice(void); static void CreateLilycoveSSTidalMultichoice(void); static bool8 IsPicboxClosed(void); static void CreateStartMenuForPokenavTutorial(void); -static void sub_80E2CC4(u8, u8, u8, u8); +static void InitMultichoiceNoWrap(bool8 ignoreBPress, u8 unusedCount, u8 windowId, u8 multichoiceId); -bool8 ScriptMenu_Multichoice(u8 left, u8 top, u8 multichoiceId, u8 ignoreBPress) +bool8 ScriptMenu_Multichoice(u8 left, u8 top, u8 multichoiceId, bool8 ignoreBPress) { if (FuncIsActiveTask(Task_HandleMultichoiceInput) == TRUE) { @@ -66,7 +65,7 @@ bool8 ScriptMenu_MultichoiceWithDefault(u8 left, u8 top, u8 multichoiceId, bool8 } // Unused -static u16 sub_80E1EB8(const u8 *str) +static u16 GetLengthWithExpandedPlayerName(const u8 *str) { u16 length = 0; @@ -75,7 +74,7 @@ static u16 sub_80E1EB8(const u8 *str) if (*str == PLACEHOLDER_BEGIN) { str++; - if (*str == 1) + if (*str == 1) // 01 is the second byte of the {PLAYER} placeholder { length += StringLength(gSaveBlock2Ptr->playerName); str++; @@ -91,7 +90,7 @@ static u16 sub_80E1EB8(const u8 *str) return length; } -static void DrawMultichoiceMenu(u8 left, u8 top, u8 multichoiceId, u8 ignoreBPress, u8 cursorPos) +static void DrawMultichoiceMenu(u8 left, u8 top, u8 multichoiceId, bool8 ignoreBPress, u8 cursorPos) { int i; u8 windowId; @@ -112,7 +111,7 @@ static void DrawMultichoiceMenu(u8 left, u8 top, u8 multichoiceId, u8 ignoreBPre PrintMenuTable(windowId, count, actions); InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, count, cursorPos); schedule_bg_copy_tilemap_to_vram(0); - sub_80E1FBC(ignoreBPress, count, windowId, multichoiceId); + InitMultichoiceCheckWrap(ignoreBPress, count, windowId, multichoiceId); } #define tLeft data[0] @@ -124,17 +123,17 @@ static void DrawMultichoiceMenu(u8 left, u8 top, u8 multichoiceId, u8 ignoreBPre #define tWindowId data[6] #define tMultichoiceId data[7] -static void sub_80E1FBC(u8 ignoreBPress, u8 count, u8 windowId, u8 multichoiceId) +static void InitMultichoiceCheckWrap(bool8 ignoreBPress, u8 count, u8 windowId, u8 multichoiceId) { u8 i; u8 taskId; - gProcessInputDelay = 2; + sProcessInputDelay = 2; for (i = 0; i < ARRAY_COUNT(gLinkServicesMultichoiceIds); i++) { if (gLinkServicesMultichoiceIds[i] == multichoiceId) { - gProcessInputDelay = 12; + sProcessInputDelay = 12; } } @@ -160,9 +159,9 @@ static void Task_HandleMultichoiceInput(u8 taskId) if (!gPaletteFade.active) { - if (gProcessInputDelay) + if (sProcessInputDelay) { - gProcessInputDelay--; + sProcessInputDelay--; } else { @@ -249,7 +248,7 @@ static void Task_HandleYesNoInput(u8 taskId) EnableBothScriptContexts(); } -bool8 ScriptMenu_MultichoiceGrid(u8 left, u8 top, u8 multichoiceId, u8 ignoreBPress, u8 columnCount) +bool8 ScriptMenu_MultichoiceGrid(u8 left, u8 top, u8 multichoiceId, bool8 ignoreBPress, u8 columnCount) { if (FuncIsActiveTask(Task_HandleMultichoiceGridInput) == TRUE) { @@ -348,7 +347,8 @@ static void CreatePCMultichoice(void) width = ConvertPixelWidthToTileWidth(pixelWidth); - if (FlagGet(FLAG_SYS_GAME_CLEAR)) // player has cleared game? + // Include Hall of Fame option if player is champion + if (FlagGet(FLAG_SYS_GAME_CLEAR)) { numChoices = 4; windowId = CreateWindowFromRect(0, 0, width, 8); @@ -364,7 +364,8 @@ static void CreatePCMultichoice(void) AddTextPrinterParameterized(windowId, 1, gText_LogOff, y, 33, TEXT_SPEED_FF, NULL); } - if (FlagGet(FLAG_SYS_PC_LANETTE)) // player met lanette? + // Change PC name if player has met Lanette + if (FlagGet(FLAG_SYS_PC_LANETTE)) AddTextPrinterParameterized(windowId, 1, gText_LanettesPC, y, 1, TEXT_SPEED_FF, NULL); else AddTextPrinterParameterized(windowId, 1, gText_SomeonesPC, y, 1, TEXT_SPEED_FF, NULL); @@ -373,7 +374,7 @@ static void CreatePCMultichoice(void) PrintPlayerNameOnWindow(windowId, gStringVar4, y, 17); InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, numChoices, 0); CopyWindowToVram(windowId, 3); - sub_80E1FBC(FALSE, numChoices, windowId, MULTI_PC); + InitMultichoiceCheckWrap(FALSE, numChoices, windowId, MULTI_PC); } void ScriptMenu_DisplayPCStartupPrompt(void) @@ -408,7 +409,7 @@ static void CreateLilycoveSSTidalMultichoice(void) u8 i; u32 j; - for (i = 0; i < ARRAY_COUNT(sLilycoveSSTidalSelections); i++) + for (i = 0; i < SSTIDAL_SELECTION_COUNT; i++) { sLilycoveSSTidalSelections[i] = 0xFF; } @@ -509,7 +510,7 @@ static void CreateLilycoveSSTidalMultichoice(void) { pixelWidth = 0; - for (j = 0; j < ARRAY_COUNT(gLilycoveSSTidalDestinations); j++) + for (j = 0; j < SSTIDAL_SELECTION_COUNT; j++) { u8 selection = sLilycoveSSTidalSelections[j]; if (selection != 0xFF) @@ -522,7 +523,7 @@ static void CreateLilycoveSSTidalMultichoice(void) windowId = CreateWindowFromRect(MAX_MULTICHOICE_WIDTH - width, (6 - count) * 2, width, count * 2); SetStandardWindowBorderStyle(windowId, 0); - for (selectionCount = 0, i = 0; i < ARRAY_COUNT(gLilycoveSSTidalDestinations); i++) + for (selectionCount = 0, i = 0; i < SSTIDAL_SELECTION_COUNT; i++) { if (sLilycoveSSTidalSelections[i] != 0xFF) { @@ -533,7 +534,7 @@ static void CreateLilycoveSSTidalMultichoice(void) InitMenuInUpperLeftCornerPlaySoundWhenAPressed(windowId, count, count - 1); CopyWindowToVram(windowId, 3); - sub_80E1FBC(FALSE, count, windowId, MULTI_SSTIDAL_LILYCOVE); + InitMultichoiceCheckWrap(FALSE, count, windowId, MULTI_SSTIDAL_LILYCOVE); } } @@ -695,17 +696,17 @@ static void CreateStartMenuForPokenavTutorial(void) AddTextPrinterParameterized(windowId, 1, gText_MenuOptionSave, 8, 89, TEXT_SPEED_FF, NULL); AddTextPrinterParameterized(windowId, 1, gText_MenuOptionOption, 8, 105, TEXT_SPEED_FF, NULL); AddTextPrinterParameterized(windowId, 1, gText_MenuOptionExit, 8, 121, TEXT_SPEED_FF, NULL); - sub_81983AC(windowId, 1, 0, 9, 16, 8, 0); - sub_80E2CC4(FALSE, 8, windowId, MULTI_FORCED_START_MENU); + sub_81983AC(windowId, 1, 0, 9, 16, ARRAY_COUNT(MultichoiceList_ForcedStartMenu), 0); + InitMultichoiceNoWrap(FALSE, ARRAY_COUNT(MultichoiceList_ForcedStartMenu), windowId, MULTI_FORCED_START_MENU); CopyWindowToVram(windowId, 3); } #define tWindowId data[6] -static void sub_80E2CC4(bool8 ignoreBPress, u8 unused, u8 windowId, u8 multichoiceId) +static void InitMultichoiceNoWrap(bool8 ignoreBPress, u8 unusedCount, u8 windowId, u8 multichoiceId) { u8 taskId; - gProcessInputDelay = 2; + sProcessInputDelay = 2; taskId = CreateTask(Task_HandleMultichoiceInput, 80); gTasks[taskId].tIgnoreBPress = ignoreBPress; gTasks[taskId].tDoWrap = 0; @@ -729,14 +730,14 @@ static int DisplayTextAndGetWidthInternal(const u8 *str) return GetStringWidth(1, temp, 0); } -int DisplayTextAndGetWidth(const u8 *str, int prevMaxWidth) +int DisplayTextAndGetWidth(const u8 *str, int prevWidth) { - int len = DisplayTextAndGetWidthInternal(str); - if (len < prevMaxWidth) + int width = DisplayTextAndGetWidthInternal(str); + if (width < prevWidth) { - len = prevMaxWidth; + width = prevWidth; } - return len; + return width; } int ConvertPixelWidthToTileWidth(int width) |