Example #1
0
            private void attemptHit() => Schedule(() =>
            {
                if (HitEvent != null)
                {
                    return;
                }

                // in case it was hit outside of display range, show immediately
                // so the user isn't confused.
                this.FadeIn();

                approach.Expire();

                circle
                .FadeOut(duration)
                .ScaleTo(1.5f, duration);

                HitEvent = new HitEvent(Clock.CurrentTime - HitTime, HitResult.Good, new HitObject
                {
                    HitWindows = new HitWindows(),
                }, null, null);

                Hit?.Invoke(HitEvent.Value);

                this.Delay(duration).Expire();
            });