85 lines
No EOL
2.7 KiB
C#
85 lines
No EOL
2.7 KiB
C#
/*
|
|
* author: mark joshwel, sai puay
|
|
* date: 11/8/2024
|
|
* description: script for handling pause overlay functions
|
|
*/
|
|
|
|
using UnityEngine;
|
|
using UnityEngine.UIElements;
|
|
|
|
/// <summary>
|
|
/// class managing the pause overlay and button function invocations
|
|
/// </summary>
|
|
public class OverlayPauseMenu : CommonMenu
|
|
{
|
|
/// <summary>
|
|
/// button to resume the run
|
|
/// </summary>
|
|
private Button _buttonResume;
|
|
|
|
// /// <summary>
|
|
// /// button to retry the run
|
|
// /// </summary>
|
|
// private Button _buttonRetry;
|
|
|
|
/// <summary>
|
|
/// button to return to the main menu
|
|
/// </summary>
|
|
private Button _buttonReturn;
|
|
|
|
/// <summary>
|
|
/// function to associate a display state with the menu,
|
|
/// and subscribe button events to their respective functions
|
|
/// </summary>
|
|
public override void OnEnable()
|
|
{
|
|
// set the associated state and call the base OnEnable
|
|
associatedState = GameManager.DisplayState.OverlayPauseMenu;
|
|
base.OnEnable();
|
|
|
|
// get the resume button from the ui root and subscribe appropriate functions
|
|
_buttonResume = UI.Q<Button>("ButtonResume");
|
|
_buttonResume.clicked += PlayClick;
|
|
_buttonResume.clicked += OptionResumeGame;
|
|
|
|
// // get the retry button from the ui root and subscribe appropriate functions
|
|
// _buttonRetry = UI.Q<Button>("ButtonRetry");
|
|
// _buttonRetry.clicked += PlayClick;
|
|
// _buttonRetry.clicked += OptionRetryGame;z
|
|
|
|
// get the return button from the ui root and subscribe appropriate functions
|
|
_buttonReturn = UI.Q<Button>("ButtonReturn");
|
|
_buttonReturn.clicked += PlayClick;
|
|
_buttonReturn.clicked += OptionReturnToMainMenu;
|
|
}
|
|
|
|
/// <summary>
|
|
/// handles resume button press,
|
|
/// signals the game manager appropriately
|
|
/// </summary>
|
|
private static void OptionResumeGame()
|
|
{
|
|
Debug.Log("OverlayPauseMenu.OptionResumeGame (static shared): clicked, resuming game");
|
|
GameManager.Instance.NewGame();
|
|
}
|
|
|
|
/// <summary>
|
|
/// handles retry button press,
|
|
/// signals the game manager appropriately
|
|
/// </summary>
|
|
public static void OptionRetryGame()
|
|
{
|
|
Debug.Log("OverlayPauseMenu.OptionRetryGame (static shared): clicked, retrying run");
|
|
GameManager.Instance.RestartRun();
|
|
}
|
|
|
|
/// <summary>
|
|
/// handles return button press,
|
|
/// signals the game manager appropriately
|
|
/// </summary>
|
|
public static void OptionReturnToMainMenu()
|
|
{
|
|
Debug.Log("OverlayPauseMenu.OptionReturnToMainMenu (static shared): clicked, returning to main menu");
|
|
GameManager.Instance.RestartGame();
|
|
}
|
|
} |