Dean Herbert
b956d32587
Add the ability to change multiplayer game type
2021-08-03 23:42:37 +09:00
Dean Herbert
e11b815b82
Serialise type
as snake_case
2021-08-03 23:13:39 +09:00
Dean Herbert
70da58323a
Drop MatchRuleset
terminology completely
2021-08-03 15:45:17 +09:00
Dean Herbert
66427127f0
Update naming in line with discussion
2021-08-03 15:09:03 +09:00
Dean Herbert
a42762e351
Merge branch 'multiplayer-rename-game-type' into multiplayer-match-rulesets
2021-08-03 14:55:51 +09:00
Dean Herbert
ee102e3755
Fix incorrectly overwritten ReferenceLoopHandling
setting
2021-08-03 14:55:20 +09:00
Dean Herbert
5ac3abac99
Add missing forceScheduled
parameter
2021-08-03 14:53:04 +09:00
Dean Herbert
556962a3d8
Add missing xmldoc comment
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-08-03 14:50:56 +09:00
Dean Herbert
2564c0c3df
Rename GameType
to MatchType
and make enum
instead of class
2021-08-03 14:46:31 +09:00
Dean Herbert
d93421b9b8
Expose a default TeamVs
room state so it can be consumed by tests
2021-08-02 18:50:22 +09:00
Dean Herbert
c7274355a4
Remove abstract
definitions from multiplayer states for now
2021-08-02 18:50:22 +09:00
Dean Herbert
617ff40de7
Add the ability to not use MessagePack when creating a HubConnector
2021-08-02 18:50:22 +09:00
Dean Herbert
1cd967b351
Add signalr json type handling specification
2021-08-02 18:50:22 +09:00
Dean Herbert
4cf2c6188d
Add union attributes for derived class deserialisation
2021-08-02 18:50:22 +09:00
Dean Herbert
ce92a47ec6
Add silly event handling hookups
2021-08-02 18:50:22 +09:00
Dean Herbert
359eb9c4ec
Add new event flow for match ruleset state handling
...
I'm totally not happy with how this is done, but don't have the energy
to rewrite everything just now.
2021-08-02 18:50:22 +09:00
Dean Herbert
035dfd071f
Add missing nullable specifications
2021-08-02 18:47:26 +09:00
Dean Herbert
d17b2b3268
Add boilerplate for server events
2021-08-02 18:47:26 +09:00
Dean Herbert
1d645d4ca9
Mark base classes non-abstract to fix messagepack serialisation
2021-08-02 18:47:26 +09:00
Dean Herbert
1c125eef12
Make Users
an IList
for more flexibility server-side
2021-08-02 18:47:26 +09:00
Dean Herbert
9d1e95caf0
Add flow for sending match ruleset specific messages to the server
2021-08-02 18:47:26 +09:00
Dean Herbert
e8338f2711
Add basic class structure for match rulesets and required state
2021-08-02 17:14:49 +09:00
Jamie Taylor
c1d8a7e2ad
Add and use 'Submit' select sample variant for particular components
2021-07-30 21:35:28 +09:00
Dean Herbert
185ea776f5
Fix incorrect authorisation loss exception handling with recent changes
2021-07-30 18:11:40 +09:00
Dean Herbert
3a5324c947
Fix aborting an APIRequest
potentially resulting in incorrect success
2021-07-29 13:01:52 +09:00
Dan Balasescu
2a94fc214f
Merge pull request #14046 from peppy/fix-rapid-reconnection
...
Fix `HubClientConnector` reconnecting with no delay on server-triggered error
2021-07-29 01:52:21 +09:00
Dean Herbert
cd2a1af6de
Fix HubClientConnector
reconnecting with no delay on server-triggered error
2021-07-28 20:46:02 +09:00
Dean Herbert
1ed4fdd5f5
Avoid deserialisation JSON request content when error is not present (or not relevant)
2021-07-28 20:13:40 +09:00
Dean Herbert
bb3747ffc9
Fix beatmap search requests double-escaping
...
Closes #14008 .
2021-07-25 17:06:40 +09:00
Dan Balasescu
ce30bd8cc7
Merge pull request #14003 from Game4all/localise-profile-overlay-header-stats
...
Localise profile overlay numeric statistics
2021-07-25 12:20:38 +09:00
Dean Herbert
48120faeb2
Fix inability to join a multiplayer room which has no password
2021-07-24 19:21:16 +09:00
Lucas A
ff3d38de6f
Localise accuracy display.
2021-07-23 22:37:08 +02:00
Dean Herbert
17168b8137
Fix authentication loss not handled correctly
...
This handles the case where on initial API connection, the server
responds with an `Unauthorized` response. It doesn't perform this same
checking/handling on every API request, which is probably what we want
eventually.
Opting to not address the full issue because I know this is going to be
a long one (see
05c50c0f6c/osu.Game/Online/API/APIAccess.cs (L233)
).
2021-07-23 19:03:19 +09:00
Bartłomiej Dach
6dbdfcc70c
Fix room password not being percent-encoded in join request
2021-07-22 23:11:58 +02:00
Dean Herbert
57e5f5575a
Fix derived API request types firing success when they shouldn't
...
The usual case of `virtual`/`override` being dangerous when logic is
added to the base implementation. As such, I've removed this completely.
2021-07-22 14:23:27 +09:00
Dan Balasescu
747c475b95
Merge pull request #13932 from peppy/fix-multiple-request-completion-states
...
Fix API request potentially firing failed events after completion
2021-07-21 15:11:03 +09:00
Bartłomiej Dach
1e634d9db0
Adjust user beatmap sections on profile overlay to match web
2021-07-20 21:55:17 +02:00
smoogipoo
b7c2d6b1ab
Merge branch 'master' into add-password-support
2021-07-19 22:23:09 +09:00
smoogipoo
0a43e54dfc
Fix request failing due to parameters
2021-07-19 21:24:22 +09:00
smoogipoo
a001e4aa16
Fix web request failing if password is null
2021-07-19 20:57:16 +09:00
Dean Herbert
80c2b1449b
Fix API request potentially firing failed events after completion
...
Specifically, `Cancel()` calls were not thread safe. Due to a series of
events, `ListPollingComponent` could call `Cancel` from a non-update
thread, leading to a race condition where both a `Success` and `Fail`
event can be fired.
This is intended to be the simplest fix possible, locking and guarding
specifically on the callbacks. Further work could be done in the future
to improve the flow surrounding `pendingFailure`, potentially reducing
redundant work and cleaning up the code, but that's not happening here.
Closes https://github.com/ppy/osu/issues/13632 .
2021-07-19 20:27:01 +09:00
smoogipoo
2eec524f27
Fix password not copied from multiplayer client
2021-07-19 20:20:08 +09:00
smoogipoo
2515785f93
Use room password to fill settings textbox
2021-07-19 20:03:32 +09:00
smoogipoo
063f14da98
Update test room manager to not return passwords
2021-07-19 20:03:27 +09:00
Dean Herbert
3c028ce05c
Add IDeepCloneable
interface and update existing CreateCopy
methods to use it
2021-07-19 12:54:17 +09:00
Dean Herbert
125bd36ab1
Send password in request ctor directly
2021-07-13 14:27:07 +09:00
Dean Herbert
c5319c06c2
Add password attributes to CopyFrom
to make testing work better
2021-07-12 18:54:07 +09:00
Dean Herbert
9f9d7f9125
Add remaining pieces of password flow (for osu-web join request)
2021-07-12 18:22:52 +09:00
Dean Herbert
f35d55c32f
Fix HasPassword
not being in sync with Password
value for client-side rooms
2021-07-12 15:49:19 +09:00
Dean Herbert
08c40938db
Add support for updating a room's password
2021-07-12 15:49:19 +09:00