94 lines
3.3 KiB
C#
94 lines
3.3 KiB
C#
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
public class MenuHUDScreen : ScreenBase
|
|
{
|
|
[Header("Mode Buttons")]
|
|
[SerializeField] private Button pvpModeBtn;
|
|
[SerializeField] private Button pvaiModeBtn;
|
|
|
|
[Header("Popups")]
|
|
[SerializeField] private Button optionsBtn;
|
|
[SerializeField] private Button instructionsBtn;
|
|
[SerializeField] private Button exitBtn;
|
|
|
|
private PopupManager popupManager;
|
|
private SoundManager soundManager;
|
|
|
|
private void OnEnable()
|
|
{
|
|
pvpModeBtn.onClick.AddListener(OnClick_PVPModeButton);
|
|
pvaiModeBtn.onClick.AddListener(OnClick_PvAIModeButton);
|
|
optionsBtn.onClick.AddListener(OnClick_OptionsButton);
|
|
instructionsBtn.onClick.AddListener(OnClick_InstructionsButton);
|
|
exitBtn.onClick.AddListener(OnClick_ExitButton);
|
|
}
|
|
|
|
private void OnDisable()
|
|
{
|
|
pvpModeBtn.onClick.RemoveListener(OnClick_PVPModeButton);
|
|
pvaiModeBtn.onClick.RemoveListener(OnClick_PvAIModeButton);
|
|
optionsBtn.onClick.RemoveListener(OnClick_OptionsButton);
|
|
instructionsBtn.onClick.RemoveListener(OnClick_InstructionsButton);
|
|
exitBtn.onClick.RemoveListener(OnClick_ExitButton);
|
|
}
|
|
|
|
private void OnClick_PVPModeButton()
|
|
{
|
|
popupManager = popupManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<PopupManager>() : popupManager;
|
|
popupManager.ShowPopup(PopupType.PvPModePopup);
|
|
|
|
soundManager = soundManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<SoundManager>() : soundManager;
|
|
soundManager?.PlayGameSoundClip(SoundType.ButtonClick);
|
|
|
|
HideScreen();
|
|
}
|
|
|
|
private void OnClick_PvAIModeButton()
|
|
{
|
|
popupManager = popupManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<PopupManager>() : popupManager;
|
|
popupManager.ShowPopup(PopupType.PvAIModePopup);
|
|
|
|
soundManager = soundManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<SoundManager>() : soundManager;
|
|
soundManager?.PlayGameSoundClip(SoundType.ButtonClick);
|
|
|
|
HideScreen();
|
|
}
|
|
|
|
private void OnClick_OptionsButton()
|
|
{
|
|
popupManager = popupManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<PopupManager>() : popupManager;
|
|
popupManager.ShowPopup(PopupType.OptionsPopup);
|
|
|
|
soundManager = soundManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<SoundManager>() : soundManager;
|
|
soundManager?.PlayGameSoundClip(SoundType.ButtonClick);
|
|
|
|
HideScreen();
|
|
}
|
|
|
|
private void OnClick_InstructionsButton()
|
|
{
|
|
popupManager = popupManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<PopupManager>() : popupManager;
|
|
popupManager.ShowPopup(PopupType.InstructionsPopup);
|
|
|
|
soundManager = soundManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<SoundManager>() : soundManager;
|
|
soundManager?.PlayGameSoundClip(SoundType.ButtonClick);
|
|
|
|
HideScreen();
|
|
}
|
|
|
|
private void HideScreen()
|
|
{
|
|
screenManager.HideScreen(ScreenType);
|
|
}
|
|
|
|
private void OnClick_ExitButton()
|
|
{
|
|
soundManager = soundManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<SoundManager>() : soundManager;
|
|
soundManager?.PlayGameSoundClip(SoundType.ButtonClick);
|
|
|
|
Application.Quit();
|
|
}
|
|
|
|
}
|