forked from mirrors/0ad
Remove Engine.SwitchGuiPage from main menu
This commit is contained in:
@@ -14,24 +14,29 @@ export const mainMenuItems = [
|
|||||||
{
|
{
|
||||||
"caption": translate("Tutorial"),
|
"caption": translate("Tutorial"),
|
||||||
"tooltip": translate("Start the introductory tutorial."),
|
"tooltip": translate("Start the introductory tutorial."),
|
||||||
"onPress": () =>
|
"onPress": closePageCallback =>
|
||||||
{
|
{
|
||||||
Engine.SwitchGuiPage("page_autostart.xml", {
|
closePageCallback({ [Engine.openRequest]: {
|
||||||
"attribs": {
|
"page": "page_autostart.xml",
|
||||||
"mapType": "scenario",
|
"argument": {
|
||||||
"map": "maps/tutorials/introductory_tutorial",
|
"attribs": {
|
||||||
"settings": {
|
"mapType": "scenario",
|
||||||
"CheatsEnabled": true
|
"map": "maps/tutorials/introductory_tutorial",
|
||||||
|
"settings": {
|
||||||
|
"CheatsEnabled": true
|
||||||
|
},
|
||||||
},
|
},
|
||||||
},
|
"playerAssignments": {
|
||||||
"playerAssignments": {
|
"local": {
|
||||||
"local": {
|
"player": 1,
|
||||||
"player": 1,
|
"name": Engine.ConfigDB_GetValue("user",
|
||||||
"name": Engine.ConfigDB_GetValue("user", "playername.singleplayer") || Engine.GetSystemUsername()
|
"playername.singleplayer") ||
|
||||||
}
|
Engine.GetSystemUsername()
|
||||||
},
|
}
|
||||||
"storeReplay": true
|
},
|
||||||
});
|
"storeReplay": true
|
||||||
|
}
|
||||||
|
} });
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -80,11 +85,13 @@ export const mainMenuItems = [
|
|||||||
{
|
{
|
||||||
"caption": translate("Continue Campaign"),
|
"caption": translate("Continue Campaign"),
|
||||||
"tooltip": translate("Relive history through historical military campaigns."),
|
"tooltip": translate("Relive history through historical military campaigns."),
|
||||||
"onPress": () =>
|
"onPress": closePageCallback =>
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
Engine.SwitchGuiPage(CampaignRun.getCurrentRun().getMenuPath());
|
closePageCallback({ [Engine.openRequest]: {
|
||||||
|
"page": CampaignRun.getCurrentRun().getMenuPath()
|
||||||
|
} });
|
||||||
}
|
}
|
||||||
catch(err)
|
catch(err)
|
||||||
{
|
{
|
||||||
@@ -101,15 +108,17 @@ export const mainMenuItems = [
|
|||||||
{
|
{
|
||||||
"caption": translate("Matches"),
|
"caption": translate("Matches"),
|
||||||
"tooltip": translate("Start a new single-player game."),
|
"tooltip": translate("Start a new single-player game."),
|
||||||
"onPress": () =>
|
"onPress": closePageCallback =>
|
||||||
{
|
{
|
||||||
Engine.SwitchGuiPage("page_gamesetup.xml");
|
closePageCallback({ [Engine.openRequest]: {
|
||||||
|
"page": "page_gamesetup.xml"
|
||||||
|
} });
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"caption": translate("Load Game"),
|
"caption": translate("Load Game"),
|
||||||
"tooltip": translate("Load a saved game."),
|
"tooltip": translate("Load a saved game."),
|
||||||
"onPress": async() =>
|
"onPress": async(closePageCallback) =>
|
||||||
{
|
{
|
||||||
const gameId = await Engine.OpenChildPage("page_loadgame.xml");
|
const gameId = await Engine.OpenChildPage("page_loadgame.xml");
|
||||||
|
|
||||||
@@ -123,28 +132,33 @@ export const mainMenuItems = [
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
Engine.SwitchGuiPage("page_loading.xml", {
|
closePageCallback({ [Engine.openRequest]: {
|
||||||
"attribs": metadata.initAttributes,
|
"page": "page_loading.xml",
|
||||||
"playerAssignments": {
|
"argument": {
|
||||||
"local": {
|
"attribs": metadata.initAttributes,
|
||||||
"name": metadata.initAttributes.settings.
|
"playerAssignments": {
|
||||||
PlayerData[metadata.playerID]?.Name ??
|
"local": {
|
||||||
singleplayerName(),
|
"name": metadata.initAttributes.settings.
|
||||||
"player": metadata.playerID
|
PlayerData[metadata.playerID]?.Name ??
|
||||||
}
|
singleplayerName(),
|
||||||
},
|
"player": metadata.playerID
|
||||||
"savedGUIData": metadata.gui
|
}
|
||||||
});
|
},
|
||||||
|
"savedGUIData": metadata.gui
|
||||||
|
}
|
||||||
|
} });
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"caption": translate("Continue Campaign"),
|
"caption": translate("Continue Campaign"),
|
||||||
"tooltip": translate("Relive history through historical military campaigns."),
|
"tooltip": translate("Relive history through historical military campaigns."),
|
||||||
"onPress": () =>
|
"onPress": closePageCallback =>
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
Engine.SwitchGuiPage(CampaignRun.getCurrentRun().getMenuPath());
|
closePageCallback({ [Engine.openRequest]: {
|
||||||
|
"page": CampaignRun.getCurrentRun().getMenuPath()
|
||||||
|
} });
|
||||||
}
|
}
|
||||||
catch(err)
|
catch(err)
|
||||||
{
|
{
|
||||||
@@ -157,34 +171,42 @@ export const mainMenuItems = [
|
|||||||
{
|
{
|
||||||
"caption": translate("New Campaign"),
|
"caption": translate("New Campaign"),
|
||||||
"tooltip": translate("Relive history through historical military campaigns."),
|
"tooltip": translate("Relive history through historical military campaigns."),
|
||||||
"onPress": () =>
|
"onPress": closePageCallback =>
|
||||||
{
|
{
|
||||||
Engine.SwitchGuiPage("campaigns/setup/page.xml");
|
closePageCallback({ [Engine.openRequest]: {
|
||||||
|
"page": "campaigns/setup/page.xml"
|
||||||
|
} });
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"caption": translate("Load Campaign"),
|
"caption": translate("Load Campaign"),
|
||||||
"tooltip": translate("Relive history through historical military campaigns."),
|
"tooltip": translate("Relive history through historical military campaigns."),
|
||||||
"onPress": () =>
|
"onPress": closePageCallback =>
|
||||||
{
|
{
|
||||||
// Switch instead of push, otherwise the 'continue'
|
// Replace the main menu page instead of opening a child page, otherwise the
|
||||||
// button might remain enabled.
|
// "Continue Campaign" button could wrongly remain enabled when it's closed
|
||||||
|
// again.
|
||||||
// TODO: find a better solution.
|
// TODO: find a better solution.
|
||||||
Engine.SwitchGuiPage("campaigns/load_modal/page.xml");
|
closePageCallback({ [Engine.openRequest]: {
|
||||||
|
"page": "campaigns/load_modal/page.xml"
|
||||||
|
} });
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"caption": translate("Replays"),
|
"caption": translate("Replays"),
|
||||||
"tooltip": translate("Playback previous games."),
|
"tooltip": translate("Playback previous games."),
|
||||||
"onPress": () =>
|
"onPress": closePageCallback =>
|
||||||
{
|
{
|
||||||
Engine.SwitchGuiPage("page_replaymenu.xml", {
|
closePageCallback({ [Engine.openRequest]: {
|
||||||
"replaySelectionData": {
|
"page": "page_replaymenu.xml",
|
||||||
"filters": {
|
"argument": {
|
||||||
"singleplayer": "Single-player"
|
"replaySelectionData": {
|
||||||
|
"filters": {
|
||||||
|
"singleplayer": "Single-player"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
} });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -233,15 +255,18 @@ export const mainMenuItems = [
|
|||||||
{
|
{
|
||||||
"caption": translate("Replays"),
|
"caption": translate("Replays"),
|
||||||
"tooltip": translate("Playback previous games."),
|
"tooltip": translate("Playback previous games."),
|
||||||
"onPress": () =>
|
"onPress": closePageCallback =>
|
||||||
{
|
{
|
||||||
Engine.SwitchGuiPage("page_replaymenu.xml", {
|
closePageCallback({ [Engine.openRequest]: {
|
||||||
"replaySelectionData": {
|
"page": "page_replaymenu.xml",
|
||||||
"filters": {
|
"argument": {
|
||||||
"singleplayer": "Multiplayer"
|
"replaySelectionData": {
|
||||||
|
"filters": {
|
||||||
|
"singleplayer": "Multiplayer"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
} });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -277,17 +302,21 @@ export const mainMenuItems = [
|
|||||||
{
|
{
|
||||||
"caption": translate("Mod Selection"),
|
"caption": translate("Mod Selection"),
|
||||||
"tooltip": translate("Select and download mods for the game."),
|
"tooltip": translate("Select and download mods for the game."),
|
||||||
"onPress": () =>
|
"onPress": closePageCallback =>
|
||||||
{
|
{
|
||||||
Engine.SwitchGuiPage("page_modmod.xml");
|
closePageCallback({ [Engine.openRequest]: {
|
||||||
|
"page": "page_modmod.xml"
|
||||||
|
} });
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"caption": translate("Welcome Screen"),
|
"caption": translate("Welcome Screen"),
|
||||||
"tooltip": translate("Show the Welcome Screen again. Useful if you hid it by mistake."),
|
"tooltip": translate("Show the Welcome Screen again. Useful if you hid it by mistake."),
|
||||||
"onPress": () =>
|
"onPress": closePageCallback =>
|
||||||
{
|
{
|
||||||
Engine.OpenChildPage("page_splashscreen.xml");
|
closePageCallback({ [Engine.openRequest]: {
|
||||||
|
"page": "page_splashscreen.xml"
|
||||||
|
} });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
Reference in New Issue
Block a user