/// <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)); }
/// <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)); }
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)); }
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))); } }
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))); }
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)); }
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))); }