Dean Herbert
5079e0d83d
Merge branch 'master' into no-gameplay-clock-gameplay-offset
2022-08-24 16:52:10 +09:00
Dean Herbert
b5c244e624
Merge pull request #19936 from peppy/catch-up-woes-2
...
Move `MasterClockState` handling in to `SpectatorSyncManager`
2022-08-24 16:48:28 +09:00
Dean Herbert
7f9246637a
Simplify MultiSpectatorScreen
hierarchy construction
2022-08-24 16:08:48 +09:00
Dean Herbert
7c1fc4814e
Remove unused CreateMasterGameplayClockContainer
method
2022-08-24 16:03:38 +09:00
Dean Herbert
871365bbb0
Inline ReadyToStart
action binding for added safety
2022-08-24 16:03:38 +09:00
Dean Herbert
6c50f618a3
Don't use bindable flow for masterState
2022-08-24 16:03:38 +09:00
Dean Herbert
683d49c608
Move MasterClockState
handling in to SpectatorSyncManager
2022-08-24 16:03:38 +09:00
Dean Herbert
d33d705684
Make WaitingOnFrames
non-bindable
2022-08-24 16:03:38 +09:00
Dean Herbert
d05d8aeb22
Simplify interface implementations
2022-08-24 16:03:38 +09:00
Dean Herbert
2f5be6efca
Tidy up ProcessFrame
and privatise const
2022-08-24 16:03:38 +09:00
Dean Herbert
b564c34dbc
Don't process master clock (is a noop)
2022-08-24 16:03:38 +09:00
Dan Balasescu
f5a71ecdfe
Merge pull request #19933 from peppy/catch-up-woes
...
Tidy up spectator clock/manager naming and interfaces
2022-08-24 16:03:29 +09:00
Dean Herbert
b4eede61fb
Use readonly
instead of get-only
2022-08-24 15:28:18 +09:00
Dean Herbert
0b271fe4b3
Fix incorrect IsRunning
value
2022-08-24 15:27:31 +09:00
Dean Herbert
b6254a1f25
Remove unnecessary casting
2022-08-24 15:23:31 +09:00
Dean Herbert
a86fc6f248
Change running state of SpectatorPlayerClock
using IsRunning
2022-08-24 15:17:56 +09:00
Dean Herbert
0c9a4ec13c
Don't expose MasterClock
in SpectatorClockSyncManager
2022-08-24 15:13:08 +09:00
Dean Herbert
995e6664b6
Rename spectator clock sync classes
2022-08-24 15:13:08 +09:00
Dean Herbert
31f657fe01
Remove ISpectatorPlayerClock
interface
...
Too many levels of redirection.
One interface with one implementation is not useful, IMO.
2022-08-24 15:12:57 +09:00
Dean Herbert
882dd93942
Remove ISyncManager
interface
...
Too many levels of redirection.
One interface with one implementation is not useful, IMO.
2022-08-24 15:12:57 +09:00
Dean Herbert
22963ab951
Fix multiplayer spectator getting stuck
2022-08-24 15:12:57 +09:00
Dean Herbert
ec31f37ff7
Accept MasterGameplayClockContainer
rather than generic clock
2022-08-24 14:51:14 +09:00
Dean Herbert
85fbe7abca
Fix multiplayer spectator getting stuck
2022-08-24 13:11:53 +09:00
Dean Herbert
46d000b8ce
Fix test regressions on windows due to Reset
never being called
...
I'm not sure this is great. Without calling `Reset`, the correct initial
time may not be set (ever). In practice this doesn't happen anywhere in
the gameplay flow, but something worth noting.
This change is required now that `Reset` isn't called in the
constructor. It couldn't be called in the constructor because it would
cause the audio track to reset its position too early.
What an ordeal.
2022-08-24 11:50:20 +09:00
Dean Herbert
29fed0c4a3
Avoid setting the source clock until gameplay is ready to start
...
Without this change, the audio track may audibly seek during load
proceedings.
2022-08-23 18:34:17 +09:00
Dean Herbert
ec61a94dc9
Merge branch 'master' into no-gameplay-clock-gameplay-offset
2022-08-23 17:36:06 +09:00
Dean Herbert
51e607e834
Merge pull request #19911 from smoogipoo/multi-spectator-clock-cleanup
...
Invert creation of clocks in multi-spectator
2022-08-23 14:26:06 +09:00
Dean Herbert
553897f2f0
Remove AddClock
method to CreateManagedClock
2022-08-23 13:52:43 +09:00
Dean Herbert
1191b6c080
Remove unused Source_Set
implementation on ISpectatorPlayerClock
2022-08-23 13:44:41 +09:00
Dan Balasescu
c59298f0ce
Enable NRT
2022-08-22 21:55:04 +09:00
Dean Herbert
489e172a76
Simplify track start/stop/paused tracking
2022-08-22 19:43:18 +09:00
Dan Balasescu
5d3d8681d4
Invert creation of clocks in multi spectator
2022-08-22 19:14:06 +09:00
Dan Balasescu
3fb3a18e68
Merge pull request #19906 from peppy/fix-editor-crash-mobile
...
Fix editor crashing on mobile releases
2022-08-22 16:31:19 +09:00
Dean Herbert
058d67f8e8
Merge pull request #19695 from naoei/ruleset-localization
...
Change most ruleset-accessible string types to Localisable strings
2022-08-22 16:13:23 +09:00
Dean Herbert
19bba143ee
Fix editor crashing on mobile releases
2022-08-22 15:57:24 +09:00
Dan Balasescu
0815b01b75
Merge pull request #19783 from bdach/mod-select/presets-dont-open-customisation
...
Fix selecting preset containing Difficulty Adjust automatically opening customisation panel
2022-08-22 15:44:00 +09:00
Dan Balasescu
2bc0a68911
Merge pull request #19830 from peppy/test-ruleset-compatibility
...
Test ruleset compatibility during initial startup to avoid runtime errors
2022-08-22 15:24:46 +09:00
Dean Herbert
d199b3b100
Update GetVariantName
to also support localisation
2022-08-22 14:51:00 +09:00
Dean Herbert
9d31f61ca9
Don't throw when a ruleset type is completely missing
2022-08-22 14:35:44 +09:00
Dean Herbert
594353fca1
Merge pull request #19905 from smoogipoo/fix-text-boldening
...
Fix language change removing mod column bold text
2022-08-22 14:15:22 +09:00
Dean Herbert
e6b669db8e
Elaborate with example of GameplayClockContainer
managing its own Stop
state
2022-08-22 14:14:44 +09:00
Dean Herbert
af2e82d7d5
Move operation of setting GameplayClockContainer.StartTime
to Reset
call
2022-08-22 14:11:06 +09:00
Dean Herbert
17a1df281c
Fix incorrect implicit null specification for user audio offset bindable
2022-08-22 14:03:51 +09:00
Dean Herbert
ba23ce75c2
Make FramedBeatmapClock.Track
non-null
2022-08-22 14:02:41 +09:00
Dean Herbert
85d0b7fc57
Reword class xmldoc to better explain that offset application is optional
2022-08-22 14:02:20 +09:00
Dan Balasescu
b81c7ffc60
Merge pull request #19868 from peppy/fix-test-deadlocks
...
Add safeties to avoid deadlock in `SubmittingPlayer`
2022-08-22 13:17:41 +09:00
Dan Balasescu
e1fa959f0b
Fix language change removing mod column bold text
2022-08-22 13:00:47 +09:00
Dean Herbert
3ef6c60d1f
Merge pull request #19898 from bdach/mod-select/fix-difficulty-multiplier-rounding
...
Adjust rounding in mod select difficulty multiplier to match song select footer
2022-08-22 11:18:34 +09:00
Bartłomiej Dach
aa15e84bea
Adjust rounding in mod select difficulty multiplier to match song select footer
...
The 0.01 `Precision` spec on `DifficultyMultiplierDisplay.Current` would
cause the difficulty multiplier to use a different midpoint rounding
strategy than `double.ToString()`, which is the one that the song select
footer relies on. For example, a value of 0.015 would be rounded down
to 0.01 by `double.ToString()`, but rounded up to 0.02
by `BindableDouble`.
Fix the discrepancy by just deleting the `Precision` spec. Since the
value of the bindable would go through `ToLocalisableString(@"N2")`
anyway, it was redundant as is.
Fixes #19889 .
2022-08-21 23:15:49 +02:00
naoei
29ef1c8db8
Check if StatisticItem.Name is null or empty
2022-08-20 21:48:53 -04:00