public void ClosePanel(string name, UITweenType type, TweenCallback callback = null) { switch (type) { case UITweenType.Scale: UIObjects[name].DOScale(0, 0.1f).onComplete = callback + (() => { UIObjects[name].gameObject.SetActive(false); }); break; case UITweenType.Fade: UIObjects[name].GetComponent <CanvasGroup>().DOFade(0, 1f).onComplete = () => { UIObjects[name].gameObject.SetActive(false); }; break; } }
public void OpenPanel(string name, UITweenType type, TweenCallback callback = null) { UIObjects[name].gameObject.SetActive(true); switch (type) { case UITweenType.Scale: UIObjects[name].DOScale(1, 0.1f).onComplete = callback; break; case UITweenType.Fade: UIObjects[name].GetComponent <CanvasGroup>().DOFade(1, 1f).onComplete = callback; break; } }
private static UITweener DoTween(GameObject targetObject, UITweenType tweenType, float time, params object[] tweenArgs) { UITweener tweener = null; UITweener[] tweeners = targetObject.GetComponents <UITweener>(); for (var i = 0; i < tweeners.Length; i++) { if (tweeners[i].IsReady || tweeners[i].tweenType == tweenType) { tweener = tweeners[i]; break; } } if (tweener == null) { tweener = targetObject.AddComponent <UITweener>(); } tweener.tweenType = tweenType; tweener.time = time; switch (tweenType) { case UITweenType.Value: case UITweenType.Alpha: tweener.startValue = (float)tweenArgs[0]; tweener.endValue = (float)tweenArgs[1]; break; case UITweenType.Move: tweener.targetPosition = (Vector3)tweenArgs[0]; break; } tweener.Run(); return(tweener); }