private ABAnimationTiming timingModeChooser(ABAnimationTiming currentTiming) { int index = (int)currentTiming; index = EditorGUILayout.Popup("Timing Mode", index, ABAnimationTimingHelper.TimingDescriptions()); return((ABAnimationTiming)index); }
private static void RunFadeOutAnimation(GameObject obj, float duration, ABAnimationTiming timing = ABAnimationTiming.Linear, Action onComplete = null) { var d = LeanTween.alpha(obj, 0, duration); d.setEase(leanTweenEaseType(timing)); d.setOnComplete(onComplete); }
private static LeanTweenType leanTweenEaseType(ABAnimationTiming timing) { switch (timing) { case ABAnimationTiming.EaseIn: return(LeanTweenType.easeInSine); case ABAnimationTiming.EaseOut: return(LeanTweenType.easeOutSine); case ABAnimationTiming.EaseInEaseOut: return(LeanTweenType.easeInOutSine); default: return(LeanTweenType.linear); } }
public static string TimingDescription(ABAnimationTiming timing) { return(Enum.GetName(typeof(ABAnimationTiming), timing)); }
public static int IndexOfAnimationTiming(ABAnimationTiming timing) { return((int)timing); }
private static void RunFadeAlphaToAnimation(GameObject obj, float newAlpha, float duration, ABAnimationTiming timing = ABAnimationTiming.Linear, Action onComplete = null) { newAlpha = Mathf.Max(Mathf.Min(newAlpha, 1), 0); var d = LeanTween.alpha(obj, newAlpha, duration); d.setEase(leanTweenEaseType(timing)); d.setOnComplete(onComplete); }
private static void RunFadeAlphaByAnimation(GameObject obj, float delta, float duration, ABAnimationTiming timing = ABAnimationTiming.Linear, Action onComplete = null, int loopsCount = 1) { var renderer = obj.GetComponent <Renderer> (); if (renderer == null) { Debug.LogError("Game Object has no renderer to fade"); return; } var currentAlpha = renderer.material.color.a; var newAlpha = Mathf.Max(Mathf.Min(currentAlpha + delta, 1), 0); var d = LeanTween.alpha(obj, newAlpha, duration); d.setEase(leanTweenEaseType(timing)); if (loopsCount > 1) { d.setOnComplete(() => RunFadeAlphaByAnimation(obj, delta, duration, timing, onComplete, loopsCount - 1)); } else if (loopsCount == ABAnimation.RepeatForever) { d.setOnComplete(() => RunFadeAlphaByAnimation(obj, delta, duration, timing, onComplete, loopsCount)); } else if (loopsCount == 1) { d.setOnComplete(onComplete); } }
private static void RunScaleByAnimation(GameObject obj, Vector3 delta, float duration, ABAnimationTiming timing = ABAnimationTiming.Linear, Action onComplete = null, int loopsCount = 1) { var newScale = obj.transform.localScale + delta; if (loopsCount > 1) { RunScaleToAnimation(obj, newScale, duration, timing, () => RunScaleByAnimation(obj, delta, duration, timing, onComplete, loopsCount - 1)); } else if (loopsCount == ABAnimation.RepeatForever) { RunScaleToAnimation(obj, newScale, duration, timing, () => RunScaleByAnimation(obj, delta, duration, timing, onComplete, loopsCount)); } else if (loopsCount == 1) { RunScaleToAnimation(obj, newScale, duration, timing, onComplete); } }
private static void RunScaleToAnimation(GameObject obj, Vector3 newScale, float duration, ABAnimationTiming timing = ABAnimationTiming.Linear, Action onComplete = null) { var d = LeanTween.scale(obj, newScale, duration); d.setEase(leanTweenEaseType(timing)); d.setOnComplete(onComplete); }
private static void RunRotateByAnimation(GameObject obj, Vector3 delta, float duration, ABAnimationTiming timing = ABAnimationTiming.Linear, Action onComplete = null, int loopsCount = 1) { var d = LeanTween.rotateAround(obj, delta.normalized, delta.magnitude, duration); d.setEase(leanTweenEaseType(timing)); if (loopsCount > 1) { d.setOnComplete(() => RunRotateByAnimation(obj, delta, duration, timing, onComplete, loopsCount - 1)); } else if (loopsCount == ABAnimation.RepeatForever) { d.setOnComplete(() => RunRotateByAnimation(obj, delta, duration, timing, onComplete, loopsCount)); } else if (loopsCount == 1) { d.setOnComplete(onComplete); } }