using System; using TMPro; using UnityEngine; public class StartUIManager : MonoBehaviour { public int waitTimeLimit = 45; public GameObject sceneLoaderObj; public GameObject startSceneDataObj; public TextMeshProUGUI messageTextObj; public TextMeshProUGUI waitTimeTextObj; private SceneLoader sceneLoader; private StartSeneData startSceneData; private float startTime; private float nowTime; // Start is called before the first frame update void Start() { sceneLoader = sceneLoaderObj.GetComponent(); startSceneData = startSceneDataObj.GetComponent(); messageTextObj.text = ""; } private void Update() { // update time limit left; float leftTime = waitTimeLimit - Time.realtimeSinceStartup; waitTimeTextObj.text = ((int)Math.Round(leftTime)).ToString(); if (leftTime <= 1) { // if time limit is over, load Train Scene sceneLoader.LoadGameScene(SceneLoader.SceneType.Train); } } // while Train-StartButton Pressed public void OnTrainStartButtonPressed() { startSceneData.gamemode = 0; sceneLoader.LoadGameScene(SceneLoader.SceneType.Train); messageTextObj.text = "Loading Train Scene..."; } // while StartButton-Play Pressed public void OnPlayButtonPressed() { startSceneData.gamemode = 1; sceneLoader.LoadGameScene(SceneLoader.SceneType.Play); messageTextObj.text = "Loading Play Scene..."; } }