1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-07 15:17:30 +08:00
Commit Graph

7591 Commits

Author SHA1 Message Date
Dean Herbert
15cef44351
Merge pull request #11275 from peppy/safer-user-ids
Send multiplayer user IDs via ctor for better thread safety
2020-12-24 12:20:48 +09:00
Dean Herbert
1ac93d4eeb
Merge pull request #11268 from bdach/fix-room-song-select-stuck
Fix realtime multiplayer song select getting stuck after selecting invalid beatmap
2020-12-24 11:26:07 +09:00
Dean Herbert
d6dadd12fa Send multiplayer user IDs via ctor for better thread safety 2020-12-24 10:39:15 +09:00
Bartłomiej Dach
414f886b02 Split timeshift & multiplayer "create" buttons
Multiplayer button gets new, different "Create match" text, and disable
logic in case of a dropped connection to the multiplayer server.
2020-12-23 22:03:57 +01:00
Bartłomiej Dach
c13acb609a Move out sizing logic to multiplayer screen 2020-12-23 22:03:30 +01:00
Bartłomiej Dach
05d9f23762 Move out create room button to separate class 2020-12-23 22:03:30 +01:00
Bartłomiej Dach
152df2ad84
Merge branch 'master' into better-error-handling 2020-12-23 18:13:50 +01:00
Bartłomiej Dach
e7a91b3dca
Merge branch 'master' into fix-room-song-select-stuck 2020-12-23 18:13:27 +01:00
Bartłomiej Dach
b1fb906773 Merge branch 'master' into fix-hard-crash-on-signal-r-exceptions 2020-12-23 17:37:49 +01:00
Bartłomiej Dach
e4959489b7 Improve user-facing error messages in room settings 2020-12-23 17:10:53 +01:00
Bartłomiej Dach
6c421b873d
Merge branch 'master' into fix-multiplayer-server-disconnection-flow 2020-12-23 16:55:22 +01:00
Bartłomiej Dach
980e85ce25 Refactor player exit logic to convey intention better 2020-12-23 16:16:24 +01:00
Dean Herbert
60be1bedc9
Merge pull request #11254 from frenzibyte/fix-multi-songselect-looping
Fix beatmap track not looping on multiplayer song selects
2020-12-23 22:35:11 +09:00
Bartłomiej Dach
c5692a5d6a Re-enable carousel selection after error 2020-12-23 14:19:30 +01:00
Bartłomiej Dach
582b0d2a74 Revert logic to be closer to original
Note the reversal of the order of operations in `endHandlingTrack()`
(done for extra safety, to ensure no more value changed events can be
fired at the point of cancelling looping).
2020-12-23 13:47:28 +01:00
Bartłomiej Dach
74f0c50d82 Merge branch 'fix-multiplayer-server-disconnection-flow' into fix-hard-crash-on-signal-r-exceptions 2020-12-23 13:31:36 +01:00
Bartłomiej Dach
c839892a4c Merge branch 'master' into fix-multiplayer-server-disconnection-flow 2020-12-23 11:57:43 +01:00
Dean Herbert
f9fd909187 Fix missed inspections 2020-12-23 18:07:38 +09:00
Bartłomiej Dach
64095307de
Merge branch 'master' into realtime-leaderboard 2020-12-23 09:56:47 +01:00
Dean Herbert
3c8f871b28 Move player constructor configuration to dedicated class; add AllowRestart parameter 2020-12-23 17:47:46 +09:00
Dean Herbert
0ddcab574f Rename method to avoid weird code analysis rule 2020-12-23 17:14:58 +09:00
Dean Herbert
7cc38f03d1 Use extension method in all call sites of fire-and-forget async usage 2020-12-23 17:10:34 +09:00
Dean Herbert
c3c3364d39 Simplify error handling of JoinRoom call 2020-12-23 16:56:57 +09:00
Dean Herbert
d27b83d678 More correctly handle fire-and-forget async call 2020-12-23 16:51:11 +09:00
Dean Herbert
91021eb8c4 Remove unused using 2020-12-23 16:49:17 +09:00
Dean Herbert
f5d27b40a8 Standardise flow for aborting realtime player exit to avoid double-exit call 2020-12-23 16:35:39 +09:00
Dean Herbert
569c4092ef Move notification to stateful client so it is only shown to the user from one location 2020-12-23 16:35:39 +09:00
Dean Herbert
a1d42dc4a0 Don't allow creating or joining a room when not connected to server 2020-12-23 16:35:39 +09:00
Dean Herbert
12df3056e6 Ensure appropriate screens handle exiting when the server gets disconnected
I would have liked for this to be handled via the `OnRoomChanged` event
flow, but this isn't present in RealtimeMatchSubScreen due to
inheritence woes.
2020-12-23 16:35:39 +09:00
Salman Ahmed
286884421d Apply track looping and play on track change 2020-12-23 08:47:34 +03:00
Dean Herbert
b632e44bac
Merge pull request #11256 from frenzibyte/disallow-joining-ended-realtime-room
Disallow joining ended rooms in realtime multiplayer
2020-12-23 14:30:00 +09:00
Dean Herbert
45dcd3242d Add comment explaining why things are done where they are 2020-12-23 13:57:48 +09:00
Salman Ahmed
3aa2b22838 Add early check for room status before joining 2020-12-23 05:52:10 +03:00
Salman Ahmed
7751ef4f3e Revert previous logic of join guarding 2020-12-23 05:50:15 +03:00
Bartłomiej Dach
08d87ccb1e
Merge branch 'master' into present-recommended 2020-12-22 23:36:13 +01:00
Bartłomiej Dach
3272804704 Fix potential crash when no submission token
Can happen because `TimeshiftPlayer` will schedule a screen exit on
token retrieval failure, and `RealtimePlayer`'s BDL won't even attempt
to create a leaderboard in that case.
2020-12-22 22:34:26 +01:00
Bartłomiej Dach
5efc3b9496 Start state display as hidden
Would otherwise flicker for a few frames when a new user was added to
the list of participants.
2020-12-22 21:49:42 +01:00
Salman Ahmed
a64ffcd294 Refrain from joining room if not allowed 2020-12-22 16:38:10 +03:00
Salman Ahmed
91d5c53643 Add method for checking room joinability 2020-12-22 16:36:17 +03:00
Salman Ahmed
e3483147e2 Move track looping logic into subscreens 2020-12-22 13:55:46 +03:00
Dean Herbert
6517acc510 Add leaderboard display to realtime player 2020-12-22 19:10:08 +09:00
Dean Herbert
ce806dd880 Replace the ready mark display with a state display, showing all participant states 2020-12-22 18:25:45 +09:00
Dean Herbert
3c33ea7f1c
Merge pull request #11239 from smoogipoo/realtime-multiplayer-2
Implement realtime multiplayer
2020-12-22 18:23:03 +09:00
Dean Herbert
59734229ff Remove unused using 2020-12-22 17:21:53 +09:00
Dean Herbert
30357a9447 Add loading layer to multi song select to show during settings confirmation 2020-12-22 17:08:04 +09:00
Dean Herbert
12876d7fb6 Add very basic error handling on ChangeSettings calls 2020-12-22 16:50:30 +09:00
smoogipoo
2d7174d99c Add padding to song select 2020-12-22 16:23:06 +09:00
Dean Herbert
3cf889b7c5 Fix some errors being completely ignored 2020-12-22 16:19:19 +09:00
Dean Herbert
17d924c755 Move timeshift settings overlay to correct namespace 2020-12-22 15:52:47 +09:00
Dean Herbert
8201fa8e34 Split out common implementation and private classes in MatchSettingsOverlay 2020-12-22 15:51:24 +09:00
smoogipoo
27e64bdb34 Schedule callback continuations 2020-12-22 15:31:07 +09:00
smoogipoo
ab90db7c8d Fix stuck lounge on join failure 2020-12-22 15:27:49 +09:00
Dean Herbert
85e93c5dde Fix main menu multiplayer icons being back to front 2020-12-22 15:22:27 +09:00
smoogipoo
81e2edc73f Use MRE with timeout to wait on match start 2020-12-22 14:59:11 +09:00
smoogipoo
dece41d050 Add todo 2020-12-22 14:58:47 +09:00
smoogipoo
3bf670510a Split into two actions 2020-12-22 14:55:25 +09:00
Dean Herbert
df5e1d83bd Allow recommender to potentially be null 2020-12-22 14:36:52 +09:00
Dean Herbert
8cc2ed3fae Move from OsuGameBase to OsuGame
Also moves to a more suitable namespace.
2020-12-22 14:28:27 +09:00
Dean Herbert
626b7615ad Move and rename some fields for better readability 2020-12-22 14:23:33 +09:00
Dean Herbert
dff865f335 Tidy up comments, code, and multiple linq enumeration 2020-12-22 14:12:02 +09:00
Dean Herbert
d229fbba6e
Merge branch 'master' into present-recommended 2020-12-22 13:52:29 +09:00
Dean Herbert
9de42f8646
Merge pull request #11238 from peppy/editor-timeline-selection-ux
Improve drag and selection UX on editor timeline
2020-12-22 12:58:24 +09:00
smoogipoo
0566ed1a9b Add button to main menu 2020-12-21 18:38:44 +09:00
Dean Herbert
423c6158e1 Highlight timeline drag area when hovered for better visibility 2020-12-21 18:10:11 +09:00
Dean Herbert
d1be7c23d9 Increase height of timeline drag area 2020-12-21 18:09:56 +09:00
Dean Herbert
d11d754715 Increase size of circle display on timeline 2020-12-21 18:09:37 +09:00
Dean Herbert
83f1350d7d Fix editor background not being correctly cleaned up on forced exit
Closes #11214. Should be pretty obvious why.
2020-12-21 17:49:11 +09:00
smoogipoo
9fa1f60b7d Fix incorrect footer being used 2020-12-21 17:31:15 +09:00
Dean Herbert
1dcee2fb39
Merge pull request #11228 from smoogipoo/nullable-endsat
Make room Duration/EndDate nullable
2020-12-21 17:24:40 +09:00
smoogipoo
14ea49a14d Merge branch 'nullable-endsat' into realtime-multiplayer-2 2020-12-21 16:22:16 +09:00
smoogipoo
dbffe735de Merge branch 'master' into realtime-multiplayer-2 2020-12-21 16:22:14 +09:00
smoogipoo
a59124dd93 Make room duration/endsat nullable 2020-12-21 16:18:39 +09:00
smoogipoo
82cf58353c Fix incorrect joinedroom null checks 2020-12-21 15:38:20 +09:00
Dean Herbert
27623822c4
Merge branch 'master' into realtime-ready-button 2020-12-21 11:19:03 +09:00
Bartłomiej Dach
bcd140b8df
Merge branch 'master' into realtime-ready-button 2020-12-20 18:20:57 +01:00
Bartłomiej Dach
b76ec79a70
Merge branch 'master' into realtime-participants-list 2020-12-20 18:20:22 +01:00
Bartłomiej Dach
4e8e4f0343
Merge branch 'master' into realtime-room-composite 2020-12-20 17:46:10 +01:00
smoogipoo
b31f4e9e85 Merge branch 'stateful-multiplayer-client' into realtime-multiplayer-2 2020-12-21 00:41:42 +09:00
smoogipoo
d127494c2d Fix thread-unsafe room removal 2020-12-21 00:39:31 +09:00
smoogipoo
3af702453f Implement realtime match song select 2020-12-21 00:37:13 +09:00
smoogipoo
275efd12b8 Fix room manager reference 2020-12-21 00:21:48 +09:00
smoogipoo
15480c006b Create the correct room subscreen 2020-12-21 00:21:30 +09:00
smoogipoo
5b4197a9ef Disable watching replays from realtime results screen 2020-12-21 00:14:54 +09:00
smoogipoo
07077b8f4e Add realtime player 2020-12-21 00:13:05 +09:00
smoogipoo
945ba59c8e Make timeshift player able to not allow pause 2020-12-21 00:06:44 +09:00
smoogipoo
1fdc19ee0f Add realtime match subscreen and related components 2020-12-21 00:05:38 +09:00
smoogipoo
55cdff5be7 Renamespace ready button 2020-12-20 23:54:04 +09:00
smoogipoo
a1ba4b6979 Split MatchSubScreen into abstract component + timeshift implementation 2020-12-20 23:40:19 +09:00
smoogipoo
b9e4a7196e Add realtime lounge subscreen 2020-12-20 23:36:56 +09:00
smoogipoo
455a84c73f Add realtime multiplayer screen 2020-12-20 23:32:57 +09:00
smoogipoo
fdfe3c2b36 Merge branch 'realtime-ready-button' into realtime-multiplayer-2 2020-12-20 23:11:06 +09:00
smoogipoo
a2ad0b0329 Merge branch 'realtime-participants-list' into realtime-multiplayer-2 2020-12-20 23:11:06 +09:00
smoogipoo
594db76cf3 Fix compilation errors 2020-12-20 23:10:45 +09:00
smoogipoo
4ada0e17c0 Merge branch 'abstract-room-manager' into stateful-multiplayer-client 2020-12-20 23:10:05 +09:00
smoogipoo
c33e693b8e Refactor InitialRoomsReceived to avoid extra bindables 2020-12-20 23:05:17 +09:00
smoogipoo
f876a329b1 Fire-and-forget leave-room request 2020-12-20 22:51:33 +09:00
smoogipoo
b002c46666 Add number of ready users to button 2020-12-20 18:49:51 +09:00
smoogipoo
19db35501e Fix incorrect end date usage in timeshift ready button 2020-12-20 18:44:36 +09:00
smoogipoo
ce2560b545 Extract value into const 2020-12-20 18:36:31 +09:00
smoogipoo
45107280a0 Make TimeBetweenPolls into a bindable 2020-12-20 18:34:54 +09:00