1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-16 18:27:31 +08:00
Commit Graph

173 Commits

Author SHA1 Message Date
Dan Balasescu
a94180c8c6
Rename LoadAborted -> GameplayAborted, AbortGameplayReal -> AbortMatch 2023-12-01 18:26:59 +09:00
Dan Balasescu
894c31753b
Add initial support for aborting multiplayer games 2023-12-01 15:31:06 +09:00
Bartłomiej Dach
42fada578e
Centralise and improve messaging around online state
When the server requests a disconnect due to a user connecting
via a second device, the client will now log the user out on the first
device and show a notification informing them of the cause of
disconnection.
2023-11-21 15:15:46 +09:00
Bartłomiej Dach
1c612e2e0c
Implement client-side disconnection flow 2023-11-21 15:15:45 +09:00
Dean Herbert
e48c4fa430
Add missing ConfigureAwait calls 2023-10-12 18:15:15 +09:00
Dean Herbert
a591af2b97
Fix too many tasks in lookupRoom method 2023-10-12 18:11:04 +09:00
Dean Herbert
361d70f68a
Rename callback to match standards 2023-10-12 17:59:47 +09:00
Dean Herbert
d2aa601912
Allow localisation of the invite notification 2023-10-12 17:59:08 +09:00
Dean Herbert
a1a9bb75b7
Remove unnecessary schedule logic 2023-10-12 17:55:58 +09:00
Dean Herbert
cde4fad610
Simplify async lookup logic in Invited handling 2023-10-12 17:55:14 +09:00
Marvin Schürz
74ed3bc4ff Rename loadRoom to lookupRoom 2023-10-04 08:31:50 +02:00
Marvin Schürz
8e73dbc894 Load api room before displaying notification 2023-10-03 01:22:25 +02:00
Marvin Schürz
3879775219 Add room name to invite notification 2023-10-02 23:20:24 +02:00
Marvin Schürz
e81695bcac Display avatar in invitation notification 2023-10-02 23:10:51 +02:00
Marvin Schürz
574dc67a9e Add Invited task to multiplayer client 2023-10-02 22:53:28 +02:00
Marvin Schürz
d19cdbdefb Add InvitePlayer method to multiplayer server 2023-10-02 22:31:47 +02:00
timiimit
5d68701321 Copy StarRange when creating PlaylistItem 2023-05-14 12:08:37 +02:00
Dean Herbert
27c497145f Fix the MOTHERLOAD of undetected issues that are now visible thanks to net6.0 2022-12-16 18:16:26 +09:00
Dan Balasescu
7bc8908ca9 Partial everything 2022-11-27 00:00:27 +09:00
Dan Balasescu
b0faa009c1 Add some debugging for multiplayer test failures 2022-11-18 14:52:11 +09:00
Dan Balasescu
700000b583 Use custom notification with timer 2022-09-20 15:54:18 +09:00
Dan Balasescu
92b2417d4c Post notification when room joined 2022-09-16 21:10:11 +09:00
Dan Balasescu
433bb5ae24 Add ServerShuttingDownCountdown 2022-09-16 19:56:52 +09:00
Dean Herbert
13d9b2188b
Merge pull request #20145 from smoogipoo/multiple-countdowns
Implement support for multiple active countdowns in multiplayer
2022-09-08 19:15:30 +09:00
Dan Balasescu
2923c10cd8 Rewrite rooms to store multiple active countdowns
Update test to the new structure
2022-09-05 19:03:26 +09:00
Dan Balasescu
b5ec7d06dd Add auto-skip setting
Default to auto skip
2022-08-31 20:24:06 +09:00
Dan Balasescu
4107049b08 Fix host room status showing ended after playing 2022-08-09 21:43:10 +09:00
Dean Herbert
55a8a3563b Change MultiplayerMatchSubScreen to not immediately leave the room on connection loss
Instead, we can rely on `MultiplayerClient.Room` going `null`.
2022-07-17 21:19:10 +09:00
Dan Balasescu
b64c0d011c Isolate client's Room from TestMultiplayerClient 2022-07-01 19:23:25 +09:00
Dan Balasescu
f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09:00
Dan Balasescu
06ac3c1ad3 Make MultiplayerClient update CurrentPlaylistItem 2022-06-03 21:17:23 +09:00
Dan Balasescu
59622deb1f Add LoadAborted() event 2022-04-21 22:40:52 +09:00
Dan Balasescu
08d250fe58 Rename MatchStarted() -> GameplayStarted() 2022-04-21 22:39:24 +09:00
Dean Herbert
c0ad91796d Fix gameplay start flow 2022-04-13 20:57:40 +09:00
Dean Herbert
2bb0d9e6d3 Expose required classes/properties for mocking 2022-04-13 17:02:33 +09:00
Dean Herbert
20eca9bf6a Refactor TestSceneRankRangePill to not depend on TestMultiplayerClient 2022-04-12 19:39:24 +09:00
Dean Herbert
34457b4742 Expose mocked members as virtual on Multiplayer and SpectatorClient 2022-04-11 19:04:15 +09:00
Dan Balasescu
9ea6f9b1fe Remove some incorrectly-firing asserts 2022-04-08 21:44:44 +09:00
Dan Balasescu
62f5409191
Merge pull request #17725 from peppy/multiplayer-hotifx
Avoid multiplayer crashes when events arrive in unexpected order
2022-04-08 20:23:37 +09:00
Dean Herbert
5c571996d8 Avoid multiplayer crashes when events arrive in unexpected order
Intended to be a temporary fix for
https://github.com/ppy/osu/issues/17713 while a more permanent solution
is established. A proper fix is actually quite simple, but updating the
test to work with it is... *slightly* more complicated.

This hotfix will mean that if a `UserJoined` event arrives during the
unobserved window during room join (of the local user), the local user
still won't see the joining user, but the game won't crash as a result.
2022-04-08 17:55:47 +09:00
Dean Herbert
6bb8243212 Fix potential assert failure due to Room access from disconnection event 2022-04-08 17:41:03 +09:00
Dean Herbert
933a722cfc Remove secondary null checks which cannot exist (were on wrong thread) 2022-04-08 14:56:04 +09:00
Dean Herbert
64c63fe93a Move null check in JoinRoom on to update thread 2022-04-08 14:52:56 +09:00
Dean Herbert
d50f41225f Rename scheduleAsync to runOnUpdateThreadAsync 2022-04-08 14:43:53 +09:00
Dean Herbert
9ba99ed57d Ensure all access to MultiplayerClient.Room is on the update thread
This was an implicit requirement until now, but not well documented
everywhere. Adding this makes it much easier to understand the
requirement (and probably safer).
2022-04-08 14:42:56 +09:00
Dean Herbert
f92a31cd39
Merge pull request #17402 from smoogipoo/multiplayer-auto-countdown
Add multiplayer auto-start countdown timer
2022-03-25 20:31:14 +09:00
Dan Balasescu
0d88af19ae Fix local setting not being updated 2022-03-24 20:23:58 +09:00
Dean Herbert
e889d93441 Add asserts of playlist being non-empty after client operations 2022-03-24 17:52:20 +09:00
Dan Balasescu
d0fee53e1f Implement auto countdown timers
Change to using TimeSpan
2022-03-22 14:34:06 +09:00
Dan Balasescu
72843a6797 Add support for starting/stopping countdowns 2022-03-18 14:33:09 +09:00