mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-07-14 16:14:38 +00:00
Ensures there's a regular fallback actionmap for toggling the game menu
This commit is contained in:
parent
7db28feb67
commit
8ce6fb96ad
2 changed files with 25 additions and 4 deletions
|
|
@ -88,12 +88,12 @@ function UI::initClient(%this)
|
||||||
|
|
||||||
function UI::onCreateClientConnection(%this)
|
function UI::onCreateClientConnection(%this)
|
||||||
{
|
{
|
||||||
GameMenuActionMap.push();
|
GameMenuToggleActionMap.push();
|
||||||
}
|
}
|
||||||
|
|
||||||
function UI::onDestroyClientConnection(%this)
|
function UI::onDestroyClientConnection(%this)
|
||||||
{
|
{
|
||||||
GameMenuActionMap.pop();
|
GameMenuToggleActionMap.pop();
|
||||||
}
|
}
|
||||||
|
|
||||||
function UI::registerGameMenus(%this, %menusArrayObj)
|
function UI::registerGameMenus(%this, %menusArrayObj)
|
||||||
|
|
|
||||||
|
|
@ -64,6 +64,15 @@ function GameMenu::onSleep(%this)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//This is just for general usage/fallback for ensuring we can get to the game menu
|
||||||
|
if(!isObject( GameMenuToggleActionMap ) )
|
||||||
|
{
|
||||||
|
new ActionMap(GameMenuToggleActionMap){};
|
||||||
|
|
||||||
|
GameMenuToggleActionMap.bindCmd( keyboard, Escape, "toggleGameMenu();", "" );
|
||||||
|
GameMenuToggleActionMap.bindCmd( gamepad, btn_start, "toggleGameMenu();", "" );
|
||||||
|
}
|
||||||
|
|
||||||
if(!isObject( GameMenuActionMap ) )
|
if(!isObject( GameMenuActionMap ) )
|
||||||
{
|
{
|
||||||
new ActionMap(GameMenuActionMap){};
|
new ActionMap(GameMenuActionMap){};
|
||||||
|
|
@ -78,9 +87,9 @@ if(!isObject( GameMenuActionMap ) )
|
||||||
GameMenuActionMap.bind( keyboard, Space, BaseUIActivateSelected );
|
GameMenuActionMap.bind( keyboard, Space, BaseUIActivateSelected );
|
||||||
GameMenuActionMap.bind( gamepad, btn_a, BaseUIActivateSelected );
|
GameMenuActionMap.bind( gamepad, btn_a, BaseUIActivateSelected );
|
||||||
|
|
||||||
GameMenuActionMap.bindCmd( keyboard, Escape, "Canvas.popDialog(GameMenu);", "" );
|
GameMenuActionMap.bindCmd( keyboard, Escape, "toggleGameMenu();", "" );
|
||||||
GameMenuActionMap.bindCmd( gamepad, btn_b, "Canvas.popDialog(GameMenu);", "" );
|
GameMenuActionMap.bindCmd( gamepad, btn_b, "Canvas.popDialog(GameMenu);", "" );
|
||||||
GameMenuActionMap.bindCmd( gamepad, btn_start, "Canvas.popDialog(GameMenu);", "" );
|
GameMenuActionMap.bindCmd( gamepad, btn_start, "toggleGameMenu();", "" );
|
||||||
|
|
||||||
GameMenuActionMap.bind( keyboard, q, GameMenuPrevMenu );
|
GameMenuActionMap.bind( keyboard, q, GameMenuPrevMenu );
|
||||||
GameMenuActionMap.bind( gamepad, btn_l, GameMenuPrevMenu );
|
GameMenuActionMap.bind( gamepad, btn_l, GameMenuPrevMenu );
|
||||||
|
|
@ -89,6 +98,18 @@ if(!isObject( GameMenuActionMap ) )
|
||||||
GameMenuActionMap.bind( gamepad, btn_r, GameMenuNextMenu );
|
GameMenuActionMap.bind( gamepad, btn_r, GameMenuNextMenu );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function toggleGameMenu()
|
||||||
|
{
|
||||||
|
if(GameMenu.isAwake() && GameMenu.isVisible())
|
||||||
|
{
|
||||||
|
Canvas.popDialog(GameMenu);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Canvas.pushDialog(GameMenu);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function GameMenu::openGameMenu(%this, %menuName)
|
function GameMenu::openGameMenu(%this, %menuName)
|
||||||
{
|
{
|
||||||
%menuIdx = %this.gameMenusArray.getIndexFromKey(%menuName);
|
%menuIdx = %this.gameMenusArray.getIndexFromKey(%menuName);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue