Exemple #1
0
 public static Coroutine LerpMinToMax(float lengthInSec, Color min, Color max, Color currentPoint, colorDel callback, bool lerpInverse)
 {
     if (!lerpInverse)
     {
         if (currentPoint == min)
         {
             return currentInstance.StartCoroutine(lerpColor(lengthInSec, min, max, callback));
         }
         else if (currentPoint != max)
         {
             return currentInstance.StartCoroutine(lerpColor(lengthInSec, currentPoint, max, callback));
         }
     }
     else
     {
         if (currentPoint == max)
         {
             return currentInstance.StartCoroutine(lerpColor(lengthInSec, max, min, callback));
         }
         else if (currentPoint != min)
         {
             return currentInstance.StartCoroutine(lerpColor(lengthInSec, currentPoint, min, callback));
         }
     }
     return null;
 }
Exemple #2
0
 public static IEnumerator lerpColor(float lengthInSec, Color start, Color end, colorDel callback)
 {
     for (float i = 0; i < lengthInSec; i += Time.deltaTime)
     {
         Color currentPoint = Color.Lerp(start, end, i / lengthInSec);
         callback(currentPoint);
         yield return null;
     }
     callback(end);
 }