1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-17 22:13:21 +08:00
Commit Graph

1073 Commits

Author SHA1 Message Date
Bartłomiej Dach
8916f08f86
Only take initial judgement position from object instead of following
Looks less bad with mods like depth active.

Co-authored-by: Dean Herbert <pe@ppy.sh>
2024-05-30 09:03:02 +02:00
Bartłomiej Dach
a6c776dac8
Use hopefully safer implementation of anchoring judgements to objects 2024-05-29 11:11:43 +02:00
Bartłomiej Dach
22a2adb5e6
Revert unrelated changes 2024-05-29 10:57:30 +02:00
Bartłomiej Dach
9fb7cc5900
Merge branch 'master' into magnetised-judgements 2024-05-29 10:56:53 +02:00
Aurelian
b74f66e335 SliderBall's rotation updates based on CurvePositionAt 2024-05-28 19:38:33 +02:00
DavidBeh
8c2a4eb78a Fix formatting 2024-04-24 12:40:23 +02:00
DavidBeh
16190a4ed7 Made judgements follow DrawableOsuHitObjects. Enabled judgements for depth mod 2024-04-24 00:23:45 +02:00
DavidBeh
3a914b9337 Fixed judgements with MG mod without causing side effects 2024-04-23 23:24:51 +02:00
DavidBeh
331f1f31b0 Attempt to position DrawableOsuJudgement based on its DrawableOsuHitObject instead of DrawableOsuHitObject.HitObject 2024-04-23 19:19:11 +02:00
Bartłomiej Dach
c9bbeeb49a
Merge branch 'master' into heatmap-misses 2024-03-18 14:43:24 +01:00
Dean Herbert
fcc35a6acc
Fix cross-talk between pooled DrawableSliderRepeat usage causing incorrect rotation 2024-03-08 11:37:13 +08:00
Dean Herbert
646edb239a
Merge pull request #27429 from bdach/rewind-slider-tracking
Fix slider tracking state not restoring correctly in all cases on rewind
2024-03-07 22:41:12 +08:00
Dean Herbert
b53b752e54
Update usage of MathUtils 2024-03-06 12:13:12 +08:00
Bartłomiej Dach
876b806423
Store tracking history to slider judgement result instead 2024-02-29 12:11:50 +01:00
Bartłomiej Dach
1d1db951f0
Reset slider input manager state completely on new object application
Kind of scary this wasn't happening already.

Mirrors `SpinnerRotationTracker`.
2024-02-29 11:59:19 +01:00
Bartłomiej Dach
d05b31933f
Fix slider tracking state not restoring correctly in all cases on rewind 2024-02-29 11:59:15 +01:00
Bartłomiej Dach
b5ce2642aa
Fix subscribing to ApplyCustomUpdateState too much 2024-02-28 13:20:41 +01:00
Bartłomiej Dach
bbdd85020c
Fix slider tails sometimes not dimming correctly
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`.
2024-02-27 11:45:03 +01:00
Bartłomiej Dach
087a2a741a
Merge pull request #27369 from Detze/incorrect-slider-head-dim
Fix slider head being incorrectly dimmed twice
2024-02-27 11:17:34 +01:00
Detze
91d7bd1026 Don't dim slider head in DrawableSlider 2024-02-24 21:56:44 +01:00
Andrei Zavatski
1fb19e7129 Reduce allocations in DrawableSpinner 2024-02-24 20:18:30 +03:00
Dan Balasescu
1f13124b38
Always process position as long as it's hittable
For example... If a hitobject is pressed but the result is a shake, this
will stop processing hits.
2024-02-07 03:52:56 +09:00
Dan Balasescu
e2867986c5
Add xmldocs 2024-02-07 03:52:14 +09:00
Dan Balasescu
38f7913b31
Fix inverted condition 2024-02-07 03:50:56 +09:00
Dan Balasescu
9b8f206486
Enable NRT for DrawableHitCircle to clean up 2024-02-07 03:38:07 +09:00
Dan Balasescu
5850d6a578
Show near-misses on the results-screen heatmap 2024-02-06 22:30:22 +09:00
Bartłomiej Dach
fb80d76b4a
Apply further changes to remove remaining weirdness 2024-02-05 13:37:38 +01:00
Bartłomiej Dach
39fe078984
Merge branch 'master' into hit-object-result-allocations 2024-02-05 13:24:10 +01:00
Bartłomiej Dach
efe6bb25b1
Refactor result application around again to remove requirement for fields
Co-authored-by: Dean Herbert <pe@ppy.sh>
2024-02-05 13:21:01 +01:00
Bartłomiej Dach
2667cb8b36
Merge pull request #26703 from peppy/smaller-slider-misses
Adjust slider tick / end defaults again
2024-01-29 13:51:07 +01:00
Dean Herbert
a3199333bb
Merge pull request #26698 from EVAST9919/slider-sample-alloc
Reduce sliding sample allocations in `DrawableSlider`
2024-01-29 20:37:32 +09:00
Dean Herbert
034f8c0388
Also fix spinner case 2024-01-29 20:36:59 +09:00
Dean Herbert
b6fa50c312
Reduce allocation overheads in SliderInputManager 2024-01-26 17:49:20 +09:00
Chandler Stowell
93bd3ce5ae update DrawableHitCircle.ApplyResult to pass this to its callback 2024-01-25 11:25:41 -05:00
Dean Herbert
fd9527d523
Remove weird red fade that didn't work 2024-01-25 19:31:57 +09:00
Dean Herbert
107b37494e
Update triangles skin judgment display 2024-01-25 19:31:57 +09:00
Andrei Zavatski
21b11092d6 Fix slider sliding samples allocation 2024-01-25 04:06:15 +03:00
Chandler Stowell
d2775680e6 use stack to pass action state when applying hit results
this removes closure allocations
2024-01-24 13:13:45 -05:00
Salman Ahmed
57b2d018a9 Fix slider sometimes not updating relative anchor position 2024-01-22 02:07:32 +03:00
OliBomby
96ffe8e737 change wording 2024-01-15 12:51:08 +01:00
OliBomby
86382f4408 Clarify comment 2024-01-15 12:49:40 +01:00
OliBomby
fca9b1f536 Fix so it reacts to PathVersion with Scheduler 2024-01-13 12:50:39 +01:00
Dean Herbert
5970a68e2d
Use invalidation based logic for child anchor position updpates in DrawableSlider 2024-01-09 14:17:33 +09:00
Dean Herbert
962c8ba4ac
Reset child anchor position cache on hitobject position change 2024-01-07 20:55:28 +09:00
Dean Herbert
5cc4a586ac
Avoid iteration over NestedHitObjects in silder's Update unless necessary 2024-01-07 14:31:22 +09:00
Dean Herbert
35eff639cb
Remove unnecessary second iteration over NestedHitObjects 2024-01-07 14:31:22 +09:00
rushiiMachine
cf39bb7a18
Fix spinner max bonus not respecting ISamplePlaybackDisabler
The spinner max bonus was loaded through SkinnableSound instead of PausableSkinnableSound, leading to it not respecting the case where sample playback is globally disabled through ISamplePlaybackDisabler, and can be easily heard in situations like during the catchup period after seeking using the ArgonSongProgressBar with song volume at 0
2023-12-27 12:55:49 -08:00
Bartłomiej Dach
7e557152fb
Fix relax mod not considering full follow area radius when automatically holding sliders
Closes https://github.com/ppy/osu/issues/25947.

Regressed in https://github.com/ppy/osu/pull/25776 with the changes to
`DrawableSliderBall`.

I would have liked to include tests, but relax mod is a bit untestable,
because it disengages completely in the presence of a replay:

	7e09164d70/osu.Game.Rulesets.Osu/Mods/OsuModRelax.cs (L49-L58)

Additionally, `RulesetInputManager` disengages completely from parent
inputs when there is a replay active:

	7e09164d70/osu.Game/Rulesets/UI/RulesetInputManager.cs (L116)

which means there is really no easy way to control positional input
while still having relax logic work. So I'm hoping the fix could be
considered obvious enough to not require test coverage.
2023-12-22 12:50:42 +01:00
Dan Balasescu
6b4b2a57fc
Expose only as one method 2023-12-21 14:58:23 +09:00
Dan Balasescu
4e3b994142
Relocate HitResult numeric score to ScoreProcessor 2023-12-21 14:52:31 +09:00