mirror of
https://github.com/ppy/osu.git
synced 2024-11-11 10:07:52 +08:00
bbdd85020c
Originally noticed during review of another change: https://github.com/ppy/osu/pull/27369#issuecomment-1966140198. `DrawableOsuHitObject` tries to solve the initial dimming of objects by applying transform to a list of dimmable parts. For plain drawables this is safe, but if one of the parts is a DHO, it is not safe, because drawable transforms can be cleared at will. In particular, on first use of a drawable slider, `UpdateInitialTransforms()` would fire via `LoadComplete()` on the `DrawableSlider`, but *then*, also via `LoadComplete()`, the `DrawableSliderTail` would update its own state and by doing so inadvertently clear the dim transform just added by the slider. To fix, ensure dim transforms are applied to DHOs via `ApplyCustomUpdateState`. |
||
---|---|---|
.. | ||
Drawables | ||
HitCircle.cs | ||
ISliderProgress.cs | ||
OsuHitObject.cs | ||
Slider.cs | ||
SliderEndCircle.cs | ||
SliderHeadCircle.cs | ||
SliderRepeat.cs | ||
SliderTailCircle.cs | ||
SliderTick.cs | ||
Spinner.cs | ||
SpinnerBonusTick.cs | ||
SpinnerTick.cs |