diff --git a/osu.Game/Rulesets/UI/Playfield.cs b/osu.Game/Rulesets/UI/Playfield.cs
index c52183f3f2..d92ba210db 100644
--- a/osu.Game/Rulesets/UI/Playfield.cs
+++ b/osu.Game/Rulesets/UI/Playfield.cs
@@ -37,7 +37,21 @@ namespace osu.Game.Rulesets.UI
///
/// All the s contained in this and all .
///
- public IEnumerable AllHitObjects => HitObjectContainer?.Objects.Concat(NestedPlayfields.SelectMany(p => p.AllHitObjects)) ?? Enumerable.Empty();
+ public IEnumerable AllHitObjects
+ {
+ get
+ {
+ if (HitObjectContainer == null)
+ return Enumerable.Empty();
+
+ var enumerable = HitObjectContainer.Objects;
+
+ if (nestedPlayfields.IsValueCreated)
+ enumerable = enumerable.Concat(NestedPlayfields.SelectMany(p => p.AllHitObjects));
+
+ return enumerable;
+ }
+ }
///
/// All s nested inside this .