2019-08-29 05:22:33 +00:00
|
|
|
function PauseMenu::onWake(%this)
|
|
|
|
|
{
|
2020-10-25 19:40:32 +00:00
|
|
|
if($Server::ServerType $= "SinglePlayer")
|
|
|
|
|
{
|
|
|
|
|
$timescale = 0;
|
|
|
|
|
|
|
|
|
|
sfxSetChannelVolume( $SimAudioType, $pref::SFX::channelVolume[ 0 ] );
|
|
|
|
|
}
|
2020-07-23 05:22:15 +00:00
|
|
|
|
2022-06-21 05:25:03 +00:00
|
|
|
PauseButtonHolder.setActive();
|
|
|
|
|
PauseMenuInputHandler.setFirstResponder();
|
|
|
|
|
|
|
|
|
|
%this.resizePages = true;
|
2020-12-04 01:58:51 +00:00
|
|
|
|
2022-06-21 05:25:03 +00:00
|
|
|
%this.setRootPage(PauseMenuButtons);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function PauseMenuButtons::onOpen(%this)
|
|
|
|
|
{
|
2022-02-23 02:12:39 +00:00
|
|
|
PauseMenuList.clear();
|
2020-12-04 01:58:51 +00:00
|
|
|
|
|
|
|
|
if($Tools::loaded && EditorIsActive())
|
|
|
|
|
{
|
2022-02-23 02:12:39 +00:00
|
|
|
%this.addPauseMenuButton("Exit Editor", "fastLoadWorldEdit();");
|
2020-12-04 01:58:51 +00:00
|
|
|
}
|
|
|
|
|
|
2022-02-23 02:12:39 +00:00
|
|
|
%this.addPauseMenuButton("Options", "openPauseMenuOptions();");
|
|
|
|
|
%this.addPauseMenuButton("Exit to Menu", "pauseMenuExitToMenu();");
|
|
|
|
|
%this.addPauseMenuButton("Exit to Desktop", "pauseMenuExitToDesktop();");
|
|
|
|
|
|
|
|
|
|
PauseMenuList.setAsActiveMenuList();
|
2022-05-07 04:39:16 +00:00
|
|
|
|
2022-06-21 05:25:03 +00:00
|
|
|
$activeMenuButtonContainer-->button1.disable();
|
|
|
|
|
$activeMenuButtonContainer-->button2.disable();
|
|
|
|
|
$activeMenuButtonContainer-->button3.disable();
|
|
|
|
|
$activeMenuButtonContainer-->button4.set("btn_a", "", "OK", "PauseMenuList.activate();");
|
|
|
|
|
$activeMenuButtonContainer-->button5.set("btn_b", "Escape", "Back", "Canvas.popDialog();");
|
2019-08-29 05:22:33 +00:00
|
|
|
}
|
|
|
|
|
|
2022-06-21 05:25:03 +00:00
|
|
|
function PauseMenuButtons::addPauseMenuButton(%this, %buttonText, %buttonCallback)
|
|
|
|
|
{
|
|
|
|
|
%newButton = new GuiButtonCtrl() {
|
|
|
|
|
text = %buttonText;
|
|
|
|
|
groupNum = "-1";
|
|
|
|
|
buttonType = "PushButton";
|
|
|
|
|
useMouseEvents = "0";
|
|
|
|
|
position = "0 0";
|
|
|
|
|
extent = "400 55";
|
|
|
|
|
minExtent = "8 2";
|
|
|
|
|
horizSizing = "right";
|
|
|
|
|
vertSizing = "bottom";
|
|
|
|
|
profile = "GuiMenuButtonProfile";
|
|
|
|
|
visible = "1";
|
|
|
|
|
active = "1";
|
|
|
|
|
command = %buttonCallback;
|
|
|
|
|
tooltipProfile = "GuiToolTipProfile";
|
|
|
|
|
hovertime = "1000";
|
|
|
|
|
isContainer = "0";
|
|
|
|
|
canSave = "1";
|
|
|
|
|
canSaveDynamicFields = "0";
|
|
|
|
|
};
|
2020-05-25 05:51:33 +00:00
|
|
|
|
2022-06-21 05:25:03 +00:00
|
|
|
PauseMenuList.add(%newButton);
|
|
|
|
|
}
|
2019-08-29 05:22:33 +00:00
|
|
|
function PauseMenu::onSleep(%this)
|
|
|
|
|
{
|
2020-10-25 19:40:32 +00:00
|
|
|
if($Server::ServerType $= "SinglePlayer")
|
|
|
|
|
{
|
|
|
|
|
$timescale = 1;
|
|
|
|
|
sfxSetChannelVolume( $SimAudioType, $pref::SFX::channelVolume[ $SimAudioType ] );
|
|
|
|
|
}
|
2019-08-29 05:22:33 +00:00
|
|
|
}
|
|
|
|
|
|
2020-05-25 05:51:33 +00:00
|
|
|
function openPauseMenuOptions()
|
2019-08-29 05:22:33 +00:00
|
|
|
{
|
2022-05-07 04:39:16 +00:00
|
|
|
PauseMenu.pushPage(OptionsMenu);
|
2019-08-29 05:22:33 +00:00
|
|
|
}
|
|
|
|
|
|
2020-05-25 05:51:33 +00:00
|
|
|
function pauseMenuExitToMenu()
|
|
|
|
|
{
|
2022-05-07 04:39:16 +00:00
|
|
|
MessageBoxOKCancel("Exit?", "Do you wish to exit to the Main Menu?", "escapeFromGame();", "");
|
2020-05-25 05:51:33 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function pauseMenuExitToDesktop()
|
|
|
|
|
{
|
2022-05-07 04:39:16 +00:00
|
|
|
MessageBoxOKCancel("Exit?", "Do you wish to exit to the desktop?", "quit();", "");
|
2020-05-25 05:51:33 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function PauseButtonHolder::onWake(%this)
|
|
|
|
|
{
|
2022-02-23 02:12:39 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|