Dean Herbert
61b9539864
Fix regression in quick exit logic
2021-02-09 17:14:16 +09:00
Dean Herbert
5bd4f74ddf
Fix a potential crash when exiting play during the results screen transition
2021-02-09 16:24:29 +09:00
Dean Herbert
2cac373365
Merge pull request #11706 from smoogipoo/fix-failing-test
...
Fix failing test
2021-02-08 20:57:38 +09:00
Dean Herbert
156f5bd5df
Add newline between statements
2021-02-08 20:05:16 +09:00
smoogipoo
19368f87fb
Fix failing test
2021-02-08 19:59:07 +09:00
smoogipoo
69ca440ae5
Merge branch 'master' into more-accurate-most-common-bpm
2021-02-08 18:40:58 +09:00
Dean Herbert
9e0724b138
Remove unnecessary double resolution of OsuGame
2021-02-08 15:58:41 +09:00
Dean Herbert
93f1a3c1bf
Merge branch 'master' into instant-pause-on-focus-loss
2021-02-08 14:31:40 +09:00
Joehu
d74a1437be
Fix player loader metadata not being centred
2021-02-07 15:14:08 -08:00
Salman Ahmed
d0ca2b99a8
Remove unnecessary injected dependency
2021-02-06 20:57:01 +03:00
Salman Ahmed
40ddccf0c7
Do not consider replays for "pause on focus lost"
...
Replays are not pausable as can be seen in the `canPause` check.
2021-02-06 20:56:08 +03:00
Salman Ahmed
c9db0bf886
Call break time update when loaded
2021-02-06 20:54:13 +03:00
Salman Ahmed
f29938e15d
Make last binding game activity more sensible
2021-02-05 20:39:57 +03:00
Salman Ahmed
8d18c7e929
Fix BreakTracker.IsBreakTime
not updated properly on breaks set
...
Causes a pause from focus lose when playing a beatmap that has a break section at the beginning, due to `IsBreakTime` incorrectly set to `false`
2021-02-05 10:28:35 +03:00
Salman Ahmed
e1789c29b1
Use Pause()
instead of performUserRequestedExit()
to avoid unexpected operations
2021-02-05 10:28:13 +03:00
Salman Ahmed
730e66f0ee
Make pausing on window focus lose instant
2021-02-05 09:07:59 +03:00
Dean Herbert
328bd191d4
Merge pull request #11561 from Mysfit/fix-storyboard-samples
...
Fix storyboard samples continuing to play when the beatmap is paused or intro is skipped
2021-02-01 17:48:08 +09:00
Dean Herbert
f054b38105
Merge branch 'master' into revert-beatmap-controlpointinfo-cloning
2021-01-25 18:25:53 +09:00
Dean Herbert
91ce3df3a9
Bind MultiplayerGameplayLeaderboard to player updates later in load process
2021-01-25 17:44:01 +09:00
Mysfit
b220939650
Fix storyboard samples continuing to play when the beatmap is paused or the intro is skipped.
2021-01-21 17:10:11 -05:00
smoogipoo
de9d075f94
Initial sample + samplechannel rework
2021-01-19 17:11:40 +09:00
Dean Herbert
d6e6b4bbee
Revert forced cloning of ControlPointInfo
...
This reverts commit 3c3e860dbc
.
Closes https://github.com/ppy/osu/issues/11491 .
2021-01-15 17:34:59 +09:00
smoogipoo
c6e9a6cd5a
Make most common BPM more accurate
2021-01-15 14:28:49 +09:00
Mysfit
5f10bcce02
Added beatmap colour settings checkbox and associated tests.
2021-01-13 00:09:22 -05:00
Bartłomiej Dach
25b4628672
Merge branch 'master' into fix-transform-mutation-from-background
2021-01-06 11:04:51 +01:00
Bartłomiej Dach
2b253f6d01
Remove now-unused fields & locals
2021-01-05 22:56:53 +01: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
b3f08b29ca
Ensure that all changes to screen backgrounds are on the correct thread
2021-01-05 15:22:50 +09:00
Dean Herbert
20d04d6933
Fix Storyboard's FirstEventTime not finding the true earliest event
2021-01-04 15:16:01 +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
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
a9822800fc
Add more null hinting in GameplayLeaderboard
2020-12-28 13:00:05 +01:00
Dean Herbert
447a55ce11
Fix incorrect null handling in GameplayLeaderboard
2020-12-28 20:16:53 +09: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
Bartłomiej Dach
83fb7c7a1a
Re-namespace all files in OnlinePlay directory
2020-12-25 16:50:09 +01:00
Dean Herbert
f991448a3e
Re-sort the leaderboard order a maximum of once a second
2020-12-24 21:49:38 +09:00
Bartłomiej Dach
d5fc517fab
Merge branch 'master' into disallow-skipping
2020-12-24 12:35:22 +01:00
Bartłomiej Dach
ee5a6ff9fa
Merge branch 'master' into improved-loading-experience
2020-12-24 11:59:46 +01:00
Bartłomiej Dach
4fb2610c82
Merge branch 'master' into frame-bundle-accuracy
2020-12-24 11:20:06 +01:00
Dean Herbert
6bd6888a93
Disallow skipping in multiplayer for now
2020-12-24 16:29:51 +09:00
Dean Herbert
e86e9bfae6
Don't begin gameplay until all users are in a completely prepared state
2020-12-24 15:32:55 +09:00
Dean Herbert
d66e218318
Source display accuracy from header and remove from ScoreProcessor function
2020-12-24 14:57:23 +09:00
Dean Herbert
76935b93b6
Merge branch 'master' into disallow-multiplayer-restart-retry
2020-12-24 13:31:54 +09:00
Bartłomiej Dach
980e85ce25
Refactor player exit logic to convey intention better
2020-12-23 16:16:24 +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
Dean Herbert
3c8f871b28
Move player constructor configuration to dedicated class; add AllowRestart parameter
2020-12-23 17:47:46 +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
6517acc510
Add leaderboard display to realtime player
2020-12-22 19:10:08 +09:00
Dean Herbert
8ac76bd524
Merge pull request #11199 from smoogipoo/refactor-player-score-creation
...
Asyncify player score creation and submission
2020-12-20 17:30:11 +09:00
Bartłomiej Dach
4e5064c4f6
Start accuracy at 1
2020-12-19 21:31:17 +01:00
Bartłomiej Dach
c738a57b39
Fix username overflow in new leaderboard design
2020-12-19 18:48:17 +01:00
Dean Herbert
b3bff281ce
Merge branch 'master' into spectator-driven-leaderboard
2020-12-20 01:13:59 +09:00
Bartłomiej Dach
06a17a9d8c
Rename other constant to be distinguishable
2020-12-19 15:18:05 +01:00
Bartłomiej Dach
315a957a0c
Extract constant for text transition duration
2020-12-19 15:17:31 +01:00
Bartłomiej Dach
e2cc401c12
Move BDL above LoadComplete()
2020-12-19 15:05:59 +01:00
Bartłomiej Dach
d392e0f27e
Extract shared rank-formatting helper
2020-12-19 15:04:22 +01:00
Bartłomiej Dach
22a2c3efdf
Add back xmldoc of AddPlayer
2020-12-19 15:04:18 +01:00
Bartłomiej Dach
28ca21b432
Seal banned method & throw better exception
2020-12-19 14:50:09 +01:00
Dean Herbert
beaced3211
Remove unnecessary async state machine
2020-12-19 13:58:56 +09:00
smoogipoo
772dd0287e
Split submission and import into two methods
2020-12-19 03:32:05 +09:00
Salman Ahmed
030dce5559
Increase leaderboard score width a bit
2020-12-18 13:09:50 +03:00
Salman Ahmed
c9e75e7908
Add user avatar to leaderboard scores
2020-12-18 13:09:05 +03:00
smoogipoo
eccfc8ccd2
Fix potential cross-reference access
2020-12-18 18:31:49 +09:00
smoogipoo
8826d01559
Create completion progress delegate immediately
2020-12-18 18:20:36 +09:00
smoogipoo
1369b75a86
Fix potential multiple submission
2020-12-18 17:48:42 +09:00
smoogipoo
2958cab239
Remove GotoRanking
2020-12-18 17:47:33 +09:00
Dean Herbert
75c5b99ac5
Merge branch 'gameplay-leaderboard-update' into spectator-driven-leaderboard
2020-12-18 17:33:25 +09:00
Dean Herbert
fdad5e86d3
Remove stray newline
2020-12-18 17:33:18 +09:00
Dean Herbert
470c68d6a5
Merge branch 'gameplay-leaderboard-update' into spectator-driven-leaderboard
2020-12-18 17:30:21 +09:00
Dean Herbert
615352c1e4
Fix shear offset not being included in GameplayLeaderboard's own size
2020-12-18 17:30:11 +09:00
Dean Herbert
668536ce56
Fix vertical size potentially changing during relayout
2020-12-18 17:25:48 +09:00
Dean Herbert
5cc2156801
Merge branch 'gameplay-leaderboard-update' into spectator-driven-leaderboard
2020-12-18 17:20:20 +09:00
Dean Herbert
e82986b763
Fix panel x positions getting weird duration relayouts
...
Also adjust the transitions a bit to feel better.
2020-12-18 17:19:55 +09:00
Dean Herbert
4cf013c005
Fix animation replacing itself even when score position hasn't changed
2020-12-18 17:19:55 +09:00
Dean Herbert
bca4d83af7
Revert previous player add flow via interface
2020-12-18 17:19:55 +09:00
Dean Herbert
cb3f89d0a5
Hook up with new leaderboard design
2020-12-18 17:13:51 +09:00
Dean Herbert
5e83605026
Merge branch 'gameplay-leaderboard-update' into spectator-driven-leaderboard
2020-12-18 17:07:43 +09:00
Dean Herbert
157a72ec5d
Revert previous player add flow via interface
2020-12-18 17:07:38 +09:00
Dean Herbert
96f23a1135
Merge branch 'master' into gameplay-leaderboard-update
2020-12-18 16:56:21 +09:00
Dean Herbert
70cda680c0
Update to match new implementation
2020-12-18 16:55:55 +09:00
Dean Herbert
869cac819d
Merge branch 'gameplay-leaderboard-update' into spectator-driven-leaderboard
2020-12-18 16:55:44 +09:00
smoogipoo
2db7433c0b
Refactor player score creation and submission process
2020-12-18 16:51:59 +09:00
Dean Herbert
99f2032fdf
Merge branch 'master' into gameplay-leaderboard-update
2020-12-18 16:44:52 +09:00
Dean Herbert
c84807ed5c
Refactor implementation
2020-12-18 16:20:54 +09:00
smoogipoo
c80ecec0b4
Reorder methods
2020-12-18 15:36:24 +09:00
Dean Herbert
4af508235e
Rename long variable
2020-12-18 15:35:18 +09:00
Dean Herbert
fa524d64f8
Merge branch 'master' into spectator-driven-leaderboard
2020-12-18 13:34:03 +09:00
Salman Ahmed
92bf74ba29
localUser -> localOrReplayPlayer
2020-12-18 03:37:24 +03:00
Salman Ahmed
a8abefcd66
Make GameplayLeaderboardScore a model class
2020-12-18 03:34:33 +03:00
Salman Ahmed
0faf3fdfd3
Update gameplay leaderboard scores with the new design
2020-12-17 15:19:10 +03:00
Dean Herbert
3ff70d331a
Mark recordingScore as nullable
2020-12-17 16:17:13 +09:00
Dean Herbert
81b0db0401
Remove double construction of empty replay object
2020-12-17 16:17:08 +09:00
Dean Herbert
de9c21e7d1
Tenatively mark leaderboard class as LongRunningLoad until final integration
2020-12-17 15:48:53 +09:00
Dean Herbert
a01bb3d5a3
Better limit bindable exposure of data class
2020-12-16 16:20:29 +09:00
Dean Herbert
6bce587b59
Pass users in via constructor and correctly unbind on disposal
2020-12-16 16:20:29 +09:00
Dean Herbert
6e2131c164
Don't track local user score in any special way
2020-12-16 16:20:29 +09:00
Dean Herbert
09d0ceb766
Add testing setup to get a better visual idea of how scoreboard will work
...
fixup! Add method to ScoreProcessor to calculate score and accuracy from statistics
2020-12-16 16:20:29 +09:00
Dean Herbert
d009a0be51
Move class to final location
2020-12-16 16:20:29 +09:00
Dean Herbert
88b3bf06e8
Merge branch 'master' into add-bundle-header
2020-12-16 13:40:15 +09:00
Dean Herbert
ea6c196f81
Remove unused using statement
2020-12-15 16:03:18 +09:00
Dean Herbert
e37089af5e
Further code cleanup
2020-12-15 15:44:56 +09:00
Dean Herbert
8b68ccc0ff
Rename class and move inside HUD namespace
2020-12-15 15:34:11 +09:00
Dean Herbert
dd5572b20a
Remove unnecessary methods and event
2020-12-15 15:26:20 +09:00
Dean Herbert
8362ad37e3
Bring up-to-date with code changes
2020-12-15 15:22:14 +09:00
Dean Herbert
70e5d4495a
Merge branch 'master' into ingame-leaderboard-general-implementation
2020-12-15 15:14:56 +09:00
Dean Herbert
ae22f75406
Bind replay recording score to judgement changes
2020-12-14 17:33:33 +09:00
Dean Herbert
1793385e96
Pass a score to the replay recorder to allow reading more general scoring data
2020-12-14 16:52:14 +09:00
Dean Herbert
0d7f53b0b9
Fix gameplay loading too fast the first time entering a beatmap
2020-12-14 14:21:21 +09:00
Bartłomiej Dach
d457926523
Merge branch 'master' into fix-player-load-stuck-at-empty-screen
2020-12-11 20:49:27 +01:00
Dean Herbert
2dd5911256
Rename method to better match purpose
2020-12-11 14:44:01 +09:00
Dean Herbert
01bd765384
Simplify pause handling by moving transform logic to bindable change event
2020-12-10 17:42:47 +09:00
Dean Herbert
679a550d83
Fix single threaded seeking not working due to unnecessary seek call
2020-12-10 17:42:28 +09:00
Dean Herbert
437c0506ce
Refactor to allow for special disposal handling to still work
2020-12-10 16:56:56 +09:00
Dean Herbert
67dd7be71a
Move cancelLoad call to OnResuming
...
This has no real effect; it just feels more readable to me.
2020-12-10 16:34:59 +09:00
Dean Herbert
491ab74059
Schedule pushWhenLoaded once ever
...
Previously it was being scheduled another time each OnResume, resulting
in more and more calls as a user retries the same beatmap multiple
times.
To simplify things I've decided to just schedule once ever. This means
that on resuming there's no 400ms delay any more, but in testing this
isn't really an issue (load time is still high enough that it will never
really be below that anyway). Even if gameplay was to load faster, the
animation should gracefully proceed.
2020-12-10 16:33:30 +09:00
Dean Herbert
cc996ec7fc
Ensure player is consumed at the point of scheduled push running the first time
2020-12-10 16:32:14 +09:00
Dean Herbert
a147b7186d
Remove unnecessary call to updateVisibility
2020-12-01 14:01:34 +09:00
Dean Herbert
63ff722963
Fix code formatting
2020-12-01 14:00:54 +09:00
Ryan Zmuda
e102f2e8fa
Moved enum to bottom, change defualt bind to Shift-Tab, Fixed Notification
2020-11-30 21:38:16 -05:00
Ryan Zmuda
9145557522
Revert "Revert "forgot to remove something... sorry""
...
This reverts commit 6478bed431
.
2020-11-29 23:15:12 -05:00
Ryan Zmuda
6478bed431
Revert "forgot to remove something... sorry"
...
This reverts commit a780a8bbd8
.
2020-11-29 23:14:43 -05:00
Ryan Zmuda
a780a8bbd8
forgot to remove something... sorry
2020-11-29 21:52:58 -05:00
Ryan Zmuda
3994cf082d
add keybind for in game overlay
2020-11-29 20:59:02 -05:00
Dean Herbert
3346c06aca
Rename variable/text to be more verbose as to toggle purpose
2020-11-26 20:04:44 +09:00
Dean Herbert
1d82557d9f
Avoid blocking global actions when skip overlay is not actually active
2020-11-24 15:42:14 +09:00
Dean Herbert
72b8eef36e
Add ability to pause/resume replay playback
2020-11-24 15:41:56 +09:00
Dean Herbert
2db42f8e67
Remove default allowRetry parameter value from ResultsScreen
2020-11-20 14:35:44 +09:00
Bartłomiej Dach
b344a13734
Add support for previewing tracks on spectator screen
2020-11-14 17:08:27 +01:00
Bartłomiej Dach
d55eae55ad
Merge branch 'master' into fix-combo-break-rewind-replay
2020-11-13 21:46:32 +01:00
Bartłomiej Dach
405407ff9e
Merge branch 'master' into fix-combo-break-sounds
2020-11-13 21:07:34 +01:00
Dean Herbert
4b5743d993
Fix combo break sound not playing after rewind
2020-11-13 13:38:14 +09:00
Dean Herbert
43626573df
Fix combo break sounds playing when seeking
2020-11-13 13:36:19 +09:00
smoogipoo
6f7a1dd57d
Merge branch 'master' into hitobject-pooling-base
2020-11-11 17:09:18 +09:00
Dean Herbert
11cf04eed1
Fix frames potentially getting added to spectator replay in wrong format
...
The way spectator currently works, the `Spectator` screen is responsible
for adding new frames to the replay, even when it has a child
(`SpectatorPlayer`) present.
There was a possibility that a new play had already started, and on
returning to the Spectator screen (to initialise the new play) there
would be a brief period where the Player instance is still reading from
the replay, the `userBeganPlaying` call had not yet finished
initialising the new target replay, and `userSentFrames` is run
(asynchronously), writing frames to the previous replay using the
incorrect ruleset instance).
To make this work, it doesn't `Schedule` frame addition to the replay
(making things a bit unsafe). Changing this itself isn't such a simple
one to do, so I instead opted to fix this via locking.
Closes https://github.com/ppy/osu/issues/10777 .
2020-11-11 13:39:43 +09:00
smoogipoo
66213f2ed0
Add pooling support to DrawableRuleset + Playfield
2020-11-10 23:56:32 +09:00
Dean Herbert
07166ec819
Fix a couple of remaining unnecessary casts
2020-11-06 13:29:47 +09:00
Dean Herbert
1b2bd6a8c9
Remove redundant base call
2020-11-03 20:10:13 +09:00
Dean Herbert
3e29e468ea
Ensure "start watching" button starts in a disabled state
2020-11-03 20:06:42 +09:00
Dean Herbert
414f65c1ef
Merge branch 'master' into spectator-listing
2020-11-02 15:48:21 +09:00
Dan Balasescu
04178e9458
Merge branch 'master' into spectator-replay-watcher
2020-11-02 14:54:51 +09:00