Files
cppk-ar/Assets/Scripts/UICanvas.cs
T
2022-11-12 20:23:45 +05:00

44 lines
845 B
C#

using System.Collections;
using System.Collections.Generic;
using DG.Tweening;
using UnityEngine;
using UnityEngine.Events;
[RequireComponent(typeof(CanvasGroup))]
public class UICanvas : MonoBehaviour
{
CanvasGroup canvasGroup;
public UnityEvent OnHide;
[SerializeField] float duration;
void Start()
{
canvasGroup = GetComponent<CanvasGroup>();
}
public void Show()
{
canvasGroup.DOFade(1, duration);
}
public void Hide()
{
canvasGroup.DOFade(0, duration)
.OnComplete(() =>
{
OnHide?.Invoke();
gameObject.SetActive(false);
});
}
void OnEnable()
{
if(canvasGroup == null)
canvasGroup = GetComponent<CanvasGroup>();
canvasGroup.alpha = 0;
Show();
}
}