protected override void UpdateAfterChildren() { base.UpdateAfterChildren(); if (!SpmCounter.IsPresent && RotationTracker.Tracking) { SpmCounter.FadeIn(HitObject.TimeFadeIn); } SpmCounter.SetRotation(Result.RateAdjustedRotation); updateBonusScore(); }
protected override void UpdateAfterChildren() { base.UpdateAfterChildren(); if (!SpmCounter.IsPresent && RotationTracker.Tracking) { Result.TimeStarted ??= Time.Current; fadeInCounter(); } // don't update after end time to avoid the rate display dropping during fade out. // this shouldn't be limited to StartTime as it causes weirdness with the underlying calculation, which is expecting updates during that period. if (Time.Current <= HitObject.EndTime) { SpmCounter.SetRotation(Result.RateAdjustedRotation); } updateBonusScore(); }
private void fadeInCounter() => SpmCounter.FadeIn(HitObject.TimeFadeIn);