private void load() { var droppedObjectContainer = new DroppedObjectContainer(); Catcher = new Catcher(droppedObjectContainer, difficulty) { X = CENTER_X }; AddRangeInternal(new[] { droppedObjectContainer, Catcher.CreateProxiedContent(), HitObjectContainer.CreateProxy(), // This ordering (`CatcherArea` before `HitObjectContainer`) is important to // make sure the up-to-date catcher position is used for the catcher catching logic of hit objects. CatcherArea = new CatcherArea { Anchor = Anchor.BottomLeft, Origin = Anchor.TopLeft, Catcher = Catcher, }, HitObjectContainer, }); RegisterPool <Droplet, DrawableDroplet>(50); RegisterPool <TinyDroplet, DrawableTinyDroplet>(50); RegisterPool <Fruit, DrawableFruit>(100); RegisterPool <Banana, DrawableBanana>(100); RegisterPool <JuiceStream, DrawableJuiceStream>(10); RegisterPool <BananaShower, DrawableBananaShower>(2); }
public CatchPlayfield(BeatmapDifficulty difficulty) { CatcherArea = new CatcherArea(difficulty) { Anchor = Anchor.BottomLeft, Origin = Anchor.TopLeft, }; InternalChildren = new[] { droppedObjectContainer = new DroppedObjectContainer(), CatcherArea.MovableCatcher.CreateProxiedContent(), HitObjectContainer.CreateProxy(), // This ordering (`CatcherArea` before `HitObjectContainer`) is important to // make sure the up-to-date catcher position is used for the catcher catching logic of hit objects. CatcherArea, HitObjectContainer, }; }