2024-04-17 20:53:46 -07:00
|
|
|
|
using System;
|
|
|
|
|
using Cysharp.Threading.Tasks;
|
|
|
|
|
using DG.Tweening;
|
2024-06-19 02:32:17 -07:00
|
|
|
|
using GadGame.Event.Type;
|
2024-04-17 20:53:46 -07:00
|
|
|
|
using TMPro;
|
|
|
|
|
using UnityEngine;
|
|
|
|
|
using UnityEngine.UI;
|
|
|
|
|
|
|
|
|
|
namespace GadGame
|
|
|
|
|
{
|
|
|
|
|
public class ReadyPopUp : MonoBehaviour
|
|
|
|
|
{
|
|
|
|
|
[SerializeField] private TextMeshProUGUI _time;
|
|
|
|
|
[SerializeField] private Image _fillImage;
|
|
|
|
|
[SerializeField] private Transform _content;
|
|
|
|
|
[SerializeField] private CanvasGroup _canvasGroup;
|
2024-06-19 02:32:17 -07:00
|
|
|
|
[SerializeField] private FloatEvent ReadyCountDown;
|
2024-04-17 20:53:46 -07:00
|
|
|
|
|
|
|
|
|
private float _readyTime;
|
2024-06-19 02:32:17 -07:00
|
|
|
|
|
2024-04-17 20:53:46 -07:00
|
|
|
|
private void Start()
|
|
|
|
|
{
|
2024-06-19 02:32:17 -07:00
|
|
|
|
ReadyCountDown.Register(OnReadyCountdown);
|
|
|
|
|
// _mainFlow.OnReady += OnReady;
|
2024-04-17 20:53:46 -07:00
|
|
|
|
_content.localScale = Vector3.zero;
|
|
|
|
|
}
|
2024-04-18 19:20:59 -07:00
|
|
|
|
|
2024-04-17 20:53:46 -07:00
|
|
|
|
private void OnDestroy()
|
|
|
|
|
{
|
|
|
|
|
_canvasGroup.DOKill();
|
|
|
|
|
_content.DOKill();
|
2024-06-19 02:32:17 -07:00
|
|
|
|
ReadyCountDown.Unregister(OnReadyCountdown);
|
|
|
|
|
// _mainFlow.OnReady -= OnReady;
|
2024-04-17 20:53:46 -07:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private async void OnReady(bool ready)
|
|
|
|
|
{
|
|
|
|
|
if (ready)
|
|
|
|
|
{
|
|
|
|
|
await _canvasGroup.DOFade(1, 0.1f);
|
|
|
|
|
await _content.DOScale(Vector3.one, 0.2f);
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
await _content.DOScale(Vector3.zero, 0.2f);
|
|
|
|
|
await _canvasGroup.DOFade(0, 0.1f);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void OnReadyCountdown(float duration)
|
|
|
|
|
{
|
|
|
|
|
_time.text = Mathf.CeilToInt(duration).ToString();
|
|
|
|
|
_readyTime = 5 - duration;
|
|
|
|
|
_fillImage.fillAmount = _readyTime / 5;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
}
|