Bartłomiej Dach
b344a13734
Add support for previewing tracks on spectator screen
2020-11-14 17:08:27 +01: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
Dean Herbert
07166ec819
Fix a couple of remaining unnecessary casts
2020-11-06 13:29:47 +09:00
Dean Herbert
3e29e468ea
Ensure "start watching" button starts in a disabled state
2020-11-03 20:06:42 +09:00
Dean Herbert
bca317b151
Remove excess using statement
2020-10-28 23:43:16 +09:00
Dean Herbert
e1bf751dac
Merge branch 'spectator-replay-watcher' into spectator-listing
2020-10-28 23:17:50 +09:00
Dean Herbert
5d02de29ca
Fix attempt to change ruleset/beatmap bindables while screen is not active
2020-10-28 22:50:45 +09:00
Dean Herbert
25ab3a5fea
Construct replay after being sure a ruleset is available to avoid nullrefs
2020-10-28 22:10:37 +09:00
Dean Herbert
93fd913876
Add setting to allow automatically downloading during a spectating session
2020-10-28 19:43:06 +09:00
Dean Herbert
4df8119852
Add missing schedule
2020-10-28 19:43:06 +09:00
Dean Herbert
344ff8f4bc
"Improve" visuals of spectator screen
2020-10-28 19:02:38 +09:00
Dean Herbert
2d73dfbe39
Add more safety around beatmap panel and button display logic
2020-10-28 19:02:38 +09:00
Dean Herbert
16b0a7b33e
Add button flow to allow resuming watching after exiting manually
2020-10-28 19:02:38 +09:00
Dean Herbert
6169349f7c
Fix switching to new beatmap not working correctly
2020-10-28 17:44:11 +09:00
Dean Herbert
730cc645fb
Avoid reconstructing ruleset for each frame bundle
2020-10-28 16:33:52 +09:00
Dean Herbert
48b0357e7d
Fix "finished playing" events handled for potentially incorrect user
2020-10-28 16:11:14 +09:00
Dean Herbert
0a7f3dc19b
Avoid null reference on finalization
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2020-10-28 07:29:07 +09:00
Dean Herbert
2cacdaa11b
Add basic beatmap download and play flow
2020-10-27 19:28:34 +09:00
Dean Herbert
42b3aa3359
Fix spectating when starting from a point that isn't at the beginning of the beatmap
2020-10-27 18:58:37 +09:00
Dean Herbert
3ec3321a3d
Add missing space
2020-10-27 18:58:37 +09:00
Dean Herbert
b737a8bf6e
Add field to Replay denoting whether the full replay have been received or not
2020-10-27 18:58:37 +09:00
Dean Herbert
9bac8f3792
Add null check on replay as safety measure
2020-10-27 18:58:37 +09:00
Dean Herbert
ac4671c594
Add basic implementation of spectator screen
2020-10-27 18:58:37 +09:00
Dean Herbert
5fd97bd043
Add basic spectator screen
2020-10-27 18:58:37 +09:00