Dean Herbert
4f0d55e1a9
Clean up code and add xmldoc and inline doc
2023-10-17 20:24:23 +09:00
Dean Herbert
80ac0c46d9
Fix final test
...
This looks to have been a WIP test, so I've brought it up to the point
of passing. I haven't given it much more attention than that, though.
2023-10-17 20:24:23 +09:00
Dean Herbert
9011170c3e
Adjust tests in line with new expectations
2023-10-17 20:24:23 +09:00
Dean Herbert
af7180a5b5
Add SpinnerSpinHistory
and tests
2023-10-17 20:10:22 +09:00
Dean Herbert
d9fc532a9f
Merge pull request #25152 from bdach/key-binding-deduplication
...
Clear pre-existing bindings of same key combination to single action
2023-10-17 17:49:51 +09:00
Dean Herbert
e081fa48a2
Fix various other inspections
2023-10-17 17:48:51 +09:00
Dean Herbert
5341a335a6
Bypass Parent
nullability checks for now
2023-10-17 17:48:45 +09:00
Bartłomiej Dach
2192c9f2c2
Remove unused using directive
2023-10-17 10:30:01 +02:00
Bartłomiej Dach
22c1a963e7
Remove unused field
2023-10-17 10:27:16 +02:00
Bartłomiej Dach
7abd7fe658
Remove redundant explicit array type specification
2023-10-17 10:26:02 +02:00
Bartłomiej Dach
5833c20be5
Merge pull request #25153 from peppy/store-speed-change-config
...
Persist the state of "show speed changes" between editor sessions
2023-10-17 10:23:00 +02:00
Dean Herbert
4885c55ef0
Merge branch 'master' into key-binding-deduplication
2023-10-17 17:17:44 +09:00
Dean Herbert
4381169a3f
Combine selection and input handling logic for beat snap grids across all rulesets
2023-10-17 17:09:42 +09:00
Dean Herbert
2a89a25790
Add beat snap grid to osu!taiko editor
...
Addresses https://github.com/ppy/osu/discussions/25150 .
2023-10-17 16:59:56 +09:00
Bartłomiej Dach
4cfc95c673
Add backwards migration of catch dash binding
2023-10-17 09:43:40 +02:00
Dean Herbert
1b9acdf55c
Abstract out common implementation of BeatSnapGrid
2023-10-17 16:42:52 +09:00
Dean Herbert
d26d4b8b79
Cache IScrollingInfo
at a HitObjectComposer
level automatically
2023-10-17 16:42:22 +09:00
Bartłomiej Dach
79a4b985fe
Use left mouse as alternative default binding for catch dash
...
This mirrors stable. Although the way stable does this is pretty dodgy,
see:
https://github.com/peppy/osu-stable-reference/blob/master/osu!/GameModes/Play/Rulesets/Fruits/RulesetFruits.cs#L274-L275
2023-10-17 09:31:29 +02:00
Dean Herbert
165cd07428
Persist the state of "show speed changes" between editor sessions
...
Addresses https://github.com/ppy/osu/discussions/25149 .
2023-10-17 16:01:02 +09:00
Dan Balasescu
6f4a2b9889
Merge pull request #25111 from peppy/mania-bonus-refactor
...
Change osu!mania "perfect" judgements to only award bonus score
2023-10-17 14:27:54 +09:00
Dan Balasescu
d2a3f14d5b
Merge branch 'master' into mania-bonus-refactor
2023-10-17 13:28:04 +09:00
Bartłomiej Dach
240d317928
Merge pull request #25143 from peppy/split-spinner-fix
...
Apply various fixes and cleanup to spinner logic
2023-10-16 22:30:24 +02:00
Bartłomiej Dach
828cedea33
Fix bindings being cleared if multiple bindings for same action have the same combination
...
This actually seems to be the case in catch (dash is bound to shift
twice). This is annoying but harmless, so let's work around it for now
to avoid ruining users' configs.
2023-10-16 22:20:26 +02:00
Bartłomiej Dach
3aae07d1ca
Add failing case for two bindings of single action bound to same key
2023-10-16 22:20:26 +02:00
Bartłomiej Dach
9c6166ec3d
Add migration to remove duplicate bindings
2023-10-16 22:20:26 +02:00
Bartłomiej Dach
639c96e60c
Prevent ruleset input managers from reading duplicate bindings
2023-10-16 21:02:24 +02:00
Bartłomiej Dach
90c44cee54
Implement method to deduplicate keybindings
2023-10-16 20:51:57 +02:00
Bartłomiej Dach
79273b88f6
Add stub of method to deduplicate bindings (and failing test)
2023-10-16 20:48:52 +02:00
Bartłomiej Dach
f14928cdfb
Merge branch 'master' into split-spinner-fix
2023-10-16 18:59:08 +02:00
Dan Balasescu
3065c9f23d
Fix potential frame misordering in generator
2023-10-16 22:49:41 +09:00
Bartłomiej Dach
b3d60c6d4f
Add inline commentary about workarounds in beatmap conversion test
2023-10-16 13:40:45 +02:00
Bartłomiej Dach
937694cd14
Fix conversion test failures
2023-10-16 13:37:11 +02:00
Dean Herbert
75011db3a7
Merge pull request #25142 from bdach/clean-up-scoring-difficulty-attributes
...
Remove no longer used scoring difficulty attributes
2023-10-16 20:16:20 +09:00
Bartłomiej Dach
f2436a5ecb
Remove no longer used scoring difficulty attributes
2023-10-16 12:36:58 +02:00
Dean Herbert
0bb95cfa88
Fix incorrect initial rotation transfer value
...
Should have been removed as part of https://github.com/ppy/osu/pull/24360 .
2023-10-16 19:34:55 +09:00
Dean Herbert
10bab61441
Tidy up lastAngle
usage and add assertion of maximum delta
2023-10-16 19:34:22 +09:00
Bartłomiej Dach
e2192806e4
Use ID
rather than SoloScoreID
...
The latter is apparently not going to be a thing anymore.
2023-10-16 12:02:55 +02:00
Dean Herbert
04af46b8c7
Change SpinFramesGenerator
to take degrees as input
2023-10-16 18:34:56 +09:00
Dean Herbert
28ee99f132
Add prospective test coverage of spinner input handling
2023-10-16 18:31:01 +09:00
Dean Herbert
cfa4adb24d
Add SpinFramesGenerator
class to simplify creating spinner tests
2023-10-16 18:25:40 +09:00
Dean Herbert
159b24acf7
Rename RateAdjustedRotation
to TotalRotation
2023-10-16 18:25:03 +09:00
Bartłomiej Dach
fb2293821a
Allow watching replay from multi/playlist results screens
2023-10-16 11:20:02 +02:00
Bartłomiej Dach
c4af8591a5
Preserve OnlineID
when importing scores
...
Previously, for lazer scores, the ID returned from `osu-web` was
discarded and replaced with -1, due to the fact that the appropriate
structures for unification with stable, as well as unification across
solo and multiplayer, were not in place yet.
Now we're at the point where scores from all the aforementioned sources
receive a `solo_scores` DB row, and as such, we can start treating
`solo_scores`-scheme IDs as canonical "online IDs" for a score.
2023-10-16 11:20:02 +02:00
Bartłomiej Dach
d5a733d244
Use solo score ID as OnlineID
when converting from MultiplayerScore
2023-10-16 11:20:02 +02:00
Bartłomiej Dach
b144cfd55c
Add LegacyOnlineID
handling to places that definitely need it
...
Mostly places that can interact with imported replays.
There are other places that use the online ID as a sort tiebreaker, or
to check presence of a score on results screens, but they should
probably still continue to only use `OnlineID`, since all scores with a
legacy online ID should have an online ID, but the converse is not
generally true.
2023-10-16 11:20:02 +02:00
Bartłomiej Dach
c53f4c144c
Encode/decode new OnlineID
into/from LegacyReplaySoloScoreInfo
2023-10-16 11:20:02 +02:00
Bartłomiej Dach
fa519984df
Move legacy online ID encode/decode to legacy property
2023-10-16 11:20:02 +02:00
Bartłomiej Dach
bfcb4f4f2d
Add failing test for legacy online ID decoding
2023-10-16 11:20:02 +02:00
Bartłomiej Dach
c1a817fec6
Add LegacyOnlineID
with backwards migration
2023-10-16 11:20:02 +02:00
Dan Balasescu
84be714d6b
Fix large instantaneous delta on first frame
...
Happens when the first update frame comes in before any mouse input.
2023-10-16 18:17:11 +09:00