1
0
mirror of https://github.com/ppy/osu.git synced 2025-03-12 20:47:25 +08:00

1937 Commits

Author SHA1 Message Date
Dan Balasescu
748c2eb390
Refactor RoomSubScreen update 2025-02-11 12:43:54 +09:00
Dan Balasescu
78e5e0eddd
Refactor with a bit more null safety
In particular I don't like the non-null assert around
`GetCurrentItem()`, because there's no reason why it _couldn't_ be
`null`.
Consider, for example, if these panels are used in matchmaking where
there are no items initially present in the playlist.

The ruleset nullability part is debatable, but I've chosen to restore
the original code here.
2025-02-11 12:20:09 +09:00
Layendan
5e9f195117 Fix tests failing if playlist was empty 2025-02-09 23:27:28 -07:00
Layendan
f9bda0524a Update button text to include downloaded beatmaps and collection status 2025-02-09 18:45:13 -07:00
Layendan
d4c69f0c90 Assume room is setup correctly and remove duplicate maps before querying realm 2025-02-07 04:04:29 -07:00
Layendan
aad12024b0 remove using cache, improve tests, and revert loading 2025-02-07 03:13:51 -07:00
Dean Herbert
41c8f64806
Simplify naming of endpoints 2025-02-07 17:33:32 +09:00
Layendan
2aa930a36c Corrected notification strings 2025-02-06 17:46:49 -07:00
Layendan
6769a74c92 Add loading in case cache lookup takes longer than expected 2025-02-06 17:23:06 -07:00
Layendan
b7483b9442 Add playlist collection button w/ tests 2025-02-06 07:25:45 -07:00
Dan Balasescu
885ae7c735
Adjust styling 2025-02-06 14:25:08 +09:00
Dan Balasescu
d93f7509b6
Fix participant panels not displaying mods from other rulesets correctly 2025-02-06 14:24:09 +09:00
Dan Balasescu
84206e9ad8
Initial support for freemod+freestyle 2025-02-06 13:29:16 +09:00
Bartłomiej Dach
7d299bb2ad
Expose EndpointConfiguration directly in IAPIAccess 2025-02-05 13:31:37 +01:00
Dan Balasescu
7f8f528ae2
Add helper for testing mod/freemod validity 2025-02-05 16:44:52 +09:00
Dean Herbert
a93dabd33f
Merge branch 'master' into multiplayer-free-style 2025-02-04 21:48:39 +09:00
Dean Herbert
6c6063464a
Remove Scheduler.AddOnce from updateSpecifics
To keep things simple, let's not bother debouncing this. The debouncing
was causing spectating handling to fail because of two interdependent
components binding to `BeatmapAvailability`:

Binding to update the screen's `Beatmap` after a download completes:

5874706117/osu.Game/Screens/OnlinePlay/Match/RoomSubScreen.cs (L266-L267)

Binding to attempt a load request:

8bb7bea04e/osu.Game/Screens/OnlinePlay/Multiplayer/MultiplayerMatchSubScreen.cs (L67)

The first must update the beatmap before the second runs, else gameplay
will not load due to `Beatmap.IsDefault`.
2025-02-04 18:41:28 +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
Dan Balasescu
ca7a36d3d6
Remove unused usings 2025-01-29 23:32:44 +09:00
Dean Herbert
bc930e8fd3
Minimal clean-up to get things bearable
I plan to do a full refactor of `RoomSubScreen` at first opportunity.
2025-01-29 20:02:04 +09:00
Dean Herbert
e8d0d2a1d9
Combine more methods to simplify flow futher 2025-01-29 19:56:37 +09:00
Dean Herbert
a6814d1a8a
Make multiplayer change room settings more obvious as to what it does
"Edit" felt really weird.
2025-01-29 19:48:04 +09:00
Dean Herbert
07bff22200
Fix delay before difficulty panel displays fully 2025-01-29 19:30:57 +09:00
Dean Herbert
c70ff11085
Remove new bindables from RoomSubScreen 2025-01-29 19:06:14 +09:00
Dean Herbert
05200e8970
Add missing partial 2025-01-29 19:05:28 +09:00
Dean Herbert
d3f9804ef1
Combine more methods to simplify flow 2025-01-29 18:45:02 +09:00
Dan Balasescu
fc73037d9f
Add pill displaying current freestyle status 2025-01-27 18:46:45 +09:00
Dan Balasescu
ab4162e2aa
Various refactorings and cleanups 2025-01-25 19:32:59 +09:00
Dean Herbert
17b1739ae4
Combine countless update methods all called together into a single method 2025-01-24 18:00:05 +09:00
Dean Herbert
05b1002e9d
Adjust layout and code quality slightly 2025-01-24 15:57:13 +09:00
Layendan
d326f23576 Remove unused method 2025-01-23 15:39:18 -07:00
Layendan
b0a7237fd6 Fix formatting 2025-01-23 15:37:30 -07:00
Layendan
13c64b59af Inherit menu items from parent class 2025-01-23 15:36:20 -07:00
Dan Balasescu
e9d6411e61
Clean up error handling 2025-01-23 19:10:11 +09:00
Dan Balasescu
6dbf466009
Fix incorrect exception handling
In particular, when the exception is:
`AggregateException { AggregateException { HubException } }`,
then the existing code will only unwrap the first aggregate exception.

The overlay's code was copied from the extension so both have been
adjusted here.
2025-01-23 18:32:19 +09:00
Dan Balasescu
f2d8ea2997
Fix incorrect continuation 2025-01-23 18:25:55 +09:00
Dan Balasescu
a198b0830a
Add comment indicating RoomManager shouldn't exist 2025-01-23 17:18:01 +09:00
Dan Balasescu
9a623257f5
Adjust + fix tests 2025-01-23 16:27:38 +09:00
Layendan
f673d16a1f Fix formatting 2025-01-22 11:42:11 -07:00
Dan Balasescu
02369baec4
Join/Leave rooms via multiplayer server
Relevant functionality has been removed from `RoomManager` in the
process.
2025-01-22 21:44:45 +09:00
Layendan
2a5a2738e1 Add context menu to open in browser to rooms 2025-01-21 12:45:23 -07:00
Dean Herbert
459847cb80
Perform client side validation that the selected beatmap and ruleset have valid online IDs
This is local to playlists, since in multiplayer the validation is
already provided by `osu-server-spectator`.
2025-01-21 19:51:55 +09:00
Dean Herbert
f88102610d
Add tooltips explaining multiplayer mod selection buttons 2025-01-21 18:35:59 +09:00
Dean Herbert
c68a0bc7e3
Merge branch 'master' into multiplayer-free-style 2025-01-21 17:49:21 +09:00
Dan Balasescu
ad28de8ae3
Create multiplayer rooms via multiplayer server 2025-01-17 21:44:40 +09:00
Dan Balasescu
46e9da7960
Fix style display refreshing on all room updates 2025-01-16 15:34:25 +09:00
Dan Balasescu
be33addae1
Fix possible null reference 2025-01-08 18:57:25 +09:00
Dan Balasescu
9c05837b3a
Change to using a 'FreeStyle' boolean 2025-01-08 18:47:01 +09:00