コード例 #1
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);
            }
        }