Пример #1
0
        private void updateAccentColour()
        {
            if (!IsLoaded)
            {
                return;
            }

            foreground.Colour = AccentColour.Opacity(0.5f);
            background.Colour = AccentColour.Opacity(0.7f);

            const float animation_length = 50;

            foreground.ClearTransforms(false, nameof(foreground.Colour));
            if (hitting)
            {
                // wait for the next sync point
                double synchronisedOffset = animation_length * 2 - Time.Current % (animation_length * 2);
                using (foreground.BeginDelayedSequence(synchronisedOffset))
                    foreground.FadeColour(AccentColour.Lighten(0.2f), animation_length).Then().FadeColour(foreground.Colour, animation_length).Loop();
            }

            subtractionCache.Invalidate();
        }