protected override void LoadComplete() { base.LoadComplete(); spinner.RotateTo(360, 2000); using (spinner.BeginDelayedSequence(2000)) spinner.Loop(); }
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); }
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); } }