Fixed the round 1 video timer continuing to run when a video was skipped.

This commit is contained in:
2026-05-06 19:01:13 -04:00
parent 9aa4339e8c
commit e52ab0d43d
6 changed files with 946 additions and 277 deletions
@@ -302,25 +302,25 @@ MonoBehaviour:
Data:
- Name: $k
Entry: 1
Data: _CameraSwitcher
Data: _CameraSwitchers
- Name: $v
Entry: 7
Data: 20|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: _CameraSwitcher
Data: _CameraSwitchers
- Name: <UserType>k__BackingField
Entry: 7
Data: 21|System.RuntimeType, mscorlib
- Name:
Entry: 1
Data: CameraSwitchTrigger, Assembly-CSharp
Data: CameraSwitchTrigger[], Assembly-CSharp
- Name:
Entry: 8
Data:
- Name: <SystemType>k__BackingField
Entry: 9
Data: 4
Data: 17
- Name: <SyncMode>k__BackingField
Entry: 7
Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib
@@ -12,7 +12,7 @@ public class FilingCabinet : UdonSharpBehaviour
[SerializeField] private Animator _Animator;
[SerializeField] private GameObject[] _DrawerHandleTriggers;
[SerializeField] private FilingCabinetNoteDispenser[] _NoteDispensers;
[SerializeField] private CameraSwitchTrigger _CameraSwitcher;
[SerializeField] private CameraSwitchTrigger[] _CameraSwitchers;
[UdonSynced, FieldChangeCallback(nameof(Activate))] private bool _Activate = false;
@@ -176,7 +176,11 @@ public class FilingCabinet : UdonSharpBehaviour
{
Trigger.SetActive(_Activate);
}
_CameraSwitcher.gameObject.SetActive(_Activate);
foreach (CameraSwitchTrigger Trigger in _CameraSwitchers)
{
Trigger.gameObject.SetActive(_Activate);
}
if (!_Activate)
{
@@ -429,6 +429,7 @@ public class GameManagerRound1 : GameManagerBase
HostCardBetweenRoundsInterface Interface =
(HostCardBetweenRoundsInterface)GetHostCardInterface(RoundSegmentType.BetweenSegments);
_CameraControllerRound1.DisableAllSwitchers();
_CameraControllerRound1.ActivateACMECrimenetComputerCamera();
string UntranslatedText = "";
@@ -512,7 +513,8 @@ public class GameManagerRound1 : GameManagerBase
{
HostCardBetweenRoundsInterface Interface =
(HostCardBetweenRoundsInterface)GetHostCardInterface(RoundSegmentType.BetweenSegments);
_CameraControllerRound1.DisableAllSwitchers();
_CameraControllerRound1.ActivateFilingCabinetCamera();
if (Presentation.ContainsKey("Clue Notes") && Presentation["Clue Notes"].TokenType == TokenType.DataList)
@@ -567,6 +569,8 @@ public class GameManagerRound1 : GameManagerBase
private void MultipleChoiceRevealQuestion()
{
_StopVideo();
_QuestionSubstage = 0;
_VideoPlayer.SubMapIndex = 0;
for (int i = 0; i < _PlayerPodiums.Length; i++)
@@ -1945,8 +1949,13 @@ public class GameManagerRound1 : GameManagerBase
_VideoPlayerTimer = _VideoPlayer.GetVideoDuration() - _CameraControllerRound1.HostToMonitorTimerToggle.GetTimeBetweenCuts(0);
}
private void _StopVideo()
{
_VideoPlayerTimer = -1.0f;
}
public void EndVideoPlayerCameraSwitch()
{
_StopVideo();
_CameraControllerRound1.ActivateHostAllPlayersCameraSwitcher();
}