public void AnimScaleTo(Vector3 scale, float time, MadiTween.EaseType easing) { MadiTween.ScaleTo(gameObject, MadiTween.Hash( "scale", scale, "time", time, "easetype", easing )); }
protected Vector2 Ease(MadiTween.EaseType type, Vector2 start, Vector2 end, float percentage) { var fun = MadiTween.GetEasingFunction(type); float x = fun(start.x, end.x, percentage); float y = fun(start.y, end.y, percentage); return(new Vector2(x, y)); }
public void AnimRotateTo(Vector3 rotation, float time, MadiTween.EaseType easing) { MadiTween.RotateTo(gameObject, MadiTween.Hash( "rotation", rotation, "time", time, "easetype", easing, "islocal", true )); }
public void AnimMoveTo(Vector3 target, float time, MadiTween.EaseType easing) { MadiTween.MoveTo(gameObject, MadiTween.Hash( "position", target, "time", time, "easetype", easing, "islocal", true )); }
public void AnimColorTo(Color color, float time, MadiTween.EaseType easing) { MadiTween.ValueTo(gameObject, MadiTween.Hash( "from", tint, "to", color, "time", time, "onupdate", "OnTintChange", "easetype", easing )); }
protected MadiTween.EasingFunction GetEasingFunction() { if (useAnimationCurve) { return(EasingFromCurve); } else { return(MadiTween.GetEasingFunction(easing)); } }
protected override void Start() { sprite = GetComponent <MadSprite>(); if (sprite == null) { Debug.Log("Anim Color component requires MadSprite component!", this); return; } origin = sprite.tint; easingFunction = MadiTween.GetEasingFunction(easing); base.Start(); }
public IEnumerator Anim() { while (enabled) { // infinite animation coroutine var visibleCount = barRenderer.GetVisibleIconCount(); if (visibleCount > 0) { var image = barRenderer.GetIconImage(visibleCount - 1); // make a copy var clone = (Image2) Instantiate(image); // changing the name, because "generated_*" icons are treated in a special way and this may lead to errors clone.name = "anim icon"; clone.transform.SetParent(image.transform.parent, false); clone.transform.position = image.transform.position; clone.transform.SetSiblingIndex(image.transform.GetSiblingIndex()); // do the animation float startTime = Time.time; float endTime = Time.time + animationTime; var easingFunction = MadiTween.GetEasingFunction(scaleEaseType); while (Time.time < endTime) { float f = (Time.time - startTime) / animationTime; var scale = easingFunction.Invoke(scaleFrom, scaleTo, f); clone.transform.localScale = new Vector3(scale, scale, scale); var alpha = easingFunction.Invoke(alphaFrom, alphaTo, f); clone.color = new Color(clone.color.r, clone.color.g, clone.color.b, alpha); yield return null; // next frame } // remove Destroy(clone.gameObject); } else { // if there's no last icon, just wait yield return new WaitForSeconds(animationTime); } } }
protected override void Start() { easingFunction = MadiTween.GetEasingFunction(easing); base.Start(); }
public void PlayFinishAnimation(MadSprite chosenSprite, bool completed) { levelNameText.eventFlags = MadSprite.EventFlags.None; argumentsText.eventFlags = MadSprite.EventFlags.None; backToMenu.eventFlags = MadSprite.EventFlags.None; Color transparent = new Color(1, 1, 1, 0); Color opaque = new Color(1, 1, 1, 1); levelNameText.AnimColorTo(transparent, 1, MadiTween.EaseType.linear); argumentsText.AnimColorTo(transparent, 1, MadiTween.EaseType.linear); backToMenu.AnimColorTo(transparent, 1, MadiTween.EaseType.linear); if (completed) { levelCompletedText.tint = transparent; levelCompletedText.visible = true; levelCompletedText.AnimColorTo(opaque, 1, MadiTween.EaseType.linear); } else { levelNotCompletedText.tint = transparent; levelNotCompletedText.visible = true; levelNotCompletedText.AnimColorTo(opaque, 1, MadiTween.EaseType.linear); } foreach (var sprite in other) { var children = MadTransform.FindChildren <MadSprite>(sprite.transform); sprite.eventFlags = MadSprite.EventFlags.None; foreach (var s in children) { s.eventFlags = MadSprite.EventFlags.None; } if (sprite != chosenSprite) { sprite.AnimColorTo(transparent, 1, MadiTween.EaseType.linear); foreach (var s in children) { s.AnimColorTo(transparent, 1, MadiTween.EaseType.linear); } } } chosenSprite.AnimMoveTo(new Vector3(), 1, MadiTween.EaseType.easeOutSine); MadiTween.ScaleTo(chosenSprite.gameObject, MadiTween.Hash( "scale", new Vector3(7, 7, 7), "time", 0.5f, "easetype", MadiTween.EaseType.easeInQuint, "delay", 1.5f )); MadiTween.ValueTo(chosenSprite.gameObject, MadiTween.Hash( "from", chosenSprite.tint, "to", transparent, "time", 0.5f, "onupdate", "OnTintChange", "easetype", MadiTween.EaseType.easeInQuint, "delay", 1.5f )); foreach (var s in MadTransform.FindChildren <MadSprite>(chosenSprite.transform)) { MadiTween.ValueTo(s.gameObject, MadiTween.Hash( "from", s.tint, "to", transparent, "time", 0.5f, "onupdate", "OnTintChange", "easetype", MadiTween.EaseType.easeInQuint, "delay", 1.5f )); } }