コード例 #1
0
        protected override void LoadComplete()
        {
            base.LoadComplete();

            spinner.RotateTo(360, 2000);
            using (spinner.BeginDelayedSequence(2000))
                spinner.Loop();
        }
コード例 #2
0
ファイル: TwoLayerButton.cs プロジェクト: slanterns-fork/osu
            protected override void OnNewBeat(int beatIndex, TimingControlPoint timingPoint, EffectControlPoint effectPoint, TrackAmplitudes amplitudes)
            {
                base.OnNewBeat(beatIndex, timingPoint, effectPoint, amplitudes);

                var beatLength = timingPoint.BeatLength;

                float amplitudeAdjust = Math.Min(1, 0.4f + amplitudes.Maximum);

                if (beatIndex < 0)
                {
                    return;
                }

                icon.ScaleTo(1 - 0.1f * amplitudeAdjust, beat_in_time, EasingTypes.Out);
                using (icon.BeginDelayedSequence(beat_in_time))
                    icon.ScaleTo(1, beatLength * 2, EasingTypes.OutQuint);
            }
コード例 #3
0
        protected override void OnNewBeat(int beatIndex, TimingControlPoint timingPoint, EffectControlPoint effectPoint, TrackAmplitudes amplitudes)
        {
            base.OnNewBeat(beatIndex, timingPoint, effectPoint, amplitudes);

            if (!IsHovered)
            {
                return;
            }

            bool   rightward = beatIndex % 2 == 1;
            double duration  = timingPoint.BeatLength / 2;

            icon.RotateTo(rightward ? 10 : -10, duration * 2, EasingTypes.InOutSine);

            icon.MoveToY(-10, duration, EasingTypes.Out);
            icon.ScaleTo(Vector2.One, duration, EasingTypes.Out);

            using (icon.BeginDelayedSequence(duration))
            {
                icon.MoveToY(0, duration, EasingTypes.In);
                icon.ScaleTo(new Vector2(1, 0.9f), duration, EasingTypes.In);
            }
        }