1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-16 18:32:54 +08:00
Commit Graph

8447 Commits

Author SHA1 Message Date
smoogipoo
ed93e26e52 Use single method for starting/restarting spectator screen 2021-04-26 21:56:15 +09:00
smoogipoo
7e11d520d5 Remove finished players from multi spectator screen 2021-04-26 21:25:46 +09:00
smoogipoo
94d0b06493 Expose mute adjustment instead 2021-04-26 19:01:30 +09:00
smoogipoo
d7618b63fa Fix test failure 2021-04-26 17:35:13 +09:00
smoogipoo
6626e70c95 Pass in master clock instead of slave clock 2021-04-26 17:30:27 +09:00
smoogipoo
5b4cb71cc7 Change terminology from "slave" to "player clock" 2021-04-26 17:19:44 +09:00
Dean Herbert
aa99c192d0 Fix type in inline comment 2021-04-26 16:21:12 +09:00
Dean Herbert
3b876a43c2
Merge branch 'master' into multiplayer-spectator-screen 2021-04-26 14:12:35 +09:00
Bartłomiej Dach
e937b778f6 Fix potential failure in ensureSourceClockSet()
`ensureSourceClockSet()` was intended to only run when the adjustable
source hasn't been set at all yet. As it turns out permitting it to run
unconditionally can break the state of the underlying interpolated
clock. This is caused by the following factors:

* While the decoupleable clock is running, its `CurrentTime` does not
  come from either the source clock, or the internal stopwatch; it is
  instead calculated using the base `InterpolatingFramedClock` logic.

* A source change of a decoupleable clock seeks the provided source
  clock to the decoupleable's current time.

* When an interpolating clock is seeked (decoupleable clock is also
  an interpolating one), its interpolation state
  (`{Last,Current}InterpolatedTime`) are reset to 0.

* If the interpolating clock determines that its current time is too
  far away from the source's time (which was set when the source is
  changed), it will ignore the source and instead continue to use
  its current time until the source clock has caught up.

Overall, the source change is not really necessary if a source is
already there. The only reason to ensure it was set was to make sure
the first seek of the gameplay clock wasn't performed in decoupled
mode. Therefore, add a guard to make sure the source is only set if
there isn't one already.
2021-04-24 14:19:39 +02:00
Bartłomiej Dach
fdb5490e51 Attempt to explain source initialisation better 2021-04-23 21:56:08 +02:00
smoogipoo
63a9484255 Expose WaitingOnFrames as mutable bindable 2021-04-23 19:11:47 +09:00
smoogipoo
575ec7c528 Document + refactor max player limitation 2021-04-23 19:11:35 +09:00
smoogipoo
ae2fd2f2e1 Ensure source is set on reset 2021-04-23 18:46:59 +09:00
smoogipoo
90ecda91af Fix exception 2021-04-23 00:06:54 +09:00
smoogipoo
4f0857f946 Xmldocs and general refactorings 2021-04-22 23:52:22 +09:00
smoogipoo
ee25949751 Rename classes 2021-04-22 23:39:02 +09:00
smoogipoo
8a0ba3a055 Merge GameplayIsolationContainer into PlayerInstance, remove track 2021-04-22 23:38:51 +09:00
smoogipoo
4aceb75eb2 Disable spectate button on closed rooms
Doesn't have an effect normally - only for safety purposes in case we
allow entering the match subscreen after a match has finished in the
future.
2021-04-22 23:37:45 +09:00
smoogipoo
fd0b030cf4 Refactor gameplay screen creation 2021-04-22 23:37:33 +09:00
smoogipoo
f8f9cf9412 Merge branch 'fix-initial-playingusers' into multiplayer-spectator-screen 2021-04-22 23:25:25 +09:00
smoogipoo
64579d50ac Use only single PlayerInstance for hit sample playback 2021-04-22 22:59:47 +09:00
smoogipoo
6588859c32 Remove loggings 2021-04-22 22:29:18 +09:00
Dan Balasescu
93b53f54fa
Merge pull request #12531 from peppy/editor-add-nudge-shortcuts
Add simple key based time nudging support to editor
2021-04-22 21:14:51 +09:00
Dan Balasescu
50f37ef09c
Merge pull request #12519 from peppy/editor-hit-animation-toggle
Add editor hit animation toggle
2021-04-22 20:49:21 +09:00
smoogipoo
6df23f1301 Merge branch 'master' into multiplayer-spectator-screen 2021-04-22 20:29:24 +09:00
Dean Herbert
a5364b224f Add simple key based time nudging support to editor 2021-04-22 18:47:04 +09:00
Dean Herbert
1884c18a2c Ignore movement operations which have no offset 2021-04-22 18:12:03 +09:00
Dean Herbert
daafa41dc1
Merge branch 'master' into fix-initial-spectator-state-callback 2021-04-22 16:22:04 +09:00
smoogipoo
1ca2152e61 Privatise + rename to SlaveGameplayClockContainer 2021-04-21 23:22:36 +09:00
smoogipoo
2bea625613 Fix initial playback states not being correct 2021-04-21 23:22:11 +09:00
Dean Herbert
9d8f0c854d Setup configuration item for editor hit animations 2021-04-21 18:05:40 +09:00
Dean Herbert
c6c91cd9a5 Refactor WaveformOpacityMenuItem to not receive whole config 2021-04-21 18:05:26 +09:00
smoogipoo
f32d00c0d9 Fix post-merge errors 2021-04-21 17:13:01 +09:00
smoogipoo
e78ef05fcf Merge branch 'gcc-abstraction' into multiplayer-spectator-screen 2021-04-21 17:11:14 +09:00
smoogipoo
31c5fb350f Merge branch 'master' into gcc-abstraction 2021-04-21 16:33:36 +09:00
smoogipoo
fb848f7544 Rename to MasterGameplayClock 2021-04-21 16:33:14 +09:00
Dean Herbert
26430e3cb5
Merge pull request #12492 from Naxesss/bg-audio-quality-checks
Add background and audio checks
2021-04-21 00:10:32 +09:00
smoogipoo
a9e4a0ed50 Fix potentially starting play when finished
The UserFinishedPlaying event may trigger before the event is subscribed
to by SpectatorScreen. For such cases, an extra check is done to make
sure the user is _actually_ playing.
2021-04-20 21:19:08 +09:00
smoogipoo
156a518068 Merge branch 'master' into fix-initial-spectator-state-callback 2021-04-20 21:16:05 +09:00
Naxess
3e1b6b3b34 Simplify verifier run call args
Uses the resolved working beatmap instead of resolving it every time.

Also uses the EditorBeatmap itself as playable beatmap, as it is of type `IBeatmap` already, and `.PlayableBeatmap` forwards everything anyway.
2021-04-20 13:34:12 +02:00
smoogipoo
ec080fcb32 Move seekOffset back to MasterGameplayClockContainer 2021-04-20 18:25:46 +09:00
smoogipoo
a683e5ec34 Seek using local method 2021-04-20 17:40:11 +09:00
smoogipoo
97fb90d9f4 Move clock processing to base.Seek() 2021-04-20 17:35:59 +09:00
smoogipoo
80473a356e Merge branch 'fix-pre-seek-sample-lifetime' into gcc-abstraction 2021-04-20 17:27:01 +09:00
smoogipoo
3d6d26039a Remove unused usings 2021-04-20 14:09:54 +09:00
smoogipoo
88ded95e75 Ensure clock is set in GCC.Start() 2021-04-20 13:56:13 +09:00
smoogipoo
8dd9134e3d Move source clock adjustment application to Start() 2021-04-20 13:09:49 +09:00
smoogipoo
a92ae8ce76 Fix Reset() potentially not resetting to the intended start position 2021-04-20 13:01:42 +09:00
Naxess
496df411a7 Remove now unused import 2021-04-20 02:39:11 +02:00
Naxess
0e6b66f457
Merge branch 'master' into bg-audio-quality-checks 2021-04-20 02:36:13 +02:00