RandomGFGoStop/Assets/Scripts/UI/Popup/ShakeSelectPopup_AI.cs

40 lines
1.2 KiB
C#
Raw Normal View History

2025-08-27 21:08:17 +00:00
using CodeJay.Enum;
using DG.Tweening;
using UnityEngine;
public class ShakeSelectPopup_AI : PopupBase
{
[SerializeField] private UnityEngine.UI.Image hourglass;
private ECardType[] cardTypes;
public void SetData(ECardType[] types, bool fourCard)
{
this.cardTypes = types;
hourglass.rectTransform.DOLocalRotate(Vector3.back * 360, 3, RotateMode.FastBeyond360).SetLoops(-1, LoopType.Restart);
StartCoroutine(coroSelectRnd(types, fourCard));
GameManager.Sound.PlaySFX(ESFXType.Open_Popup);
}
public override void HidePopup()
{
base.HidePopup();
if (DOTween.IsTweening(hourglass.rectTransform))
hourglass.rectTransform.DOKill();
}
private System.Collections.IEnumerator coroSelectRnd(ECardType[] types, bool fourCard)
{
yield return new WaitForSeconds(2f);
bool shake = Random.Range(0, 2) > 0;
if (shake)
{
GameManager.UI.HideTopPopup();
GameManager.UI.ShowNStackPopup<ShakePopup>(EPopupType.ShakePopup).SetData(types, fourCard);
}
else
{
GameManager.UI.HideTopPopup();
}
}
}