Esempio n. 1
0
        internal static Color AddGradient(ChromaEventData.GradientObjectData gradientObject, BeatmapEventType id, float time)
        {
            CancelGradient(id);

            float     duration  = gradientObject.Duration;
            Color     initcolor = gradientObject.StartColor;
            Color     endcolor  = gradientObject.EndColor;
            Functions easing    = gradientObject.Easing;

            ChromaGradientEvent gradientEvent = new ChromaGradientEvent(initcolor, endcolor, time, duration, id, easing);

            Instance.Gradients[id] = gradientEvent;
            return(gradientEvent.Interpolate());
        }
Esempio n. 2
0
        internal static Color AddGradient(dynamic gradientObject, BeatmapEventType id, float time)
        {
            CancelGradient(id);

            float     duration     = (float)Trees.at(gradientObject, DURATION);
            Color     initcolor    = ChromaUtils.GetColorFromData(gradientObject, STARTCOLOR);
            Color     endcolor     = ChromaUtils.GetColorFromData(gradientObject, ENDCOLOR);
            string    easingstring = (string)Trees.at(gradientObject, EASING);
            Functions easing;

            if (string.IsNullOrEmpty(easingstring))
            {
                easing = Functions.easeLinear;
            }
            else
            {
                easing = (Functions)Enum.Parse(typeof(Functions), easingstring);
            }

            ChromaGradientEvent gradientEvent = new ChromaGradientEvent(initcolor, endcolor, time, duration, id, easing);

            Instance.Gradients[id] = gradientEvent;
            return(gradientEvent.Interpolate());
        }