Dean Herbert
83dbba3cbf
Fix carousel beatmap set panels applying transforms to difficulties while they are loading
2021-01-05 18:41:45 +09:00
Dean Herbert
54982dcdd7
Refactor LoadingLayer to avoid applying effects to external drawables
...
In theory this seemed like a good idea (and an optimisation in some
cases, due to lower fill rate), but in practice this leads to weird edge
cases.
This aims to do away with the operations on external drawables by
applying a dim to the area behind the `LoadingLayer` when required.
I went over each usage and ensured they look as good or better than
previously.
The specific bad usage here was the restoration of the colour on dispose
(if the `LoadingLayer` was disposed in a still-visible state).
I'm aware that the `BeatmapListingOverlay` will now dim completely during
load. I think this is fine for the time being.
2021-01-05 17:31:45 +09:00
Dean Herbert
9bac791a57
Fix deselection of autoplay mod failing
2021-01-05 16:17:58 +09:00
Dean Herbert
60fc60fa00
Merge pull request #11415 from frenzibyte/fix-ready-button-crash
...
Fix multiplayer ready button crashing when deleting selected beatmap set
2021-01-05 15:58:09 +09:00
Dean Herbert
b3f08b29ca
Ensure that all changes to screen backgrounds are on the correct thread
2021-01-05 15:22:50 +09:00
Dean Herbert
a3e4e2f6c3
Switch ResultsScreen and SongSelect inheritance and remove local implementation
2021-01-05 15:22:50 +09:00
Dean Herbert
ed6ffe2ef1
Remove hacky code
2021-01-05 14:54:59 +09:00
Dean Herbert
6b8e1913ee
Fix dependency not always available due to nested LoadComponentAsync call
2021-01-05 13:27:45 +09:00
Dean Herbert
deb1ad7bca
Merge branch 'master' into disable-repeat-multi-actions
2021-01-04 23:38:29 +09:00
Dean Herbert
b7dd54847f
Move resolved usage of WorkingBeatmap in editor components as local as possible to avoid misuse
2021-01-04 16:56:37 +09:00
Dean Herbert
7fdf876b4c
Fix editor timing screen mutating the WorkingBeatmap instead of EditorBeatmap
2021-01-04 16:38:15 +09:00
Dean Herbert
b4a779108e
Ensure working beatmap is reloaded on exiting the editor
2021-01-04 16:37:49 +09:00
Dean Herbert
ba4e411422
Clone and copy ControlPointInfo when retrieving a playable beatmap
2021-01-04 16:37:07 +09:00
Salman Ahmed
485a57776b
Fix hasBeatmap
potentially checking on outdated DeletePending
value
2021-01-04 10:28:41 +03:00
Salman Ahmed
ea38b00b29
Schedule all calls to updateBeatmapState()
2021-01-04 10:27:08 +03:00
Dean Herbert
20d04d6933
Fix Storyboard's FirstEventTime not finding the true earliest event
2021-01-04 15:16:01 +09:00
Salman Ahmed
445a4bd01c
Re-query beatmap info on database changes
2021-01-04 09:00:16 +03:00
Dean Herbert
53e6a349bb
Fix incorrect initial conditional
...
Turns out this wasn't actually required.
2021-01-03 22:44:32 +09:00
Dean Herbert
efb71713ef
Fix null condition inhibiting deselection events
2021-01-03 22:43:02 +09:00
Dean Herbert
a6d4992997
Ensure SelectionChanged events are only sent once when selection is null
2021-01-03 12:53:25 +09:00
Dean Herbert
caa5109e3a
Add precautionary null checks to update methods in SongSelect
2021-01-03 12:18:35 +09:00
Lucas A
324f80d994
Fix merge conflicts.
2021-01-02 19:14:10 +01:00
Dean Herbert
e2de5bb8f9
Fix the beatmap carousel not returning to centre correctly after resizing window
2021-01-02 22:05:41 +09:00
mcendu
17abe90c27
move SkinnableHealthDisplay
...
Similar components are in osu.Game.Screens.Play.HUD while this is not
2020-12-31 20:23:13 +08:00
Bartłomiej Dach
7d9a61fbc1
Handle unobserved exceptions from ready button properly
2020-12-31 11:57:13 +01:00
Bartłomiej Dach
f800448c87
Move game start logic to a higher level
2020-12-30 18:15:48 +01:00
Bartłomiej Dach
d34609b98e
Rename On{ToggleReady -> ReadyClick}
2020-12-30 16:29:36 +01:00
Bartłomiej Dach
59f2017a13
Move BindValueChanged subscriptions to LoadComplete
2020-12-30 16:22:11 +01:00
Bartłomiej Dach
05f212eb3c
Merge branch 'master' into remove-multiplayer-selection-poller
2020-12-29 12:51:33 +01:00
Bartłomiej Dach
361d215ab4
Reword notification messages to match new logic
2020-12-29 10:56:59 +01:00
Bartłomiej Dach
5d23199233
Trim redundant IsLoggedIn checks
2020-12-29 10:56:29 +01:00
Bartłomiej Dach
cafa241ef3
Fix ready-up button getting stuck if server operation fails
2020-12-29 09:44:30 +01:00
Bartłomiej Dach
e9b0652359
Move ready-up operation logic again to client
...
To salvage ready up button tests.
2020-12-29 09:16:02 +01:00
Dean Herbert
906a9b79b5
Show an error when forcefully exiting online play due to API failure
2020-12-29 16:47:36 +09:00
Dean Herbert
4d04e0dee7
Disallow entering the playlists/multiplayer screens if API is failing
2020-12-29 16:25:51 +09:00
Bartłomiej Dach
db52255bbe
Adjust tracker usages to match new API
2020-12-29 08:20:43 +01:00
Bartłomiej Dach
f59ba799d3
Adjust operation tracker implementation
2020-12-29 07:54:27 +01:00
Bartłomiej Dach
9ff2140232
Move ready-up logic to match sub-screen
2020-12-29 07:52:15 +01:00
Bartłomiej Dach
903dca875e
Make localUser a client property
2020-12-29 07:46:22 +01:00
Bartłomiej Dach
f68e4fc88f
Merge branch 'master' into disable-repeat-multi-actions
2020-12-29 07:42:20 +01:00
Dean Herbert
45c578b857
Remove selection polling from multiplayer
...
Looks like this was just copy-paste without any thought into whether it
should exist. It really shouldn't exist.
This is a thing for the playlists system because the *whole system*
there relies on polling the web API to get updated information. In the
case of mutliplayer, we hand off all communications to the realtime
server at the point of joining the rooms.
The argument that this was there to do faster polling on the selection
isn't valid since the polling times were the same for both cases.
Closes #11348 .
2020-12-29 15:10:09 +09:00
Dean Herbert
e3a41f6118
Rename variable to make more sense
...
It needs to be explicitly stated that the users in this list are related
to the *joined* room. Especially since it's sharing its variable name
with `SpectatorStreamingClient` where it has the opposite meaning (is a
list of *globally* playing players).
2020-12-29 14:27:35 +09:00
Bartłomiej Dach
540dec2e7c
Allow null tracker in lounge screen for tests
2020-12-28 22:54:52 +01:00
Bartłomiej Dach
6dc0f6af50
Disable setting apply button for duration of operation
2020-12-28 22:48:03 +01:00
Bartłomiej Dach
af66e45311
Disable create room button after triggering join
2020-12-28 22:48:03 +01:00
Bartłomiej Dach
47ab7c9fd6
Disable ready button after host click
2020-12-28 22:48:03 +01:00
Bartłomiej Dach
9e6994166c
Add helper to track ongoing operations in UI
2020-12-28 22:48:03 +01:00
Bartłomiej Dach
a014d0ec18
Use PlayingUsers when constructing player directly
2020-12-28 19:27:56 +01:00
Dean Herbert
9155671557
Merge pull request #11341 from peppy/fix-leaderboard-user-handling
...
Fix incorrect null handling in GameplayLeaderboard
2020-12-28 22:44:55 +09:00
Dean Herbert
2e88036f39
Merge pull request #11342 from bdach/fix-beatmap-not-reverting
...
Fix user changes in multi song select not reverting on exit without confirmation
2020-12-28 21:56:07 +09:00
Bartłomiej Dach
a376a23ed7
Merge branch 'master' into fix-leaderboard-user-handling
2020-12-28 13:43:53 +01:00
Bartłomiej Dach
a9822800fc
Add more null hinting in GameplayLeaderboard
2020-12-28 13:00:05 +01:00
Bartłomiej Dach
f16b516e58
Revert user changes if no selection was made
2020-12-28 12:35:17 +01:00
Dean Herbert
447a55ce11
Fix incorrect null handling in GameplayLeaderboard
2020-12-28 20:16:53 +09:00
Bartłomiej Dach
20ae84a466
Merge branch 'master' into fix-user-lookup-failure-crashes
2020-12-28 12:15:06 +01:00
Dean Herbert
046a76cb1d
Allow null users to still be displayed in the participant list
...
The fix here is correcting the access of `user.Country`. The deicision
to have null users display is because this is the best we can do (if
osu-web could not resolve the user). We still want the users in the
lobby to be aware of this user's presence, rather than hiding them from
view.
osu-stable does a similar thing, showing these users as `[Loading]`. I
decided to go with blank names instead because having *any* text there
causes confusion. We can iterate on this in future design updates.
2020-12-28 15:03:44 +09:00
Lucas A
7ae4979882
Fix merge conflicts.
2020-12-27 13:52:45 +01:00
Bartłomiej Dach
2ff49f4758
Merge branch 'master' into fix-quit-user-showing-in-leaderboard
2020-12-27 13:02:40 +01:00
Bartłomiej Dach
f75dccc9e4
Explicitly use discard in value changed callback
2020-12-27 13:00:27 +01:00
Bartłomiej Dach
6b6b1514e2
Rename method to be less misleading
...
As it doesn't only change colour, but also width.
2020-12-27 12:58:37 +01:00
Dean Herbert
1b34f2115f
Remove dignostics using
2020-12-27 16:57:23 +09:00
Dean Herbert
d14a8d24b5
Remove assert for now
2020-12-27 16:42:20 +09:00
Dean Herbert
fa0576f47f
Move quit colour change implementation to updateColour for better coverage
2020-12-27 13:40:02 +09:00
Bartłomiej Dach
15948de2f0
Fix gameplay leaderboard avatars being clickable
2020-12-26 14:35:14 +01:00
Dean Herbert
71dcbeaf7c
Mark user as quit visually on the leaderboard
2020-12-26 12:11:09 +09:00
Dean Herbert
116acc2b5e
Add flow for marking user as quit for further handling
2020-12-26 11:35:51 +09:00
Dean Herbert
ff57562956
Fix multiplayer leaderboard not unsubscribing from quit users
2020-12-26 11:35:31 +09:00
Dean Herbert
fe1bbb1cac
Don't fail if the local user is not present in room users when updating ready button state
2020-12-26 10:49:22 +09:00
Dean Herbert
f9900720d5
Rename OnRoomChanged to OnRoomUpdated to avoid confusion
2020-12-26 10:49:02 +09:00
Bartłomiej Dach
2e4b1b95c2
Rename {Multiplayer -> OnlinePlay}BackgroundSprite
2020-12-25 18:07:34 +01:00
Bartłomiej Dach
ed4b8482b6
Rename {Multiplayer -> OnlinePlay}Composite
2020-12-25 18:07:34 +01:00
Bartłomiej Dach
4c43a67b68
Rename I{Multiplayer -> OnlinePlay}SubScreen
2020-12-25 18:07:34 +01:00
Bartłomiej Dach
e5064ee930
Rename {Multiplayer -> OnlinePlay}SubScreen
2020-12-25 17:02:35 +01:00
Bartłomiej Dach
eb0f125fef
Rename {Multiplayer -> OnlinePlay}SubScreenStack
2020-12-25 17:00:31 +01:00
Bartłomiej Dach
4caf75850b
Rename {Multiplayer -> OnlinePlay}Screen
2020-12-25 17:00:00 +01:00
Bartłomiej Dach
83fb7c7a1a
Re-namespace all files in OnlinePlay directory
2020-12-25 16:50:09 +01:00
Bartłomiej Dach
e797e5ce7a
Rename Multi directory to OnlinePlay
2020-12-25 16:50:02 +01:00
Dean Herbert
9de1a67e03
Move PlaylistsResultsScreen to correct namespace
2020-12-25 23:47:32 +09:00
Dean Herbert
836d1491d0
PlaylistsMultiplayer -> Playlists
2020-12-25 23:47:18 +09:00
Dean Herbert
8a36eab060
Move missed file from Play namespace
2020-12-25 23:42:02 +09:00
Dean Herbert
e421b6d34e
Update some missed variables
2020-12-25 23:36:09 +09:00
Dean Herbert
e49dce2c86
Fix some missed renames
2020-12-25 15:34:13 +09:00
Dean Herbert
5d4b73baa5
RealtimeMultiplayer -> Multiplayer
2020-12-25 14:10:59 +09:00
Dean Herbert
a1384942b1
Timeshift -> Playlists at a code level
2020-12-25 13:11:21 +09:00
Dean Herbert
4e21bd0108
Merge pull request #11286 from peppy/rename-timeshift
...
Rename "timeshift" to "playlists"
2020-12-25 00:45:06 +09:00
Dean Herbert
60c7c8b63b
Pluralise playlists in tip
2020-12-25 00:44:42 +09:00
Bartłomiej Dach
6ec045f235
Distinguish primary multi screen titles in header
2020-12-24 16:18:35 +01:00
Bartłomiej Dach
db1c11073f
Rename back to "room" for "realtime" multiplayer
2020-12-24 16:10:29 +01:00
Bartłomiej Dach
7f0f6d86b0
Rename {room -> playlist} on playlist room screen
2020-12-24 16:08:45 +01:00
Dean Herbert
fa14438671
Merge pull request #11285 from peppy/resort-leaderboard-less
...
Re-sort the leaderboard order a maximum of once a second
2020-12-25 00:05:13 +09:00
Dean Herbert
61be6197e7
Merge pull request #11290 from bdach/looping-mp-at-end-of-game
...
Fix multiplayer gameplay potentially looping audio after reaching end
2020-12-25 00:04:56 +09:00
Bartłomiej Dach
a97681a5da
Proxy screen transition events to subscreens in multiplayer
2020-12-24 15:07:03 +01:00
Bartłomiej Dach
76a7aabfe8
Always create realtime-specific player elements regardless of token
2020-12-24 14:32:30 +01:00
Dean Herbert
3a46e210d4
Change low-hanging references of "room" to "playlist"
2020-12-24 21:59:10 +09:00
Dean Herbert
aec25e2d73
Rename "timeshift" to "playlists"
...
This only covers the user-facing instances. Code and class name changes
will happen once things have calmed down.
2020-12-24 21:53:20 +09:00
Dean Herbert
f991448a3e
Re-sort the leaderboard order a maximum of once a second
2020-12-24 21:49:38 +09:00
Dean Herbert
21a4e6a3f9
Merge pull request #11282 from peppy/disallow-skipping
...
Disallow skipping in multiplayer
2020-12-24 21:31:02 +09:00
Dean Herbert
647cb8310a
Merge pull request #11281 from peppy/fix-ruleset-pollution
...
Schedule UpdateFilter calls to avoid operations occuring while at a sub screen
2020-12-24 21:30:47 +09:00
Dean Herbert
9b654c741b
Merge pull request #11283 from peppy/add-match-start-sound
...
Play a sound when starting a timeshift or multiplayer room
2020-12-24 21:30:24 +09:00
Dean Herbert
25ff32cdf8
Merge pull request #11284 from peppy/add-ready-changed-sound
...
Add sound when players change ready state
2020-12-24 21:30:06 +09:00