Ludo-3D/Assets/Scripts/UI/Pages/PopUp/PauseMenuPopup.cs

56 lines
1.7 KiB
C#
Raw Normal View History

2026-01-28 15:51:45 +05:30
using UnityEngine;
using UnityEngine.UI;
public class PauseMenuPopup : PopupBase
{
[Header("Buttons")]
[SerializeField] private Button homeBtn;
[SerializeField] private Button playBtn;
[SerializeField] private Button exitBtn;
2026-02-02 17:37:11 +05:30
private SoundManager soundManager;
private GameManager gameManager;
2026-01-28 15:51:45 +05:30
private void OnEnable()
{
2026-02-02 17:37:11 +05:30
playBtn.onClick.AddListener(OnClick_PlayButton);
homeBtn.onClick.AddListener(OnClick_HomeButton);
exitBtn.onClick.AddListener(OnClick_ExitButton);
2026-01-28 15:51:45 +05:30
}
private void OnDisable()
{
2026-02-02 17:37:11 +05:30
playBtn.onClick.RemoveListener(OnClick_PlayButton);
homeBtn.onClick.RemoveListener(OnClick_HomeButton);
exitBtn.onClick.RemoveListener(OnClick_ExitButton);
2026-01-28 15:51:45 +05:30
}
2026-02-02 17:37:11 +05:30
private void OnClick_PlayButton()
2026-01-28 15:51:45 +05:30
{
soundManager = soundManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<SoundManager>() : soundManager;
soundManager?.PlayGameSoundClip(SoundType.ButtonClick);
2026-02-02 17:37:11 +05:30
popupManager.HidePopup(popupType);
ScreenManager screenManager = InterfaceManager.Instance?.GetInterfaceInstance<ScreenManager>();
screenManager.ShowScreen(ScreenType.InGameHUDScreen);
2026-01-28 15:51:45 +05:30
}
2026-02-02 17:37:11 +05:30
private void OnClick_HomeButton()
2026-01-28 15:51:45 +05:30
{
soundManager = soundManager == null ? InterfaceManager.Instance?.GetInterfaceInstance<SoundManager>() : soundManager;
soundManager?.PlayGameSoundClip(SoundType.ButtonClick);
2026-02-02 17:37:11 +05:30
popupManager.HidePopup(popupType);
gameManager = InterfaceManager.Instance?.GetInterfaceInstance<GameManager>();
gameManager.OnGameStateChanged(GameState.InMenu);
2026-01-28 15:51:45 +05:30
}
2026-02-02 17:37:11 +05:30
private void OnClick_ExitButton()
2026-01-28 15:51:45 +05:30
{
Application.Quit();
}
}