From e1dfe364b22690d5eada9900119b3efca2879a5e Mon Sep 17 00:00:00 2001 From: smoogipooo Date: Mon, 7 Aug 2017 14:07:49 +0900 Subject: [PATCH] Fix lifetime performance regression. --- .../Objects/Drawables/DrawableScrollingHitObject.cs | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/osu.Game/Rulesets/Objects/Drawables/DrawableScrollingHitObject.cs b/osu.Game/Rulesets/Objects/Drawables/DrawableScrollingHitObject.cs index 8dc17b9542..52b8d3e12d 100644 --- a/osu.Game/Rulesets/Objects/Drawables/DrawableScrollingHitObject.cs +++ b/osu.Game/Rulesets/Objects/Drawables/DrawableScrollingHitObject.cs @@ -22,20 +22,22 @@ protected DrawableScrollingHitObject(TObject hitObject) { } + private double? lifetimeStart; public override double LifetimeStart { - get { return Math.Min(HitObject.StartTime - LifetimeOffset, base.LifetimeStart); } - set { base.LifetimeStart = value; } + get { return lifetimeStart ?? HitObject.StartTime - LifetimeOffset; } + set { lifetimeStart = value; } } + private double? lifetimeEnd; public override double LifetimeEnd { get { var endTime = (HitObject as IHasEndTime)?.EndTime ?? HitObject.StartTime; - return Math.Max(endTime + LifetimeOffset, base.LifetimeEnd); + return lifetimeEnd ?? endTime + LifetimeOffset; } - set { base.LifetimeEnd = value; } + set { lifetimeEnd = value; } } protected override void AddNested(DrawableHitObject h)