CapersProject/Assets/02.Scripts/SceneController.cs

65 lines
1.7 KiB
C#
Raw Normal View History

using DG.Tweening;
using UnityEngine;
using UnityEngine.SceneManagement;
using UnityEngine.UI;
namespace BlueWater
{
public class SceneController : Singleton<SceneController>
{
[SerializeField]
private Image _fadeImage;
private Tween _fadeIn;
private Tween _fadeOut;
private bool _isMovedCombatScene;
protected override void OnAwake()
{
2024-11-19 07:57:05 +00:00
_fadeIn = _fadeImage.DOFade(1f, 1f).From(0f).SetUpdate(true).SetAutoKill(false).Pause().OnComplete(MoveCombatScene);
_fadeOut = _fadeImage.DOFade(0f, 0.5f).From(1f).SetUpdate(true).SetAutoKill(false).Pause().SetDelay(3f).OnComplete(EventManager.InvokeInitializedPlayerInput);
_fadeImage.color = new Color(0, 0, 0, 0);
}
private void Start()
{
SceneManager.sceneLoaded += OnSceneLoaded;
}
private void OnDestroy()
{
if (Quitting) return;
SceneManager.sceneLoaded -= OnSceneLoaded;
_fadeIn.Kill();
2024-11-19 07:57:05 +00:00
_fadeOut.Kill();
}
public void FadeIn()
{
_fadeIn.Restart();
}
private void MoveCombatScene()
{
_isMovedCombatScene = true;
2024-10-08 06:12:27 +00:00
SceneManager.LoadScene("01.Tycoon");
}
private void OnSceneLoaded(Scene scene, LoadSceneMode mode)
{
2024-11-19 06:03:43 +00:00
PopupUiController.ClearPopup();
2024-10-08 06:12:27 +00:00
if (scene.name == "01.Tycoon")
{
if (_isMovedCombatScene)
{
_fadeOut.Restart();
_isMovedCombatScene = false;
}
}
}
}
}