Dean Herbert
|
88b3bf06e8
|
Merge branch 'master' into add-bundle-header
|
2020-12-16 13:40:15 +09:00 |
|
Dean Herbert
|
ef57ae6f40
|
Merge pull request #11127 from peppy/realtime-multiplayer
Add client-side models and interfaces required for multiplayer
|
2020-12-16 13:22:01 +09:00 |
|
smoogipoo
|
31fe28b8b3
|
Remove IStatefulMultiplayerClient
|
2020-12-16 12:32:53 +09:00 |
|
smoogipoo
|
4cd290af11
|
Split server interfaces
|
2020-12-16 12:31:11 +09:00 |
|
Dean Herbert
|
0d9c1cb5d3
|
Fix issues with data serialisation
|
2020-12-14 18:41:24 +09:00 |
|
Dean Herbert
|
64a2526678
|
Add header class and basic flow for propagating data updates
|
2020-12-14 17:33:23 +09:00 |
|
Dean Herbert
|
aedb18b9f2
|
Make RulesetID non-nullable
|
2020-12-11 18:14:33 +09:00 |
|
Dean Herbert
|
d3b2e2b36e
|
Change locking method to better allow cross-thread locking
|
2020-12-11 14:43:39 +09:00 |
|
Dean Herbert
|
719b08b22f
|
Make room setting's BeatmapID non-nullable
|
2020-12-11 14:11:42 +09:00 |
|
Dean Herbert
|
c1c0b9a9db
|
Add realtime to room categories
|
2020-12-11 14:10:45 +09:00 |
|
Dean Herbert
|
3fb41a20b5
|
Add room name to settings
|
2020-12-11 13:27:52 +09:00 |
|
Dean Herbert
|
c8e3c7e77b
|
Add stateful client interface
|
2020-12-09 17:45:07 +09:00 |
|
Dean Herbert
|
bb97eae8b1
|
Update outdated exception references in xmldoc
|
2020-12-09 16:02:37 +09:00 |
|
Dean Herbert
|
1e08b298b8
|
Remove unnecessary exception type
|
2020-12-09 16:01:09 +09:00 |
|
Dean Herbert
|
578e5cb92e
|
Also make InvalidStateException serializable
|
2020-12-09 15:59:13 +09:00 |
|
Dean Herbert
|
ab00a15555
|
Add JsonConstructor specs to allow for correct deserialization of readonly fields
|
2020-12-09 15:05:57 +09:00 |
|
Dean Herbert
|
bef52af1da
|
Move client state class to server implementation
Never used by client.
|
2020-12-09 15:05:33 +09:00 |
|
Dean Herbert
|
e09715d71e
|
Add ToString implementation to MultiplayerRoom for easier debug
|
2020-12-09 14:47:26 +09:00 |
|
Dean Herbert
|
c92c2cbfc0
|
Change exceptions which should be returned to the user to HubException type
See
https://docs.microsoft.com/en-us/dotnet/api/microsoft.aspnetcore.signalr.hubexception?view=aspnetcore-5.0.
|
2020-12-09 14:46:44 +09:00 |
|
Dean Herbert
|
48129c52d6
|
Change get-only property for now
|
2020-12-09 12:38:24 +09:00 |
|
Dean Herbert
|
427d41bab5
|
Add missing licence headers
|
2020-12-09 12:17:37 +09:00 |
|
Dean Herbert
|
0eb5b16454
|
Remove Empty() implementation for RoomSettings until otherwise necessary
|
2020-12-09 12:12:03 +09:00 |
|
Dean Herbert
|
1013749a83
|
Change user id type to int
|
2020-12-09 12:10:47 +09:00 |
|
Dean Herbert
|
fd4fa963ac
|
Standardise exception naming
|
2020-12-09 12:07:19 +09:00 |
|
Dean Herbert
|
2046cbe2d9
|
Add missing exceptions to server xmldoc
|
2020-12-09 12:05:50 +09:00 |
|
Dean Herbert
|
ff5150a14d
|
Fix typo in IMultiplayerClient xmldoc
|
2020-12-09 12:03:52 +09:00 |
|
Dean Herbert
|
02f5fda330
|
Add missing final newline in file
|
2020-12-08 21:15:10 +09:00 |
|
Dean Herbert
|
aa68ae4ff2
|
Change locking mechanism for multiplayer rooms to use using-disposal pattern
Was required to lock over `await` calls server-side.
|
2020-12-08 20:43:18 +09:00 |
|
Dean Herbert
|
d76fabedf9
|
Add note about LoadRequested only being sent to a subset of room users
|
2020-12-08 20:43:18 +09:00 |
|
Dean Herbert
|
021a116093
|
Add extra xmldoc covering the fact that MatchStarted is received by all users
|
2020-12-08 20:43:18 +09:00 |
|
Dean Herbert
|
df908f90b2
|
Add exception to be thrown when an operation is requested requiring host when not host
|
2020-12-08 20:43:18 +09:00 |
|
Dean Herbert
|
2433838d58
|
Add methods covering match start / end
|
2020-12-08 20:43:18 +09:00 |
|
Dean Herbert
|
2aedd82e27
|
Document room states and remove unnecessary WaitingForResults state
|
2020-12-08 20:43:18 +09:00 |
|
Dean Herbert
|
147db0abe2
|
Fix client naming and xmldoc
|
2020-12-08 20:43:18 +09:00 |
|
Dean Herbert
|
60550b73f7
|
Add missing states and xmldoc for all states' purposes
|
2020-12-08 20:43:18 +09:00 |
|
Dean Herbert
|
8eccfa476c
|
Add loading states
|
2020-12-08 20:43:18 +09:00 |
|
Dean Herbert
|
345352be67
|
Mark PerformUpdate as an instant handle method (doesn't really help with anything)
|
2020-12-08 20:43:18 +09:00 |
|
Dean Herbert
|
11a7057289
|
Add notification flow for user state changes in room
|
2020-12-08 20:43:18 +09:00 |
|
Dean Herbert
|
dbe048cdc6
|
Add client method for notifying about host changes
|
2020-12-08 20:43:18 +09:00 |
|
Dean Herbert
|
a4ca8d2998
|
Ensure multiplayer rooms are instantiated with a room ID
|
2020-12-08 20:43:18 +09:00 |
|
Dean Herbert
|
71de7ce0a3
|
Add missing methods to server interface
|
2020-12-08 20:43:18 +09:00 |
|
Dean Herbert
|
5f5c0d5533
|
Return room model when joining
|
2020-12-08 20:43:18 +09:00 |
|
Dean Herbert
|
5d2ca7fc39
|
Make remaining model classes nullable and serializable
|
2020-12-08 20:43:18 +09:00 |
|
Dean Herbert
|
2365d65610
|
Move business logic out of MultiplayerRoom
|
2020-12-08 20:43:18 +09:00 |
|
Dean Herbert
|
42b1e9d6a4
|
Add xmldoc coverage of MultiplayerRoom
|
2020-12-08 20:43:18 +09:00 |
|
Dean Herbert
|
4f449ba821
|
Rename idle state
|
2020-12-08 20:43:18 +09:00 |
|
Dean Herbert
|
5a231cef15
|
Add thread safety for external operations on MultiplayerRoom
|
2020-12-08 20:43:18 +09:00 |
|
Dean Herbert
|
327799c263
|
Rename multiplayer server file to match class
|
2020-12-08 20:43:18 +09:00 |
|
Dean Herbert
|
b3bdaaa7b5
|
Move exceptions to common code
|
2020-12-08 20:43:18 +09:00 |
|
Dean Herbert
|
e193f8214d
|
Remove unnecessary room id from leave room request
|
2020-12-08 20:43:18 +09:00 |
|