namespace XmobiTea.UIEffect.Effect.Show { using UnityEngine; using DG.Tweening; public class FadeShowCanvasGroupEffect : BaseEffect { [SerializeField] private CanvasGroup _canvasGroup; private float _beginAlpha; protected override Tween OnShowEffect() { _canvasGroup.alpha = 0; return _canvasGroup.DOFade(_beginAlpha, _time).SetDelay(_delay); } protected override Tween OnHideEffect() { return _canvasGroup.DOFade(0.5f, _time / 2); } private void OnValidate() { _canvasGroup = GetComponent(); _beginAlpha = _canvasGroup.alpha; } } }