Example #1
0
 public void AnimScaleTo(Vector3 scale, float time, MadiTween.EaseType easing)
 {
     MadiTween.ScaleTo(gameObject, MadiTween.Hash(
                           "scale", scale,
                           "time", time,
                           "easetype", easing
                           ));
 }
Example #2
0
    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));
    }
Example #3
0
 public void AnimRotateTo(Vector3 rotation, float time, MadiTween.EaseType easing)
 {
     MadiTween.RotateTo(gameObject, MadiTween.Hash(
                            "rotation", rotation,
                            "time", time,
                            "easetype", easing,
                            "islocal", true
                            ));
 }
Example #4
0
 public void AnimMoveTo(Vector3 target, float time, MadiTween.EaseType easing)
 {
     MadiTween.MoveTo(gameObject, MadiTween.Hash(
                          "position", target,
                          "time", time,
                          "easetype", easing,
                          "islocal", true
                          ));
 }
Example #5
0
 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));
     }
 }
Example #7
0
    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);
            }
        }
    }
Example #9
0
    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
                                  ));
        }
    }