mirror of
https://github.com/RHeavenStudio/HeavenStudio.git
synced 2025-06-12 21:57:37 +02:00
workaround sneaky spirits pause jank
make BeatAction also wait for conductor DSP to start remove leftover logic from old conductor sync fix #630 fix #632 fix #633
This commit is contained in:
@ -49,12 +49,13 @@ namespace HeavenStudio.Util
|
||||
|
||||
static async UniTask BeatActionAsync(MonoBehaviour behaviour, List<Action> actions, CancellationToken token)
|
||||
{
|
||||
Conductor conductor = Conductor.instance;
|
||||
int idx = 0;
|
||||
while (idx < actions.Count)
|
||||
{
|
||||
await UniTask.WaitUntil(() => Conductor.instance.songPositionInBeatsAsDouble >= actions[idx].beat || !(Conductor.instance.isPlaying || Conductor.instance.isPaused) || behaviour == null, cancellationToken: token);
|
||||
await UniTask.WaitUntil(() => (conductor.songPositionInBeatsAsDouble >= actions[idx].beat && !conductor.WaitingForDsp) || !(conductor.isPlaying || conductor.isPaused) || behaviour == null, cancellationToken: token);
|
||||
|
||||
if (behaviour == null || !(Conductor.instance.isPlaying || Conductor.instance.isPaused))
|
||||
if (behaviour == null || !(conductor.isPlaying || conductor.isPaused))
|
||||
return;
|
||||
|
||||
actions[idx].function.Invoke();
|
||||
|
Reference in New Issue
Block a user