44 lines
1.1 KiB
C#
44 lines
1.1 KiB
C#
using System.Collections;
|
|
using UnityEngine;
|
|
using UnityEngine.SceneManagement;
|
|
using UnityEngine.UI;
|
|
|
|
public class TitleManager : MonoBehaviour
|
|
{
|
|
[Header("UI Buttons")]
|
|
[SerializeField] private Button startButton;
|
|
[SerializeField] private Button exitButton;
|
|
|
|
[Header("Scene Settings")]
|
|
[SerializeField] private string mainGameSceneName = "MainGameScene";
|
|
|
|
private void Awake()
|
|
{
|
|
if (startButton != null) startButton.onClick.AddListener(OnStartButtonClicked);
|
|
if (exitButton != null) exitButton.onClick.AddListener(OnExitButtonClicked);
|
|
}
|
|
|
|
private void OnStartButtonClicked()
|
|
{
|
|
if (startButton != null) startButton.interactable = false;
|
|
StartCoroutine(LoadSceneRoutine());
|
|
}
|
|
|
|
private void OnExitButtonClicked()
|
|
{
|
|
#if UNITY_EDITOR
|
|
UnityEditor.EditorApplication.isPlaying = false;
|
|
#else
|
|
Application.Quit();
|
|
#endif
|
|
}
|
|
|
|
private IEnumerator LoadSceneRoutine()
|
|
{
|
|
AsyncOperation asyncLoad = SceneManager.LoadSceneAsync(mainGameSceneName);
|
|
while (!asyncLoad.isDone)
|
|
{
|
|
yield return null;
|
|
}
|
|
}
|
|
} |