Bartłomiej Dach
1793b8ccb4
Merge pull request #31775 from peppy/avoid-beatmap-access-beat-sync-container
...
Avoid accessing `WorkingBeatmap.Beatmap` every update call
2025-02-03 12:24:05 +01:00
Bartłomiej Dach
b60a8341e4
Merge pull request #31778 from peppy/editor-menu-mutual-exclusive
...
Make distance snap settings mutually exclusive
2025-02-03 11:58:34 +01:00
Dean Herbert
99192404f1
Tidy up WorkingBeatmap
passing in ctor
2025-02-03 19:26:14 +09:00
Dean Herbert
8bb7bea04e
Rename freestyle select screen classes for better discoverability
2025-02-03 19:21:21 +09:00
Dean Herbert
37abb1a21b
Tidy up button construction code
2025-02-03 19:09:58 +09:00
Dean Herbert
444e0970d6
Standardise naming to use "Freestyle" not "FreeStyle"
2025-02-03 19:01:59 +09:00
Dean Herbert
f24716563c
Merge branch 'master' into user-panel-status
2025-02-03 18:31:28 +09:00
Dean Herbert
56000ddb37
Merge pull request #31743 from bdach/fix-limit-distance-snap-to-current
...
Avoid moving already placed objects temporally when "limit distance snap to current time" is active
2025-02-03 17:48:24 +09:00
NecoDev
55f46e3b66
Added warning
2025-02-03 16:47:38 +08:00
Dean Herbert
df51d345c5
Change menus to fade out with a slight delay so settings changes are visible
...
Useful for cases like https://github.com/ppy/osu/pull/31778 , where a
change to one setting can affect another.
2025-02-03 17:38:17 +09:00
Dean Herbert
26a8fb6984
Make distance snap settings mutually exclusive
2025-02-03 17:34:55 +09:00
Bartłomiej Dach
ee7d281e73
Merge branch 'master' into fix-limit-distance-snap-to-current
2025-02-03 08:57:27 +01:00
Dean Herbert
5668a90781
Merge pull request #31737 from bdach/fix-post-refactor
...
Fix distance snap time part ceasing to work when grid snap is also active
2025-02-03 16:56:28 +09:00
Dean Herbert
b9f840c32e
Merge pull request #31742 from smoogipoo/fix-results-persistent-sounds
...
Fix results screen sounds persisting after exit
2025-02-03 16:39:47 +09:00
Salman Alshamrani
c587958f38
Apply depth ordering relative to selected item
2025-02-03 02:34:29 -05:00
Dean Herbert
a23de0b188
Avoid accessing WorkingBeatmap.Beatmap
every update call
...
Notice in passing.
Comes with overheads that can be easily avoided. Left a note for a
future (slightly more involved) optimisation.
2025-02-03 16:30:31 +09:00
Dan Balasescu
9033a4d480
Remove unused using
2025-02-03 14:20:56 +09:00
Dan Balasescu
210fa14759
Play sound via results screen instead
2025-02-03 14:15:46 +09:00
Nathan Du
48e30f4ee8
remove skinning section swell delay test
...
Replaced by TestHitSwellThenHitHit in TestSceneSwellJudgements.
2025-02-03 09:49:37 +08:00
Dean Herbert
6a18d18feb
Fix null handling when no items are populated but a selection is made
2025-02-03 02:39:45 +09:00
Dean Herbert
9c34819ff4
Add test coverage for grouped selection
2025-02-03 02:39:45 +09:00
Dean Herbert
645c26ca19
Simplify keyboard traversal logic
2025-02-03 02:24:27 +09:00
Dean Herbert
d74939e6e9
Fix backwards traversal of groupings and allow toggling groups without updating selection
2025-02-03 02:24:27 +09:00
Dean Herbert
764f799dcb
Improve selection flow using early exit and invalidation
2025-02-03 02:24:27 +09:00
Dean Herbert
d5dc55149d
Add initial difficulty grouping support
2025-02-03 02:24:27 +09:00
Dean Herbert
3cde11ab77
Re-enable masking by default
2025-02-03 02:24:26 +09:00
Dean Herbert
f65be009a3
Merge pull request #31747 from bdach/do-not-reset-online-info-on-save
...
Do not reset online information when saving beatmap
2025-02-02 22:24:56 +09:00
Dean Herbert
cf3a379b1c
Merge pull request #31368 from frenzibyte/mobile-fix-mania
...
Improve osu!mania playability on mobile devices
2025-02-01 14:49:46 +09:00
Dean Herbert
cc3bb590c9
Remove pointless comment
2025-02-01 14:48:13 +09:00
Nathan Du
e794389fe8
further adjust swell behavior
...
The outstanding visual issues of the clear animation is fixed. The
HandleUserInput state management is removed as it no longer seems
necessary.
2025-02-01 13:34:52 +08:00
Dean Herbert
334b578fb6
Merge pull request #31733 from bdach/bss/abstract-out-wizard
...
Abstract out `WizardOverlay` for multi-step wizard type screens
2025-02-01 14:10:35 +09:00
Nathan Du
a62a84a30f
fix code style
2025-01-31 20:48:29 +08:00
Nathan Du
ac17b4065f
change legacy spinner animations to match stable
...
Also removed a few fallbacks pointed out in code review that I don't
understand.
2025-01-31 20:16:28 +08:00
Bartłomiej Dach
7ef8616703
Fix broken user-facing messaging when beatmap hash mismatch is detected
2025-01-31 12:22:05 +01:00
Bartłomiej Dach
c3981f1097
Do not reset online info on beatmap save
2025-01-31 12:21:42 +01:00
Nathan Du
ad2b469b14
remove spinner-osu.png workaround
...
https://github.com/ppy/osu/issues/22084
2025-01-31 18:52:19 +08:00
Nathan Du
2a5540b392
remove ISkinnableSwell
...
This commit removes ISkinnableSwell for taiko swell animations. In place
of it, an event named UpdateHitProgress is added to DrawableSwell, and
the skin swells are converted to listen to said event and
ApplyCustomUpdateState, like how spinner skinning is implemented for
std.
2025-01-31 18:10:50 +08:00
Nathan Du
4fd8a4dc5a
Merge taiko swell components
...
Per <https://github.com/ppy/osu/pull/21601/files#r1064167756 >, taking a
variation of the "Make all swell main pieces implement
ISkinnableSwellPart" path. Should clean the interface up enough for
further refactors.
2025-01-31 16:55:39 +08:00
Bartłomiej Dach
8718483c70
Avoid moving already placed objects temporally when "limit distance snap to current time" is active
2025-01-31 09:51:13 +01:00
Bartłomiej Dach
20280cd195
Do not double up first control point of path
2025-01-31 09:01:42 +01:00
Dan Balasescu
cf2d0e6911
Fix results screen sounds persisting after exit
2025-01-31 16:22:37 +09:00
Joppe27
e2196e8b9b
Rename methods and skin component + add comments
2025-01-31 10:24:45 +08:00
Joppe27
988450a2c4
Add test for expire delay
...
Delaying the expiry of the drawable hitobject can potentially be dangerous and gameplay-altering when user inputs are accidentally handled. This is why I found a test necessary.
2025-01-31 10:24:45 +08:00
Joppe27
fe84e6e5f5
Adjust existing test to accommodate swell size
2025-01-31 10:24:45 +08:00
Joppe27
4a164b7b14
Add legacy taiko swell
2025-01-31 10:24:45 +08:00
Bartłomiej Dach
b4f63da048
Move control point double-up logic to LegacyBeatmapExporter
...
Done for two reasons:
- During review it was requested for the logic to be moved out of
`BezierConverter` as `BezierConverter` was intended to produce
"lazer style" sliders with per-control-point curve types,
as a future usability / code layering concern.
- It is also relevant for encode-decode stability. With how the logic
was structured between the Bezier converter and the legacy beatmap
encoder, the encoder would leave behind per-control-point Bezier curve
specs that stable ignored, but subsequent encodes and decodes in lazer
would end up multiplying the doubled-up control points ad nauseam.
Instead, it is sufficient to only specify the curve type for the
head control point as Bezier, not specify any further curve types
later on, and instead just keep the double-up-control-point for new
implicit segment logic which is enough to make stable cooperate
(and also as close to outputting the slider exactly as stable would
have produced it as we've ever been)
2025-01-30 15:28:47 +01:00
Bartłomiej Dach
261a7e537b
Fix distance snap time part ceasing to work when grid snap is also active
...
As pointed out in
https://github.com/ppy/osu/pull/31655#discussion_r1935536934 .
2025-01-30 14:42:44 +01:00
Bartłomiej Dach
d3b233b08f
Merge pull request #31732 from KareVulli/fix-timeline-selection
...
Fix stacked objects selection order on editor timeline
2025-01-30 14:31:42 +01:00
Salman Alshamrani
64b67252a2
Enable NRT on Column
2025-01-30 08:22:35 -05:00
Bartłomiej Dach
749704344c
Move implicit slider path segment handling logic to Bezier converter
...
The logic in `LegacyBeatmapEncoder` that was supposed to handle
the lazer-exclusive feature of supporting multiple slider segment types
in a single slider was interfering rather badly with the Bezier
converter. Generally it was a bit difficult to follow, too.
The nice thing about `BezierConverter` is that it is *guaranteed* to
only output Bezier control points. In light of this, the same double-up-
-the-control-point logic that was supposed to make multiple slider
segment types backwards-compatible with stable can be placed in
the Bezier conversion logic, and be *much* more understandable, too.
2025-01-30 14:03:51 +01:00