ISkinComponent
ISkinLookup
DrawableFruit
Instead, skin pieces compute visual representation from `IndexInBeatmap`.
FruitVisualRepresentation
And use orthogonal `OriginalXBindable` and `XOffsetBindable`.
Don't want to set DHO.Scale or DHO.Rotation because because DHO may be transformed by mods. DHO.Size is also assigned for drawable visualizer
- A banana cannot be hyper
Pulps are lazily allocated but never deallocated for a DrawableFruit
But Fruit in-place update is still incomplete, as child drawables are recreated when reused.
It is now more clear that the expression of distance checking is probably unintended (a bug)
BananaShower
JuiceStream
- Use `Clear(false)` to not dispose pooled children. - Don't set nested DHO `Origin`. - Simplify the layout (remove custom `Origin`).
Fruit
Banana
Droplet
TinyDroplet
FruitPiece
Border