using JetBrains.Annotations; using UnityEngine; using Utility; namespace Core.UI.UTool.UITween { [System.Serializable] public class TweenEntity { public bool Foldout; public TweenType TweenType; public float duration; public float delay; [CanBeNull] public TweenTransform TweenBasic = null; [CanBeNull] public TweenCanvasGroup TweenCanvasGroup = null; [CanBeNull] public TweenGraphic TweenGraphic = null; [CanBeNull] public TweenPlayFx TweenPlayFx = null; [HideInInspector] public Map Map = new Map(); public void Claer() { TweenBasic = null; TweenCanvasGroup = null; TweenGraphic = null; TweenPlayFx = null; } public void Play(UITweenController UITweenController,Object RectTransform, float allTime, bool isFallBack) { switch (TweenType) { case TweenType.RectTransform: TweenBasic?.Play(UITweenController,RectTransform, allTime, isFallBack); break; case TweenType.CanvasGroup: TweenCanvasGroup?.Play(UITweenController,RectTransform, allTime, isFallBack); break; case TweenType.Graphic: TweenGraphic?.Play(UITweenController,RectTransform, allTime, isFallBack); break; case TweenType.PlayFx: TweenPlayFx?.Play(UITweenController,RectTransform, allTime, isFallBack); break; } } public void Rest(UITweenController uiTweenController,Object RectTransform) { switch (TweenType) { case TweenType.RectTransform: TweenBasic?.Rest(uiTweenController,RectTransform); break; case TweenType.CanvasGroup: TweenCanvasGroup?.Rest(uiTweenController,RectTransform); break; case TweenType.Graphic: TweenGraphic?.Rest(uiTweenController,RectTransform); break; case TweenType.PlayFx: TweenPlayFx?.Rest(uiTweenController,RectTransform); break; } } public void Prepare() { switch (TweenType) { case TweenType.RectTransform: TweenBasic?.Prepare(delay, duration); break; case TweenType.CanvasGroup: TweenCanvasGroup?.Prepare(delay, duration); break; case TweenType.Graphic: TweenGraphic?.Prepare(delay, duration); break; case TweenType.PlayFx: TweenPlayFx?.Prepare(delay, duration); break; } } } }