public void Property(FFRef <Color> var, Color endValue, FFEase easeType, float timeToComplete) { if (_sequence.Count != 0 && var != null) { // Set Property FFActionProperty <Color> myprop = new FFActionProperty <Color>(); myprop.var = var; myprop.start_value = var.Val; myprop.end_value = endValue; myprop.curr_time = 0.0f; myprop.prev_value = var.Val; // total_time cannot be zero myprop.total_time = Mathf.Max(timeToComplete, 0.01f); SetMuGetter <Color>(myprop, easeType); // Add to front of sequence if (_sequence[_sequence.Count - 1].as_ColorProperties == null) { _sequence[_sequence.Count - 1].as_ColorProperties = new List <FFActionProperty <Color> >(); } _sequence[_sequence.Count - 1].as_ColorProperties.Add(myprop); } else { Debug.Log("Error in ActionSequence Property call"); } }
// MuGetters for Calculators and Animation Curves #region MuGetters private static void SetMuGetter <T>(FFActionProperty <T> prop, FFEase ease) { // E_SmoothStart if ((FFEase.E_SmoothStart & ease).Equals(FFEase.E_SmoothStart)) { prop.mu_getter = GetMuSmoothStart; } // E_SmoothEnd else if ((FFEase.E_SmoothEnd & ease).Equals(FFEase.E_SmoothEnd)) { prop.mu_getter = GetMuSmoothEnd; } // E_SmoothStartEnd else if ((FFEase.E_SmoothStartEnd & ease).Equals(FFEase.E_SmoothStartEnd)) { prop.mu_getter = GetMuSmoothStartEnd; } else //default E_Continuous { prop.mu_getter = GetMuContinuous; } }