예제 #1
0
 /// <summary>
 /// Shakes the vector several times in a random value, up to amount in magnitude.
 /// </summary>
 /// <param name="amount">The maximum displacement of the vector.</param>
 public static CommandDelegate Shake(Ref <Vector3> vector, float amount, double duration)
 {
     return(Shake(vector, Vector3.one * amount, duration));
 }
예제 #2
0
 /// <summary>
 /// Oscilates a quaternion.
 /// </summary>
 /// <param name="amount"> The amount to wiggle by in degrees.</param>
 public static CommandDelegate Wiggle(Ref <Quaternion> rotation, float amount, double duration)
 {
     CheckArgumentNonNull(rotation, "rotation");
     return(Wiggle(rotation, amount, duration, Vector3.forward));
 }
예제 #3
0
 public static CommandDelegate ScaleSquashAndStretchFrom(Ref <Vector3> scale, Vector3 startScale, float amplitude, double duration)
 {
     CheckArgumentNonNull(scale, "scale");
     return(ScaleSquashAndStretchFrom(scale, startScale, amplitude, duration, Vector3.up, new Vector3(0.5f, 0f, 0.5f).normalized));
 }
예제 #4
0
        public static IEnumerator <CommandDelegate> CoroutineOne(Ref <float> val, int depth, Ref <int> calledCount)
        {
            if (depth > 0)
            {
                ++calledCount.Value;
                yield return(Cmd.ChangeTo(val, 5.0f, 4.0f));

                yield return(Cmd.WaitForSeconds(1.0f));

                yield return(Cmd.ChangeBy(val, -4.0f, 4.0f));

                yield return(null);        // Wait for a single frame

                yield return(Cmd.Coroutine(() => CoroutineOne(val, depth - 1, calledCount)));
            }
        }
예제 #5
0
        public static CommandDelegate AlphaFromOffset(Ref <Color32> color, float offset, double duration, CommandEase ease = null)
        {
            CheckArgumentNonNull(color, "color");

            return(Commands.Defer(() => Commands.AlphaFrom(color, (color.Value.a / 255.0f) + offset, duration, ease)));
        }
예제 #6
0
        public static CommandDelegate ChangeTo(Ref <Rect> rect, Rect endRect, double duration, CommandEase ease = null)
        {
            CheckArgumentNonNull(rect, "rect");

            return(ChangeTo(rect, endRect, duration, new Vector2(0.5f, 0.5f), ease));
        }
예제 #7
0
        public static CommandDelegate ChangeFromOffset(Ref <Vector4> vector, Vector4 offset, double duration, CommandEase ease = null)
        {
            CheckArgumentNonNull(vector, "vector");

            return(Commands.Defer(() => Commands.ChangeFrom(vector, vector.Value + offset, duration, ease)));
        }