1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-26 04:32:55 +08:00
Commit Graph

2485 Commits

Author SHA1 Message Date
Dan Balasescu
6057037e35 Move playlist item beatmap population to MatchSubScreen 2021-12-10 20:08:59 +09:00
Dean Herbert
c9f6c5c673 Add MatchesOnlineID implementation for IScoreInfo 2021-12-10 18:34:31 +09:00
Dean Herbert
c6d0d6451d Change IScoreInfo.User to an interface type 2021-12-10 16:11:49 +09:00
Dean Herbert
bff02bedbf Rename APIScoreInfo to APIScore 2021-12-10 16:11:49 +09:00
Dean Herbert
dbb08f7d46 Use OnlineID for set operations 2021-12-10 16:11:48 +09:00
Dean Herbert
bf1418bafc Use OnlineID instead of legacy IDs for equality and lookups 2021-12-10 16:11:48 +09:00
Dan Balasescu
de0f37b08d Separate editing and adding playlist items 2021-12-10 15:26:48 +09:00
Dan Balasescu
c34c580ad4 Add client-side + interface implementation 2021-12-09 03:08:59 +09:00
Dan Balasescu
ce081c4acc Fix missing propagation of OwnerId in tests 2021-12-09 02:01:17 +09:00
Dan Balasescu
52230a6f00
Merge branch 'master' into multiplayer-delayed-playlist-load-broken 2021-12-07 22:45:05 +09:00
tbrose
882223b27f Using static call and verbatim symbol and optimizes regex pattern for username check 2021-12-07 02:38:10 +01:00
tbrose
b6d47a41f4 Adjusted RegEx pattern to also take special characters into account 2021-12-07 02:14:40 +01:00
Salman Ahmed
974987550f Move API request response size log to correct logging target 2021-12-07 04:01:56 +03:00
tbrose
7a0d4fca17 Fixes using Matches+Count instead of IsMatch negatively affecting performance 2021-12-07 01:41:21 +01:00
tbrose
f02e44d552 Fixes not matching coding style 2021-12-07 01:38:48 +01:00
tbrose
39594b7362 Fixes detection of mentioning of user falsely detects messages where the username is coincidentally contained in words of a message. 2021-12-06 23:32:21 +01:00
tbrose
0a6c221de4 Adds tests for checkContainsUsername function of MessageNotifier component 2021-12-06 22:07:47 +01:00
Dean Herbert
7a333ffdcc Add a paired schedule in SpectatorClient.BeginPlaying
Optimally, I would like to remove the `Schedule` in `EndPlaying`, but it
turns out quite a few test are relying on this at very least. Adding a
paired schedule ensure that order of operations is correct, at least.
2021-12-06 17:07:19 +09:00
Dean Herbert
ca1f96d2c2 Reword xmldoc of MultiplayerPlaylistItem.PlaylistOrder to better match actual behaviour 2021-12-06 13:03:14 +09:00
Dean Herbert
5ff452cc9a Update success bool to access Exception to stop exceptions from firing outwards 2021-12-06 12:29:11 +09:00
Dean Herbert
91aa38c4f6 Change playlist lookup to fail hard when failing 2021-12-06 12:28:48 +09:00
Bartłomiej Dach
38702beabf
Merge branch 'master' into i-ruleset-store 2021-12-04 15:05:39 +01:00
Dean Herbert
517a344bcc
Merge branch 'master' into new-multiplayer-playlist 2021-12-04 13:16:09 +09:00
Dan Balasescu
d5803e541b Give playlist items a PlayedAt date 2021-12-03 20:25:51 +09:00
Dean Herbert
1eed2436e6 Clean up unused resolved properties 2021-12-03 18:49:49 +09:00
Dean Herbert
2acf46154a Remove many unused resolutions of RulesetStore 2021-12-03 18:16:29 +09:00
Dean Herbert
e75e209053 Cache and consume IRulesetStore where feasible 2021-12-03 18:16:01 +09:00
Dean Herbert
dad5b06e84 Avoid sending empty parameters in GetBeatmapRequest 2021-12-03 16:23:39 +09:00
Dan Balasescu
0a1304b92a Remove gameplay_order, use existing playlist_order 2021-12-03 15:45:13 +09:00
Dan Balasescu
1d2d1bfcf3 Add UpdatedAt to MultiplayerPlaylistItem 2021-12-03 15:05:56 +09:00
Dan Balasescu
ba8af303cc Add GameplayOrder to MultiplayerPlaylistItem 2021-12-02 22:33:14 +09:00
Dean Herbert
5976982b12 Add missing xmldoc for MultiplayerClient events 2021-12-02 16:45:26 +09:00
Dean Herbert
624ec4580a Ensure updateLocalRoomSettings is only called after full population 2021-12-02 14:32:39 +09:00
Dean Herbert
a0ff86f5e8 Ensure all read and write operations on APIRoom are done on the update thread 2021-12-01 22:43:03 +09:00
Dan Balasescu
89c47708a1 Merge branch 'master' into new-multiplayer-playlist 2021-12-01 21:35:23 +09:00
Dan Balasescu
17bc0b51aa Merge branch 'playlist-item-add-owner' into new-multiplayer-playlist 2021-12-01 21:33:48 +09:00
Dan Balasescu
942e48ffbd Merge branch 'master' into new-multiplayer-playlist 2021-12-01 21:33:11 +09:00
Dan Balasescu
c38537a51a Initial implementation of MultiplayerPlaylist 2021-12-01 21:32:56 +09:00
Dan Balasescu
42ad726154
Merge branch 'master' into multiplayer-delayed-playlist-load-broken 2021-12-01 20:28:29 +09:00
Dan Balasescu
af704dfe5b
Merge pull request #15878 from peppy/beatmap-lookup-cache
Cache beatmap metadata lookups used by multiplayer
2021-12-01 20:13:21 +09:00
Dean Herbert
81f82c24c3 Use new API endpoint to do batch lookups 2021-12-01 17:45:41 +09:00
Dan Balasescu
7d0135063e
Merge pull request #15875 from peppy/fix-match-type-propagation
Fix match type not being propagated correctly to other users' settings
2021-12-01 11:23:28 +09:00
Dean Herbert
fe119da044 Add fetching of beatmap and user data when playlist panels come on screen 2021-11-30 19:52:36 +09:00
Bartłomiej Dach
23dd21339d Delay online fetch of non-current playlist item on room join 2021-11-30 19:44:50 +09:00
Dean Herbert
01bc330d1c Rename method to match new purpose 2021-11-30 19:42:46 +09:00
Dean Herbert
f58c5cd9c0 Update MultiplayerClient to use BeatmapLookupCache 2021-11-30 19:36:25 +09:00
Dean Herbert
23e297d414 Log output response sizes
Visibility is the first step towards action. Or something.
2021-11-30 19:09:13 +09:00
Dean Herbert
25b9575de0 Fix missing transfer of match type to settings 2021-11-30 17:09:40 +09:00
Dan Balasescu
8541db1e85 Merge branch 'master' into playlist-item-add-owner 2021-11-26 17:13:23 +09:00
Dan Balasescu
8a941fa422 Add owner id to PlaylistItem 2021-11-25 21:41:03 +09:00
Dan Balasescu
f712aeee01
Merge pull request #15795 from peppy/realm-integration/separate-download-flow
Split out download logic from main manager classes
2021-11-25 20:59:23 +09:00
Dean Herbert
e2ebcf7a26 Remove unnecessary manager parameter
Confused why I added this in the first place..
2021-11-25 18:36:03 +09:00
Dean Herbert
a2ab9f457d Move score download logic out of ScoreManager 2021-11-25 17:33:04 +09:00
Dean Herbert
716543b5b3 Move beatmap download logic out of BeatmapManager 2021-11-25 17:29:41 +09:00
Dean Herbert
cc1b91e4bd Split out legacy model export logic into LegacyModelExporter classes 2021-11-25 16:41:12 +09:00
Dean Herbert
7488ccd5fe Update all models to implement IHasNamedFiles 2021-11-25 16:41:12 +09:00
Dan Balasescu
ce8500a732
Merge branch 'master' into remove-model-file-list-inits 2021-11-24 19:46:42 +09:00
Dean Herbert
183b95cbc2 Rename BeatmapSetOnlineStatus to BeatmapOnlineStatus
This variable is used at more than just a set level.
2021-11-24 18:42:49 +09:00
Dean Herbert
ddbd4f9473 Merge branch 'master' into remove-model-file-list-inits 2021-11-24 18:39:01 +09:00
Dean Herbert
bbd3ea5b77 Update all actual usages of RulesetInfo.ID to use OnlineID instead 2021-11-24 15:50:26 +09:00
Dean Herbert
f283770f34 Update mock RulesetInfo usage to set OnlineID instead of ID 2021-11-24 15:50:26 +09:00
Dean Herbert
99a139dc98 Initialise all file lists at construction time (and remove setter) 2021-11-24 13:56:21 +09:00
Dan Balasescu
79a8e60468 Resolve inspection 2021-11-23 17:55:04 +09:00
Dan Balasescu
7906ae2b1d Update room immediately on join 2021-11-23 16:03:37 +09:00
Dan Balasescu
0633f3bcfe Add owner id to playlist items 2021-11-22 16:35:58 +09:00
Dan Balasescu
f64d20ed71 Fix APIRoom queue mode not updated on change 2021-11-22 13:46:01 +09:00
Dan Balasescu
4b498c7bd6 Merge branch 'master' into multi-queueing-modes 2021-11-22 07:46:45 +09:00
Salman Ahmed
af01b0ed48 BASE_DERIVED -> BASE_TYPE_MAPPING 2021-11-21 06:30:14 +03:00
Salman Ahmed
915bde6f96 Remove unnecessary MatchServerEvent mapping 2021-11-21 06:09:45 +03:00
Salman Ahmed
8b28bf31f6 Separate SignalR workaround types away from resolver 2021-11-20 15:11:02 +03:00
Salman Ahmed
0342923408 Fix SignalR messagepack formatter potentially initializing on iOS 2021-11-19 20:04:31 +03:00
Dan Balasescu
4c8c34b43f Use full name for round robin 2021-11-19 18:42:34 +09:00
Dan Balasescu
4e625b78e2 Update queue mode names 2021-11-19 18:28:43 +09:00
Dan Balasescu
f3f8ac2c43 Use single 2021-11-19 16:36:32 +09:00
Dan Balasescu
abb8b0de47 Also mutate multiplayer room playlist on callbacks 2021-11-19 16:35:45 +09:00
Dean Herbert
0c289bf8e5 Remove pointless namespace 2021-11-19 14:46:53 +09:00
Dan Balasescu
1dacc50ecb Merge branch 'master' into multi-queueing-modes 2021-11-18 15:16:27 +09:00
Dan Balasescu
e4aec3f519
Merge pull request #15648 from peppy/playlist-show-invalid-beatmaps
Highlight invalid playlist items during room creation
2021-11-17 22:24:22 +09:00
Dean Herbert
7c2e79f911 Update all simple cases of switching to IWorkingBeatmap 2021-11-17 20:56:57 +09:00
Dean Herbert
f74afb48fd Fix StandAloneChatDisplay's TextBox having different corner radius 2021-11-16 17:50:57 +09:00
Dean Herbert
6dd684588a Merge branch 'master' into playlist-show-invalid-beatmaps 2021-11-16 17:25:33 +09:00
Dean Herbert
aa188d5a52 Add ability for playlist items to be marked as invalid 2021-11-16 17:01:24 +09:00
Dan Balasescu
ddf2fade1a
Merge branch 'master' into playlist-item-iruleset 2021-11-16 16:19:10 +09:00
Dan Balasescu
c8038df509 Fix CI inspections 2021-11-16 16:06:30 +09:00
Dan Balasescu
00f0321f25 Add nullable equality comparers 2021-11-16 15:44:47 +09:00
Dan Balasescu
29d0d5badf Rename QueueModes -> QueueMode 2021-11-16 14:53:10 +09:00
Dan Balasescu
01f3649d75 Rename variables for readability 2021-11-16 14:44:47 +09:00
Dan Balasescu
f414877d00 Rename UserID -> OwnerID 2021-11-16 14:37:54 +09:00
Dean Herbert
71fef241df Fix recursive equality call on APIBeatmap and APIBeatmapSet 2021-11-16 14:13:47 +09:00
Dan Balasescu
9076519710 Give MultiplayerRoom a playlist, remove RequestAllPlaylistItems() 2021-11-16 14:13:43 +09:00
Dean Herbert
9207b87b76 Add back interface equality but limit to only matching types 2021-11-16 12:35:18 +09:00
Dan Balasescu
f0593115b2 Remove RemovePlaylistItem() server method for the time being 2021-11-16 12:08:53 +09:00
Dan Balasescu
f743a3647f Rename APIPlaylistItem -> MultiplayerPlaylistItem 2021-11-15 23:14:27 +09:00
Dean Herbert
5489b19c57 Update PlaylistItem to use IRulesetInfo 2021-11-15 16:13:03 +09:00
Dean Herbert
611b9fe942 Remove now unused implementations of interface equality 2021-11-15 14:50:09 +09:00
Dean Herbert
285b161da7 Update other usages of online ID comparisons to use new extension method 2021-11-15 14:44:08 +09:00
Dan Balasescu
ce47f456ec Change API for retrieving playlist items on join 2021-11-13 04:42:14 +09:00
Dan Balasescu
dbc23e224f Fix further test failures 2021-11-13 03:34:45 +09:00
Dan Balasescu
25202316cc Add user id to APIPlaylistItem 2021-11-13 00:23:35 +09:00
Dan Balasescu
3b24ec3643 Merge branch 'master' into multi-queueing-modes 2021-11-12 22:16:04 +09:00
Dean Herbert
9f7e2750a5 Merge branch 'master' into beatmap-collection-inteface-types 2021-11-12 19:41:29 +09:00
Dean Herbert
54cd1158a4 Add IBeatmapSetInfo equality support 2021-11-12 18:16:36 +09:00
Dean Herbert
a67e156883 Add IBeatmapInfo equality support 2021-11-12 18:11:33 +09:00
Dean Herbert
692e846acd Rename BeatmapSetInfo.OnlineBeatmapSetID to OnlineID to match interface 2021-11-12 17:52:44 +09:00
Dean Herbert
6a098a8634 Rename BeatmapInfo.OnlineBeatmapID to OnlineID to match interface 2021-11-12 17:46:24 +09:00
Dan Balasescu
07a7b4bcdc Merge branch 'master' into multi-queueing-modes 2021-11-11 22:19:30 +09:00
Dean Herbert
98fa253e1e Replace usage of TypeNameHandling.All with custom type converter 2021-11-11 14:04:19 +09:00
Dean Herbert
16418ac2ab Remove outdated comments 2021-11-11 14:02:12 +09:00
Dan Balasescu
1bc6a58528 Fix RoomUpdated() not invoked on item changes 2021-11-10 21:23:18 +09:00
Dan Balasescu
78793d8624 Update interface to remove items 2021-11-10 19:58:25 +09:00
Dan Balasescu
71f3a64165 Fix APIPlaylistItem serialisation 2021-11-10 18:25:14 +09:00
smoogipoo
35a5182ebf Merge branch 'master' into multi-queueing-modes 2021-11-10 15:01:13 +09:00
Bartłomiej Dach
5cb533004d
Add test coverage for favourite button 2021-11-08 11:53:53 +01:00
smoogipoo
c716051530 Merge branch 'master' into multi-queueing-modes 2021-11-08 19:19:50 +09:00
Dean Herbert
8b85c2c8de
Merge pull request #15491 from peppy/remove-stupid-weak-reference-bindable-events
Revert weird event flow in model manager/importers
2021-11-08 15:19:58 +09:00
Dan Balasescu
b5a6fd3f00
Merge pull request #15517 from peppy/fix-beatmap-wedge-user-display
Fix `LinkFlowContainer` not creating user links supporting full `IUser` specification
2021-11-08 15:06:28 +09:00
Dean Herbert
a2dfb5fd8c
Merge pull request #15513 from bdach/beatmap-card/statistics
Add statistics display to beatmap card
2021-11-08 14:45:56 +09:00
Dean Herbert
6b6dd93e9e Fix LinkFlowContainer not creating user links supporting full IUser specification 2021-11-08 14:17:47 +09:00
Dean Herbert
78aef9ce86
Merge branch 'master' into remove-stupid-weak-reference-bindable-events 2021-11-08 13:35:49 +09:00
Dean Herbert
1589b50d6e Merge branch 'master' into beatmap-card/statistics 2021-11-08 13:28:31 +09:00
Bartłomiej Dach
c0b5b0e909
Add new statistic types to online info 2021-11-07 21:33:41 +01:00
Dean Herbert
0ecf5f201c Rename User to APIUser and move to correct namespace 2021-11-07 11:26:01 +09:00
Dean Herbert
96ef210a4d Fix backward state set 2021-11-06 16:45:55 +09:00
Dean Herbert
bc17446055 Merge branch 'master' into user-lookup-by-username-cleanup 2021-11-06 14:38:30 +09:00
Dean Herbert
2881ce0f5a Merge branch 'master' into remove-stupid-weak-reference-bindable-events 2021-11-06 14:08:39 +09:00
Dean Herbert
9a7c75508e Merge branch 'master' into user-class-cleanup 2021-11-05 19:56:18 +09:00
Dean Herbert
54f72d68ca Revert weird event flow in model manager/importers 2021-11-05 19:12:49 +09:00
Dean Herbert
6c385ccd29 Move second generic to abstract model downloader rather than interface type 2021-11-05 17:37:05 +09:00
smoogipoo
aee0f39c80 Merge branch 'master' into multi-queueing-modes 2021-11-05 16:06:41 +09:00
smoogipoo
7bbb2a7a67 Fix post-merge issues 2021-11-05 15:57:32 +09:00
smoogipoo
e6deb0c873 Merge branch 'master' into multi-queueing-modes 2021-11-05 15:57:25 +09:00
Dean Herbert
f2700b0a6d Expose bot state via interface 2021-11-05 13:40:44 +09:00
Dean Herbert
ead64282dd Split out a couple more nested classes 2021-11-05 13:40:44 +09:00
Dean Herbert
86540d1fb6 Update existing usages of Author as string to access Username directly 2021-11-04 18:57:54 +09:00
Dean Herbert
b9983add15 Rename User to APIUser and move to correct namespace 2021-11-04 18:21:31 +09:00
Dean Herbert
eb17d897a3 Finally, remove the To* methods as they have no usages 2021-11-04 17:09:53 +09:00
Dean Herbert
7bab487621 Remove usage of ToBeatmapInfo in APIScoreInfo.CreateScoreInfo 2021-11-04 17:09:53 +09:00
Dean Herbert
8f459e6ce8 Fix APIBeatmapSet.Beatmaps being IEnumerable, causing stupid issues 2021-11-04 16:44:17 +09:00
Dean Herbert
9c926e5514 Remove BeatmapSetInfo.OnlineInfo and all usages 2021-11-04 15:23:04 +09:00
Dean Herbert
0ab50f1cc9 Add inline comment explaining why we are manually populating beatmap.BeatmapSet 2021-11-04 13:45:59 +09:00
Dean Herbert
9f9c960fe3 Revert PlaylistItem.APIBeatmap to be private 2021-11-04 13:36:32 +09:00
Dean Herbert
05f1fd4bc9 Remove unnecessary properties and parameters 2021-11-04 13:33:54 +09:00
Dean Herbert
3453160a8b Change PlaylistItem.Beatmap to be an IBeatmapInfo 2021-11-04 13:16:56 +09:00
Dean Herbert
1d8e253112 Expose PlaylistItem.APIBeatmap for now 2021-11-04 11:53:26 +09:00
Dean Herbert
d85224d7ad Merge branch 'master' into localisable-text-flow 2021-11-03 17:09:46 +09:00
Bartłomiej Dach
195a141625
Fix score tracker not tracking non-online scores correctly 2021-11-02 22:51:25 +01:00
Bartłomiej Dach
11de924704
Use LocalisableStrings where possible to leverage localisable text flow 2021-11-02 21:42:02 +01:00
Dean Herbert
fe9b8f3274
Merge pull request #15432 from peppy/fix-beatmap-availability-potentially-wrong
Fix multiplayer potentially getting incorrect beatmap availability state after changing beatmaps
2021-11-03 04:54:22 +09:00
Dean Herbert
a97e5fbd89
Merge pull request #15431 from peppy/fix-unauth-api-requests
Fix unauthenticated API requests no longer working
2021-11-03 04:35:48 +09:00
Dean Herbert
85037dfb70 Fix multiplayer potentially getting incorrect beatmap availability state after changing beatmaps 2021-11-03 04:32:21 +09:00
Dean Herbert
f67f42dc5b
Merge pull request #15430 from bdach/fix-multi-submission
Fix multiplayer score submission not working
2021-11-03 04:10:23 +09:00
Dean Herbert
51e92e1b2d Check for null/empty instead 2021-11-03 04:09:31 +09:00
Dean Herbert
8d0b32981f Fix unauthenticated API requests no longer working 2021-11-03 03:30:15 +09:00
Bartłomiej Dach
c028275d6c
Fix multiplayer score submission not working 2021-11-02 19:16:44 +01:00
Dean Herbert
c85a4dca28 Fix crash when attempting to view global leaderboards 2021-11-03 02:47:33 +09:00
Dean Herbert
135df0e190 Avoid adding null users to RecentParticipants 2021-11-02 17:13:37 +09:00
Dean Herbert
b0bd39fc49 Fix multiplayer room participants display not updating as new users join/leave
Can add tests on request, but not sure the code around this area is here
to stay permanently. Should be pretty low risk.

- Closes https://github.com/ppy/osu/issues/14788.
2021-11-02 17:13:37 +09:00
Dean Herbert
3a5aed1182 Ensure APIScoreInfo.Mods is non-null 2021-11-01 22:59:12 +09:00
Dean Herbert
caa9d8997b Merge branch 'master' into score-refactor/less-create-score-info 2021-11-01 22:59:11 +09:00
Bartłomiej Dach
5dcff7d8b7
Merge branch 'master' into score-refactor/less-create-score-info 2021-11-01 11:41:20 +01:00
Dan Balasescu
95b1f5830d
Merge branch 'master' into beatmap-refactor/beatmap-overlays 2021-11-01 19:32:07 +09:00
Dan Balasescu
8c38698506
Merge pull request #15363 from peppy/beatmap-refactor/get-and-present
Update `GetScoreRequest` and `PresentBeatmap` to accept interface types
2021-11-01 19:28:28 +09:00
smoogipoo
65b920e4c1 Merge branch 'master' into multi-queueing-modes 2021-11-01 18:37:16 +09:00
Dan Balasescu
65d2b54ef6
Merge pull request #15387 from bdach/fix-score-download-tracker
Fix incorrect state transition in score download tracker
2021-11-01 18:36:35 +09:00
Dean Herbert
b21e0e7efb Merge branch 'beatmap-refactor/get-and-present' into beatmap-refactor/beatmap-overlays 2021-11-01 18:07:51 +09:00
Dean Herbert
602fe372c2 Merge branch 'score-refactor/isolated-serialisation' into beatmap-refactor/get-and-present 2021-11-01 18:06:53 +09:00
Bartłomiej Dach
cd4681496a
Fix incorrect state transition in score download tracker 2021-11-01 09:35:02 +01:00
Dean Herbert
722e0d50bb Fix BeatmapInfo not being correctly populated in CreateScoreInfo call 2021-11-01 15:54:39 +09:00
Dean Herbert
b98faf6159 Merge branch 'master' into score-refactor/isolated-serialisation 2021-11-01 15:49:25 +09:00
smoogipoo
94dce3f92a Remove whitespace 2021-11-01 15:43:19 +09:00
Dean Herbert
227963047a Fix hash validity check function returning incorrect results after soft deleting a beatmap
The soft-deleted one would potentially match before the newly imported
copy, resulting in a false-positive hash mismatch.
2021-11-01 15:15:45 +09:00
Dean Herbert
708b57348d Change loose api ordering requirement to throw instead 2021-11-01 13:22:16 +09:00
Dean Herbert
269a8df0ec Fix HasReplay not being corrrectly implemented by APIScoreInfo 2021-11-01 13:20:37 +09:00
Dean Herbert
19feae4a8e
Merge branch 'master' into beatmap-refactor/download-tracker 2021-11-01 13:15:36 +09:00
Bartłomiej Dach
8053b2c320
Merge branch 'master' into score-refactor/isolated-serialisation 2021-10-30 15:07:34 +02:00
Dean Herbert
5311fe2d02
Merge branch 'master' into beatmap-refactor/beatmap-overlays 2021-10-29 22:37:29 +09:00
Dean Herbert
a16c8f1ebc Update all beatmap overlay views to use APIBeatmap/APIBeatmapSet 2021-10-29 18:50:55 +09:00
Dean Herbert
b8ee7e05f4 Expose more pieces of APIBeatmap for testing purposes 2021-10-29 18:35:27 +09:00
Dean Herbert
8ad33d43d0 Merge branch 'beatmap-refactor/get-and-present' into beatmap-refactor/beatmap-overlays 2021-10-29 18:01:17 +09:00
Dean Herbert
b5834044e0 Update GetScoreRequest to support requests with interface types 2021-10-29 17:43:39 +09:00
smoogipoo
2408011c81 Don't replace identical playlist items 2021-10-29 16:44:51 +09:00
smoogipoo
f732c44265 Fix broken equality comparer 2021-10-29 16:23:10 +09:00
smoogipoo
42dfb341da Fix PlaylistItemChanged() not updating current item 2021-10-29 15:44:42 +09:00
Dean Herbert
17a83f701a Store mods as APIMods for the time being 2021-10-29 15:13:49 +09:00
Dean Herbert
06b6bcfd29 Add xmldoc for CreateScoreInfo function for now
I don't actually know how temporary this one is going to be. The usages
are quite deep - ie. converting to a `ScoreInfo` to get a calculated
total score for ordering purposes.
2021-10-29 14:51:07 +09:00
Dean Herbert
f68d6dbc8f Update score submission serialisation tests to use SubmittableScore 2021-10-29 14:32:31 +09:00
Dean Herbert
cd7bd935f6 Remove Statistics from interface until we figure how to properly deserialise 2021-10-29 14:18:10 +09:00
Dean Herbert
3f030cebf4 Remove local score copying in GetScoresRequest to allow APIScoreInfo.Beatmap to be APIBeatmap 2021-10-29 14:14:25 +09:00
Dean Herbert
54073d8a1e Isolate score submissions model and remove serialisation from ScoreInfo 2021-10-29 14:13:43 +09:00
Dean Herbert
1944c255a7 Implement score interfaces 2021-10-29 13:49:30 +09:00
Dean Herbert
817369903a Rename API score classes 2021-10-29 13:40:56 +09:00
Bartłomiej Dach
6f863ca204
Adjust game-side text flow containers to part-based model 2021-10-29 06:34:08 +02:00
Dean Herbert
f3811edb0b Add inline comment explaining usage of RequiresChildrenUpdate override 2021-10-29 11:57:54 +09:00
Dean Herbert
dc44734db2 Simplify null check in ScoreDownloadTracker and remove unnecessary ID check 2021-10-29 11:56:17 +09:00
Dean Herbert
75a088d4f4 Fix variable name mismatch 2021-10-29 11:54:42 +09:00
Dean Herbert
748003b016 Simplify Manager null check to a single pre-check 2021-10-29 11:54:19 +09:00
Dean Herbert
3b095e1626 Merge branch 'master' into beatmap-refactor/download-tracker 2021-10-29 11:50:54 +09:00
smoogipoo
f076b72fbe Merge branch 'master' into multi-queueing-modes 2021-10-29 10:48:16 +09:00
Dan Balasescu
44ba4419a2
Merge branch 'master' into beatmap-refactor/tournament 2021-10-28 15:25:34 +09:00
Dean Herbert
290f583ae0 Fix incorrect initial state 2021-10-28 00:59:48 +09:00
Dean Herbert
746d6a4c16 Fix some oversights and test failures 2021-10-27 23:42:27 +09:00
Dean Herbert
dd06c617b1 Update OnlinePlayBeatmapAvailabilityTracker in line with new download tracker
The structure here has changed a bit - rather than deriving from the
donwload tracker I moved the additional logic into the callbacks. I
think this feels better?
2021-10-27 21:00:46 +09:00
Dean Herbert
6339064dbd Remove old versions of DownloadTrackingComposite 2021-10-27 21:00:46 +09:00
Dean Herbert
692db9a9ec Remove unnecessary verification flow from score download tracking 2021-10-27 21:00:46 +09:00
Dean Herbert
9015ac6ba8 Implement new version of download tracker 2021-10-27 21:00:46 +09:00
Dean Herbert
db6343c44c Correctly redirect BPM from API to interface 2021-10-27 17:09:51 +09:00
Dean Herbert
40d963fc8a Allow setting of APIBeatmap.Length (and don't serialise twice) 2021-10-27 16:44:21 +09:00
Dean Herbert
95837990f3 Apply some second-pass inspections that appeared after previous changes 2021-10-27 13:09:30 +09:00
Dean Herbert
6944151486 Apply batch fixing of built-in types using var 2021-10-27 13:04:41 +09:00
Dan Balasescu
f687ed8599
Merge pull request #15283 from peppy/test-api-beatmap-set
Add ability to make test `APIBeatmapSet`s from test scenes
2021-10-26 15:34:19 +09:00
Dan Balasescu
efe6763226
Merge branch 'master' into move-online-beatmap-metrics 2021-10-26 14:24:40 +09:00
Dan Balasescu
676e7ff2a6
Merge pull request #15287 from peppy/get-beatmap-request-via-interface
Allow API beatmap requests using interface type
2021-10-26 13:50:46 +09:00
Dean Herbert
d7ac94038a Update GetBeatmapRequest to use AddParameter 2021-10-26 12:05:31 +09:00
Bartłomiej Dach
a49a1f41cb
Merge branch 'master' into move-online-beatmap-metrics 2021-10-25 20:33:49 +02:00
Dean Herbert
b65d199f6a Fix incorrect length when calling APIBeatmap.ToBeatmapInfo 2021-10-25 17:01:47 +09:00
Dean Herbert
6adb0f068b Fix multiple issues with json serialisation of online info (causing tournament failures) 2021-10-25 16:52:50 +09:00
Dean Herbert
67ef1c40e6 Allow API beatmap requests using interface type 2021-10-25 15:59:40 +09:00
Dean Herbert
2c308f3008 Rename BeatmapMetrics to APIFailTimes 2021-10-25 15:34:41 +09:00
Dean Herbert
20baae9094 Move online metrics out of BeatmapInfo model 2021-10-25 15:32:18 +09:00
Dean Herbert
045dd94a6e Move online metrics out of BeatmapSetInfo model 2021-10-25 15:12:39 +09:00
Dean Herbert
19312435d0 Add ability to make test APIBeatmaps from test scenes
Allow tests to create a sample `APIBeatmapSet`

One step towards removing calls to `ToBeatmap` / `ToBeatmapSet`.
2021-10-25 14:18:13 +09:00
smoogipoo
7d910ebb57 Add SignalR binding for PlaylistItemChanged 2021-10-22 22:37:08 +09:00
smoogipoo
76eff7f6b1 Fix incorrect indexing 2021-10-22 21:57:29 +09:00
Dean Herbert
c701579c69 Refactor BeatmapMetadataContainer and usages to use interface types 2021-10-22 21:38:50 +09:00
smoogipoo
6775151c30 Add Expired bool to APIPlaylistItem 2021-10-22 21:36:36 +09:00
Dean Herbert
28d8820976
Merge pull request #15224 from peppy/no-more-beatmap-metadata-base
Remove `BeatmapMetadata` base class from API classes
2021-10-22 21:07:29 +09:00
smoogipoo
ec02e16c81 Add playlist item change event 2021-10-22 20:53:45 +09:00
smoogipoo
4e6a02bde9 Fix missing QueueMode copies 2021-10-22 20:14:04 +09:00
smoogipoo
db87e42d47 Remove beatmap/ruleset/etc from MultiplayerRoomSettings 2021-10-22 16:48:28 +09:00
Dean Herbert
ea473428e8 Fix incorrect length mapping in APIBeatmap 2021-10-22 15:54:40 +09:00
Dean Herbert
de33b2f45a Return set metadata if available before falling back to empty object 2021-10-22 15:00:31 +09:00
smoogipoo
a1c9b56083 Rename modes 2021-10-22 12:55:37 +09:00
Dean Herbert
fb7cf35481 Remove BeatmapMetadata base class from APIBeatmap 2021-10-21 21:48:14 +09:00
Dean Herbert
6dd54a417f Remove BeatmapMetadata base class from APIBeatmapSet 2021-10-21 21:32:07 +09:00
Dean Herbert
c580ec865f APIBeatmapSet.Covers is never null 2021-10-21 19:34:01 +09:00
Dean Herbert
0fe0b5dc09 APIBeatmap implements IBeatmapInfo 2021-10-21 19:14:31 +09:00
Dean Herbert
40a176e86e APIBeatmapSet implements IBeatmapSetInfo 2021-10-21 19:14:19 +09:00
Dan Balasescu
8ae05ee8f7
Merge branch 'master' into online-info-as-interface 2021-10-21 17:14:57 +09:00
smoogipoo
f41cf822b0 Rename request 2021-10-21 17:02:11 +09:00
Dean Herbert
0706ad70fb Move BeatmapSetOnlineInfo to an interface type 2021-10-21 16:58:42 +09:00
Dean Herbert
a5c155bc87 Remove APIPlaylistBeatmap subclass 2021-10-21 16:43:46 +09:00
smoogipoo
691e414acb Add request to add a new playlist item 2021-10-20 21:08:58 +09:00
smoogipoo
67090fc598 Re-namespace enum 2021-10-20 20:52:16 +09:00
smoogipoo
599867a3b1 Add implementation to settings overlay 2021-10-20 20:29:06 +09:00
smoogipoo
0b8edb0812 Add english descriptions 2021-10-20 17:50:02 +09:00
smoogipoo
116ce09e49 Merge branch 'master' into multi-queueing-modes 2021-10-20 17:27:25 +09:00
smoogipoo
ea9c070e59 Add setting for queue mode 2021-10-20 14:51:59 +09:00
Dean Herbert
ad112cbbc5 Fix intendation in a way it doesn't regress with older inspectcode 2021-10-18 14:28:29 +09:00
Dean Herbert
6d6eed61aa Fix new indentation inspections 2021-10-18 14:00:35 +09:00
smoogipoo
6f89e30f56 Add QueueingMode to MultiplayerRoomSettings 2021-10-15 20:17:19 +09:00
smoogipoo
80dfd11c90 Remove unnecessary extra task
Further testing shows continuations also run before the .Wait() returns.
2021-10-15 13:28:02 +09:00
smoogipoo
e6ee360511 Fix intermittent multiplayer tests 2021-10-15 00:10:39 +09:00
smoogipoo
2784ba1423 Add queueing modes 2021-10-14 16:34:23 +09:00
smoogipoo
fdf7142711 Remove Room.Position 2021-10-13 21:24:54 +09:00
Gagah Pangeran Rosfatiputra
47c7701e47
handle changelog link in message formatter 2021-10-12 09:57:47 +07:00
Gagah Pangeran Rosfatiputra
e0c54e3207
add OpenChangelog link action 2021-10-12 09:37:11 +07:00
Dean Herbert
3803f2f462 Fix leaderboard potentially displaying the wrong scores
Closes #14762.

This class is ugly. I think the whole process should be clened up once
we have correctly-scheduled `SynchronizationContext`s. There's not much
saving it as long as all these interdispersed `Schedule`s around
required.
2021-10-06 16:07:29 +09:00
Dan Balasescu
9491e5a547
Merge pull request #14954 from peppy/rename-result-response
Rename `APIRequest.Result` to `Response`
2021-10-06 10:52:33 +09:00
Dean Herbert
c23acb8f05
Merge pull request #14967 from bdach/fix-accidental-json-property-rename
Fix "most played beatmap" request breakage after property rename
2021-10-06 05:00:12 +09:00
Bartłomiej Dach
baa8baaa1e
Fix "most played beatmap" request breakage after property rename 2021-10-05 21:17:19 +02:00
Bartłomiej Dach
12da27cde7
Add test coverage for loading process on channel join 2021-10-05 20:52:40 +02:00
Dean Herbert
b41fa41c85 Rename APIRequest.Result to Response 2021-10-05 14:28:56 +09:00
Dean Herbert
853cf6feaa Rename last remaining BeatmapInfo Beatmap usage 2021-10-04 17:35:53 +09:00
Dan Balasescu
5937a93e2d
Merge pull request #14949 from peppy/login-error-display
Show login failure messages on login form
2021-10-04 17:23:11 +09:00
Dean Herbert
3a0b7ba8ff Add fallback to use Message when Hint is not available 2021-10-04 16:18:55 +09:00
smoogipoo
69c2b7dc59 Merge branch 'master' into rename-beatmap-info-beatmap-fields 2021-10-04 16:03:22 +09:00
Dan Balasescu
aa1bfc16d2
Merge pull request #14929 from peppy/gameplay-state
Replace `GameplayBeatmap` with `GameplayState`
2021-10-04 15:56:44 +09:00
Dean Herbert
266b4c7124 Expose login errors from IAPIProvider and show on the login form 2021-10-04 15:40:24 +09:00
Dean Herbert
5aaafce597 Make AuthenticateWithLogin throw instead of return a bool success status 2021-10-04 15:40:00 +09:00
Dean Herbert
ec61c3c5ee Rename all remaining cases 2021-10-03 00:55:29 +09:00
Dean Herbert
32afd3f426 Replace all basic usages 2021-10-02 02:22:23 +09:00
Dean Herbert
3e3b9bc963 Split out IModelDownloader and also split apart ScoreManager 2021-09-30 18:25:20 +09:00
Dean Herbert
8acfefed1b
Merge pull request #14741 from smoogipoo/fix-lounge-beatmaps-counter
Fix incorrect beatmap count and SR range in multi lounge
2021-09-15 18:51:52 +09:00
smoogipoo
f54d554d30 Extract removal to method 2021-09-15 17:03:28 +09:00
smoogipoo
b807c161b4 Remove now-unused DI params 2021-09-14 17:25:57 +09:00
smoogipoo
6cffbee592 Fix random/target mods not working in spectator 2021-09-14 17:22:58 +09:00
Dan Balasescu
d9b4fae4e5
Merge branch 'master' into chat-command 2021-09-13 13:32:44 +09:00
Bartłomiej Dach
c4627bed6d
Print username in case of generic network failure too 2021-09-12 12:56:36 +02:00
rednir
e511c2ef2b
add comment 2021-09-12 08:50:53 +01:00
Davran Dilshat
1b264a2dd0 make user lookup string public 2021-09-11 16:22:29 +01:00
Davran Dilshat
c166f1a06a change error message based on exception message 2021-09-11 14:18:09 +01:00
Dan Balasescu
f4b1d8b9d1
Merge pull request #14704 from peppy/modicon-imod-support
Update `LeaderboardModSelector` to avoid creating mod instances
2021-09-10 16:43:32 +09:00
Davran Dilshat
acb181ff2b rename alreadyJoinedChannel -> privateChannel 2021-09-10 08:15:43 +01:00
rednir
5ec615c783
display user in error message
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2021-09-10 08:02:15 +01:00
rednir
84c152e7b6
break when already found user
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2021-09-10 08:01:38 +01:00
Dean Herbert
309460e505
Merge pull request #14675 from ekrctb/featured-artist-markers
Add featured artist markers to beatmap listing and overlay
2021-09-10 14:30:33 +09:00
Dean Herbert
28e9329136 Update LeaderboardModSelector to avoid creating mod instances 2021-09-10 12:43:21 +09:00
Dean Herbert
76e877f160 Disable APIMod/Mod cross equality support 2021-09-10 11:24:56 +09:00
Dean Herbert
cf633973a9 Refactor exposed mod retrieval methods for better safety 2021-09-10 11:09:13 +09:00
Dean Herbert
ce6b022a90 Remove unused IMod specification from APIMod 2021-09-10 10:59:30 +09:00
Dean Herbert
2edb851008 Add ability to lookup mod from a type specification 2021-09-09 16:50:59 +09:00
Dean Herbert
4d0530ca9d Add new methods to ruleset for quicker mod lookups 2021-09-09 16:46:14 +09:00
Dean Herbert
e66d76d26e Avoid settings copy if there are no settings 2021-09-09 15:43:55 +09:00
ekrctb
7543f9dfb0 Add featured artist track ID online info 2021-09-08 12:21:24 +09:00
Davran Dilshat
255f8a9769 add alias "/msg" (also a command in stable) 2021-09-07 17:25:47 +01:00
Davran Dilshat
b1c89f7618 ignore case when search for already joined channel 2021-09-07 17:22:59 +01:00
Davran Dilshat
be9540e535 fix "key" having wrong url parameter name 2021-09-07 17:17:10 +01:00
rednir
f209222812
Merge branch 'master' into chat-command 2021-09-07 17:09:46 +01:00
Davran Dilshat
f54d5675db check if user joined requested channel already 2021-09-07 17:06:12 +01:00
Dean Herbert
c43ac8c946
Merge pull request #14660 from ekrctb/search-featured-artists
Add "featured artists" filter to beatmap listing
2021-09-07 20:58:13 +09:00
Dean Herbert
92f59c10f5 Remove redundant this. in assignment 2021-09-07 17:45:39 +09:00
Dean Herbert
1aa95de530 Merge branch 'master' into score-ordering 2021-09-07 17:45:38 +09:00
Dean Herbert
d922210d2f Fix TestSceneDeleteLocalScore not properly comparing post-delete scores 2021-09-07 16:46:27 +09:00
ekrctb
b6c80f04b0 Add "featured artists" filter to beatmap search 2021-09-07 16:44:45 +09:00
Dean Herbert
1c4a3c584a Use correct lookup type to ensure username based lookups always prefer username 2021-09-06 15:04:27 +09:00
Davran Dilshat
5c385e84ea wrong command name in query message 2021-09-05 21:20:19 +01:00
Davran Dilshat
cb6cee9aea add /query as alias of /chat 2021-09-05 21:10:08 +01:00
Davran Dilshat
59ca69e41f add /chat command 2021-09-05 18:16:57 +01:00
Davran Dilshat
b1a995e0bb revert changes 2021-09-05 15:49:48 +01:00
Davran Dilshat
e78dc1bb4c more code quality :/ 2021-09-05 15:27:28 +01:00
Davran Dilshat
e409f2dc6d add xmldoc 2021-09-05 10:42:38 +01:00
Davran Dilshat
9aa1564e0d revert ChannelManager changes 2021-09-05 10:19:04 +01:00
Davran Dilshat
ea3be927d7 convert to method group 2021-09-04 20:02:10 +01:00
Davran Dilshat
4c006333e0 add /chat command 2021-09-04 19:42:14 +01:00
smoogipoo
999386da29 Cleanup 2021-08-31 21:47:49 +09:00
smoogipoo
bfcadcc4ac Revert some changes 2021-08-31 19:18:01 +09:00
rednir
8104b15874
remove braces
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2021-08-30 13:23:33 +01:00
smoogipoo
4ebb11472d Update Leaderboard to reorder scores based on scoring mode 2021-08-30 19:34:34 +09:00
Davran Dilshat
90c313e2ad add methods to get a user from their username 2021-08-29 19:19:55 +01:00
Dean Herbert
e1ab3434ed Add ability to handle user join/leave/kick events in MultiplayerComposites 2021-08-25 14:37:14 +09:00
Bartłomiej Dach
e503182a8d
Merge branch 'master' into activity-on-multiplayer-screens 2021-08-24 18:50:55 +02:00
Dean Herbert
8cd972a9fe Merge branch 'master' into pinned-comment 2021-08-24 14:37:31 +09:00
smoogipoo
956c1cc216 Merge branch 'master' into activity-on-multiplayer-screens 2021-08-24 12:33:34 +09:00
Endrik Tombak
058d2d2a49 Use nekodex's regex from osu-web 2021-08-20 23:01:06 +03:00
Endrik Tombak
8745fe9e34 Change editor timestamp regex to not match non-editor ones 2021-08-20 22:32:04 +03:00
Dan Balasescu
54bc532f0d
Merge branch 'master' into fix-messagepack-union 2021-08-20 16:01:04 +09:00
Dan Balasescu
dcff30ed6e
Merge branch 'master' into fix-login-as-guest 2021-08-20 14:06:28 +09:00
Dean Herbert
da8eba9996 Return early to avoid updating state and failure count in fail cases 2021-08-20 12:11:41 +09:00
Dan Balasescu
c95bf735fe
Merge branch 'master' into multiplayer-chat 2021-08-20 11:54:42 +09:00
Dean Herbert
a6b7ca1a4c Ensure all request failures are correctly handled during login 2021-08-19 19:55:14 +09:00
Dean Herbert
bc025efce5 Add commenting regarding workaround to avoid potential omission in the future 2021-08-19 17:42:44 +09:00
Dean Herbert
2b5a42e063 Add missing union specification for MatchUserRequest 2021-08-19 17:42:26 +09:00
Dean Herbert
f95c6f0de5 Switch multiplayer back to messagepack 2021-08-19 17:42:13 +09:00
Dean Herbert
fa01e4fad2 Add workaround for SignalR union serialisation 2021-08-19 17:41:50 +09:00
smoogipoo
1fd746524d Remove realtime room category, fix end-date showing for realtime 2021-08-19 16:09:28 +09:00
Dean Herbert
1faf789f0e Allow expanding chat using key binding even when it is hidden 2021-08-18 18:25:21 +09:00
Dan Balasescu
eaf7bd72fc
Merge branch 'master' into multiplayer-chat 2021-08-17 20:08:01 +09:00
Dean Herbert
8a1651e830 Reorganise methods in PollingComponent 2021-08-17 17:04:32 +09:00
Dean Herbert
b82f92d7b8 Adjust background colours of textbox in chat display 2021-08-17 16:16:49 +09:00
Dean Herbert
35b9f84c00 Expose StandAloneChatDisplay.Textbox 2021-08-17 16:16:49 +09:00
smoogipoo
6320768a67 Merge branch 'master' into multi-polling-request-refactor 2021-08-17 08:44:56 +09:00
smoogipoo
08d347f10b Merge branch 'master' into multi-polling-request-refactor 2021-08-16 13:12:08 +09:00
Nathan Alo
cc3468b4ab apply suggestions
- make `UserActivity.InGame` and derive that to `InSoloGame` and `InMultiplayerGame`
- rename `SoloGame` to `InSoloGame`
- rename `MultiplayerGame` to `InMultiplayerGame`
2021-08-16 06:32:33 +08:00
Opelkuh
7d7c5c06f0 Fix code formatting 2021-08-15 16:02:25 +02:00
Opelkuh
2f9f1ba862 Add test for ChannelManager.MarkChannelAsRead 2021-08-15 15:44:23 +02:00
Opelkuh
7d6f7ac75e Fix mark channel as read error 2021-08-15 02:57:11 +02:00
Bartłomiej Dach
498462dfd0
Fix room null-check racing against async schedule 2021-08-14 17:44:41 +02:00
Dean Herbert
b8c63eb1cb Merge branch 'master' into multiplayer-kick-support-events 2021-08-14 14:08:34 +09:00
smoogipoo
1fcb1cdb10 Add todo 2021-08-13 22:01:47 +09:00
Gagah Pangeran Rosfatiputra
480d5ffa5d
add pinned comment to users setter in comment bundle 2021-08-13 19:40:37 +07:00