- Reworked CameraTimedSwitcher to be able to execute callback functions.

- Cameras are thus much more reliable and less likely to desync in round 2.
This commit is contained in:
Jamie Greunbaum 2025-12-23 05:03:14 -05:00
parent 2281fae54e
commit 27abad7657
7 changed files with 900 additions and 250 deletions

View File

@ -1062,6 +1062,9 @@ MonoBehaviour:
- SwitchToPlayer1Camera - SwitchToPlayer1Camera
- SwitchToPlayer2Camera - SwitchToPlayer2Camera
_TimeBetweenCuts: 2 _TimeBetweenCuts: 2
_LoopPoint: 0
_FirstLoopCallbackObject: {fileID: 0}
_FirstLoopCallbackFunction:
--- !u!1 &37402018 stripped --- !u!1 &37402018 stripped
GameObject: GameObject:
m_CorrespondingSourceObject: {fileID: 1162471344109280769, guid: 40955da061a841841a91c845049f1e11, m_CorrespondingSourceObject: {fileID: 1162471344109280769, guid: 40955da061a841841a91c845049f1e11,
@ -11719,21 +11722,11 @@ PrefabInstance:
propertyPath: m_Name propertyPath: m_Name
value: SpawnMarker (1) value: SpawnMarker (1)
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 8a0236a6fb2773f46b033e383a3f4f55,
type: 3}
propertyPath: m_Layer
value: 0
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 8a0236a6fb2773f46b033e383a3f4f55, - target: {fileID: 919132149155446097, guid: 8a0236a6fb2773f46b033e383a3f4f55,
type: 3} type: 3}
propertyPath: m_IsActive propertyPath: m_IsActive
value: 1 value: 1
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 8a0236a6fb2773f46b033e383a3f4f55,
type: 3}
propertyPath: m_TagString
value: EditorOnly
objectReference: {fileID: 0}
m_RemovedComponents: [] m_RemovedComponents: []
m_RemovedGameObjects: [] m_RemovedGameObjects: []
m_AddedGameObjects: [] m_AddedGameObjects: []
@ -30268,6 +30261,9 @@ MonoBehaviour:
- SwitchToPlayer2Camera - SwitchToPlayer2Camera
- SwitchToPlayer3Camera - SwitchToPlayer3Camera
_TimeBetweenCuts: 2.5 _TimeBetweenCuts: 2.5
_LoopPoint: 0
_FirstLoopCallbackObject: {fileID: 0}
_FirstLoopCallbackFunction:
--- !u!1 &458823600 stripped --- !u!1 &458823600 stripped
GameObject: GameObject:
m_CorrespondingSourceObject: {fileID: 3860776843712865553, guid: be33bc7f6c414e6409becfa348b9310d, m_CorrespondingSourceObject: {fileID: 3860776843712865553, guid: be33bc7f6c414e6409becfa348b9310d,
@ -32184,6 +32180,97 @@ GameObject:
type: 3} type: 3}
m_PrefabInstance: {fileID: 1499591484} m_PrefabInstance: {fileID: 1499591484}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
--- !u!1 &529984885
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 529984886}
- component: {fileID: 529984888}
- component: {fileID: 529984887}
m_Layer: 0
m_Name: Location Board And Short Host Switcher
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &529984886
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 529984885}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: -6.64, y: 0, z: 0.41}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 1451322102}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &529984887
MonoBehaviour:
m_ObjectHideFlags: 2
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 529984885}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 45115577ef41a5b4ca741ed302693907, type: 3}
m_Name:
m_EditorClassIdentifier:
interactTextPlacement: {fileID: 0}
interactText: Use
interactTextGO: {fileID: 0}
proximity: 2
SynchronizePosition: 0
AllowCollisionOwnershipTransfer: 0
Reliable: 0
_syncMethod: 3
serializedProgramAsset: {fileID: 11400000, guid: b84f3dc1edf53b846a172badddd49737,
type: 2}
programSource: {fileID: 11400000, guid: 1fc8e4389a71e5640b656e2c7fbabeed, type: 2}
serializedPublicVariablesBytesString: Ai8AAAAAATIAAABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlAFQAYQBiAGwAZQAsACAAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4AAAAAAAYBAAAAAAAAACcBBAAAAHQAeQBwAGUAAWgAAABTAHkAcwB0AGUAbQAuAEMAbwBsAGwAZQBjAHQAaQBvAG4AcwAuAEcAZQBuAGUAcgBpAGMALgBMAGkAcwB0AGAAMQBbAFsAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4ALgBJAG4AdABlAHIAZgBhAGMAZQBzAC4ASQBVAGQAbwBuAFYAYQByAGkAYQBiAGwAZQAsACAAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4AXQBdACwAIABtAHMAYwBvAHIAbABpAGIAAQEJAAAAVgBhAHIAaQBhAGIAbABlAHMALwEAAAABaAAAAFMAeQBzAHQAZQBtAC4AQwBvAGwAbABlAGMAdABpAG8AbgBzAC4ARwBlAG4AZQByAGkAYwAuAEwAaQBzAHQAYAAxAFsAWwBWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAEkAbgB0AGUAcgBmAGEAYwBlAHMALgBJAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlACwAIABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgBdAF0ALAAgAG0AcwBjAG8AcgBsAGkAYgABAAAABgEAAAAAAAAAAi8CAAAAAUkAAABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlAGAAMQBbAFsAUwB5AHMAdABlAG0ALgBJAG4AdAAzADIALAAgAG0AcwBjAG8AcgBsAGkAYgBdAF0ALAAgAFYAUgBDAC4AVQBkAG8AbgAuAEMAbwBtAG0AbwBuAAIAAAAGAgAAAAAAAAAnAQQAAAB0AHkAcABlAAEXAAAAUwB5AHMAdABlAG0ALgBTAHQAcgBpAG4AZwAsACAAbQBzAGMAbwByAGwAaQBiACcBCgAAAFMAeQBtAGIAbwBsAE4AYQBtAGUAAR8AAABfAF8AXwBVAGQAbwBuAFMAaABhAHIAcABCAGUAaABhAHYAaQBvAHUAcgBWAGUAcgBzAGkAbwBuAF8AXwBfACcBBAAAAHQAeQBwAGUAARYAAABTAHkAcwB0AGUAbQAuAEkAbgB0ADMAMgAsACAAbQBzAGMAbwByAGwAaQBiABcBBQAAAFYAYQBsAHUAZQACAAAABwUHBQcF
publicVariablesUnityEngineObjects: []
publicVariablesSerializationDataFormat: 0
--- !u!114 &529984888
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 529984885}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 7c74cc2036e37f74b874180a8ad0235f, type: 3}
m_Name:
m_EditorClassIdentifier:
serializationData:
SerializedFormat: 2
SerializedBytes:
ReferencedUnityObjects: []
SerializedBytesString:
Prefab: {fileID: 0}
PrefabModificationsReferencedUnityObjects: []
PrefabModifications: []
SerializationNodes: []
_udonSharpBackingUdonBehaviour: {fileID: 529984887}
_CameraController: {fileID: 1355919010}
_SwitchFunctions:
- SwitchToLocationBoardCamera
- SwitchToHostAndWinnerCamera
- SwitchToHostAndWinnerCamera
- SwitchToHostAndWinnerCamera
_TimeBetweenCuts: 1.5
_LoopPoint: 0
_FirstLoopCallbackObject: {fileID: 865296978}
_FirstLoopCallbackFunction: SwitchToCurrentPlayerAndLocationBoardSwitcher
--- !u!1 &530310355 --- !u!1 &530310355
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -32775,6 +32862,9 @@ MonoBehaviour:
- SwitchToHostCamera - SwitchToHostCamera
- SwitchToAllPlayersCamera - SwitchToAllPlayersCamera
_TimeBetweenCuts: 2.5 _TimeBetweenCuts: 2.5
_LoopPoint: 0
_FirstLoopCallbackObject: {fileID: 0}
_FirstLoopCallbackFunction:
--- !u!1 &554199908 stripped --- !u!1 &554199908 stripped
GameObject: GameObject:
m_CorrespondingSourceObject: {fileID: 2883740951159844552, guid: be33bc7f6c414e6409becfa348b9310d, m_CorrespondingSourceObject: {fileID: 2883740951159844552, guid: be33bc7f6c414e6409becfa348b9310d,
@ -40294,7 +40384,7 @@ GameObject:
- component: {fileID: 741456682} - component: {fileID: 741456682}
- component: {fileID: 741456681} - component: {fileID: 741456681}
m_Layer: 0 m_Layer: 0
m_Name: Player 2 And Wide Shot Switcher (1) m_Name: Player 2 And Location Board Switcher
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
@ -40366,8 +40456,11 @@ MonoBehaviour:
_CameraController: {fileID: 1355919010} _CameraController: {fileID: 1355919010}
_SwitchFunctions: _SwitchFunctions:
- SwitchToPlayer2Camera - SwitchToPlayer2Camera
- SwitchToWideShotCamera - SwitchToLocationBoardCamera
_TimeBetweenCuts: 3 _TimeBetweenCuts: 3
_LoopPoint: 0
_FirstLoopCallbackObject: {fileID: 0}
_FirstLoopCallbackFunction:
--- !u!1 &741728900 stripped --- !u!1 &741728900 stripped
GameObject: GameObject:
m_CorrespondingSourceObject: {fileID: 6713020845915447554, guid: fac4aa7abd3ecbe44a9eaf7f05275244, m_CorrespondingSourceObject: {fileID: 6713020845915447554, guid: fac4aa7abd3ecbe44a9eaf7f05275244,
@ -43307,16 +43400,6 @@ PrefabInstance:
propertyPath: m_Name propertyPath: m_Name
value: SpawnMarker (1) value: SpawnMarker (1)
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 8a0236a6fb2773f46b033e383a3f4f55,
type: 3}
propertyPath: m_Layer
value: 0
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 8a0236a6fb2773f46b033e383a3f4f55,
type: 3}
propertyPath: m_TagString
value: EditorOnly
objectReference: {fileID: 0}
m_RemovedComponents: [] m_RemovedComponents: []
m_RemovedGameObjects: [] m_RemovedGameObjects: []
m_AddedGameObjects: [] m_AddedGameObjects: []
@ -58251,6 +58334,9 @@ MonoBehaviour:
- SwitchToAllPlayersCamera - SwitchToAllPlayersCamera
- SwitchToWideShotCamera - SwitchToWideShotCamera
_TimeBetweenCuts: 2.5 _TimeBetweenCuts: 2.5
_LoopPoint: 0
_FirstLoopCallbackObject: {fileID: 0}
_FirstLoopCallbackFunction:
--- !u!1 &1193701799 --- !u!1 &1193701799
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -58687,21 +58773,11 @@ PrefabInstance:
propertyPath: m_Name propertyPath: m_Name
value: SpawnMarker (1) value: SpawnMarker (1)
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 8a0236a6fb2773f46b033e383a3f4f55,
type: 3}
propertyPath: m_Layer
value: 0
objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 8a0236a6fb2773f46b033e383a3f4f55, - target: {fileID: 919132149155446097, guid: 8a0236a6fb2773f46b033e383a3f4f55,
type: 3} type: 3}
propertyPath: m_IsActive propertyPath: m_IsActive
value: 1 value: 1
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 8a0236a6fb2773f46b033e383a3f4f55,
type: 3}
propertyPath: m_TagString
value: EditorOnly
objectReference: {fileID: 0}
m_RemovedComponents: [] m_RemovedComponents: []
m_RemovedGameObjects: [] m_RemovedGameObjects: []
m_AddedGameObjects: [] m_AddedGameObjects: []
@ -63486,8 +63562,10 @@ MonoBehaviour:
HostAndAllPlayersCameraTrigger: {fileID: 1311764233} HostAndAllPlayersCameraTrigger: {fileID: 1311764233}
HostAllPlayersTimerToggle: {fileID: 35514607} HostAllPlayersTimerToggle: {fileID: 35514607}
HostPlayersAndWideShotTimerToggle: {fileID: 1193018063} HostPlayersAndWideShotTimerToggle: {fileID: 1193018063}
Player1AndWideShotTimerToggle: {fileID: 1377550932} Player1AndLocationBoardTimerToggle: {fileID: 1377550932}
Player2AndWideShotTimerToggle: {fileID: 741456682} Player2AndLocationBoardTimerToggle: {fileID: 741456682}
LocationBoardAndShortHostTimerToggle: {fileID: 529984888}
LocationBoardAndLongHostTimerToggle: {fileID: 1875043588}
Player1CameraAnchor: {fileID: 783795840} Player1CameraAnchor: {fileID: 783795840}
Player2CameraAnchor: {fileID: 739684421} Player2CameraAnchor: {fileID: 739684421}
HostAndWinnerCameraAnchor: {fileID: 1117826905} HostAndWinnerCameraAnchor: {fileID: 1117826905}
@ -63942,7 +64020,7 @@ GameObject:
- component: {fileID: 1377550932} - component: {fileID: 1377550932}
- component: {fileID: 1377550931} - component: {fileID: 1377550931}
m_Layer: 0 m_Layer: 0
m_Name: Player 1 And Wide Shot Switcher m_Name: Player 1 And Location Board Switcher
m_TagString: Untagged m_TagString: Untagged
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
@ -64014,8 +64092,11 @@ MonoBehaviour:
_CameraController: {fileID: 1355919010} _CameraController: {fileID: 1355919010}
_SwitchFunctions: _SwitchFunctions:
- SwitchToPlayer1Camera - SwitchToPlayer1Camera
- SwitchToWideShotCamera - SwitchToLocationBoardCamera
_TimeBetweenCuts: 3 _TimeBetweenCuts: 3
_LoopPoint: 0
_FirstLoopCallbackObject: {fileID: 0}
_FirstLoopCallbackFunction:
--- !u!1 &1378992343 stripped --- !u!1 &1378992343 stripped
GameObject: GameObject:
m_CorrespondingSourceObject: {fileID: 5677162063728742216, guid: c3b6993d13023194d904d6353e18944f, m_CorrespondingSourceObject: {fileID: 5677162063728742216, guid: c3b6993d13023194d904d6353e18944f,
@ -66068,6 +66149,8 @@ Transform:
- {fileID: 1193018061} - {fileID: 1193018061}
- {fileID: 1377550930} - {fileID: 1377550930}
- {fileID: 741456680} - {fileID: 741456680}
- {fileID: 529984886}
- {fileID: 1875043586}
- {fileID: 115578769} - {fileID: 115578769}
- {fileID: 1583513123} - {fileID: 1583513123}
- {fileID: 1449300098} - {fileID: 1449300098}
@ -66273,6 +66356,9 @@ MonoBehaviour:
- SwitchToHostCamera - SwitchToHostCamera
- SwitchToPlayerCamera - SwitchToPlayerCamera
_TimeBetweenCuts: 5 _TimeBetweenCuts: 5
_LoopPoint: 0
_FirstLoopCallbackObject: {fileID: 0}
_FirstLoopCallbackFunction:
--- !u!1 &1461972938 stripped --- !u!1 &1461972938 stripped
GameObject: GameObject:
m_CorrespondingSourceObject: {fileID: 973995804437909872, guid: e9914385266bca24db809c39e395f03c, m_CorrespondingSourceObject: {fileID: 973995804437909872, guid: e9914385266bca24db809c39e395f03c,
@ -87886,6 +87972,98 @@ Transform:
- {fileID: 247036823} - {fileID: 247036823}
m_Father: {fileID: 938262255} m_Father: {fileID: 938262255}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1875043585
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1875043586}
- component: {fileID: 1875043588}
- component: {fileID: 1875043587}
m_Layer: 0
m_Name: Location Board And Long Host Switcher
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1875043586
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1875043585}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: -6.64, y: 0, z: 0.41}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 1451322102}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1875043587
MonoBehaviour:
m_ObjectHideFlags: 2
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1875043585}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 45115577ef41a5b4ca741ed302693907, type: 3}
m_Name:
m_EditorClassIdentifier:
interactTextPlacement: {fileID: 0}
interactText: Use
interactTextGO: {fileID: 0}
proximity: 2
SynchronizePosition: 0
AllowCollisionOwnershipTransfer: 0
Reliable: 0
_syncMethod: 3
serializedProgramAsset: {fileID: 11400000, guid: b84f3dc1edf53b846a172badddd49737,
type: 2}
programSource: {fileID: 11400000, guid: 1fc8e4389a71e5640b656e2c7fbabeed, type: 2}
serializedPublicVariablesBytesString: Ai8AAAAAATIAAABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlAFQAYQBiAGwAZQAsACAAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4AAAAAAAYBAAAAAAAAACcBBAAAAHQAeQBwAGUAAWgAAABTAHkAcwB0AGUAbQAuAEMAbwBsAGwAZQBjAHQAaQBvAG4AcwAuAEcAZQBuAGUAcgBpAGMALgBMAGkAcwB0AGAAMQBbAFsAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4ALgBJAG4AdABlAHIAZgBhAGMAZQBzAC4ASQBVAGQAbwBuAFYAYQByAGkAYQBiAGwAZQAsACAAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4AXQBdACwAIABtAHMAYwBvAHIAbABpAGIAAQEJAAAAVgBhAHIAaQBhAGIAbABlAHMALwEAAAABaAAAAFMAeQBzAHQAZQBtAC4AQwBvAGwAbABlAGMAdABpAG8AbgBzAC4ARwBlAG4AZQByAGkAYwAuAEwAaQBzAHQAYAAxAFsAWwBWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAEkAbgB0AGUAcgBmAGEAYwBlAHMALgBJAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlACwAIABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgBdAF0ALAAgAG0AcwBjAG8AcgBsAGkAYgABAAAABgEAAAAAAAAAAi8CAAAAAUkAAABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlAGAAMQBbAFsAUwB5AHMAdABlAG0ALgBJAG4AdAAzADIALAAgAG0AcwBjAG8AcgBsAGkAYgBdAF0ALAAgAFYAUgBDAC4AVQBkAG8AbgAuAEMAbwBtAG0AbwBuAAIAAAAGAgAAAAAAAAAnAQQAAAB0AHkAcABlAAEXAAAAUwB5AHMAdABlAG0ALgBTAHQAcgBpAG4AZwAsACAAbQBzAGMAbwByAGwAaQBiACcBCgAAAFMAeQBtAGIAbwBsAE4AYQBtAGUAAR8AAABfAF8AXwBVAGQAbwBuAFMAaABhAHIAcABCAGUAaABhAHYAaQBvAHUAcgBWAGUAcgBzAGkAbwBuAF8AXwBfACcBBAAAAHQAeQBwAGUAARYAAABTAHkAcwB0AGUAbQAuAEkAbgB0ADMAMgAsACAAbQBzAGMAbwByAGwAaQBiABcBBQAAAFYAYQBsAHUAZQACAAAABwUHBQcF
publicVariablesUnityEngineObjects: []
publicVariablesSerializationDataFormat: 0
--- !u!114 &1875043588
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1875043585}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 7c74cc2036e37f74b874180a8ad0235f, type: 3}
m_Name:
m_EditorClassIdentifier:
serializationData:
SerializedFormat: 2
SerializedBytes:
ReferencedUnityObjects: []
SerializedBytesString:
Prefab: {fileID: 0}
PrefabModificationsReferencedUnityObjects: []
PrefabModifications: []
SerializationNodes: []
_udonSharpBackingUdonBehaviour: {fileID: 1875043587}
_CameraController: {fileID: 1355919010}
_SwitchFunctions:
- SwitchToLocationBoardCamera
- SwitchToHostAndWinnerCamera
- SwitchToHostAndWinnerCamera
- SwitchToHostAndWinnerCamera
- SwitchToHostAndWinnerCamera
_TimeBetweenCuts: 1.5
_LoopPoint: 0
_FirstLoopCallbackObject: {fileID: 865296978}
_FirstLoopCallbackFunction: SwitchToCurrentPlayerAndLocationBoardSwitcher
--- !u!1 &1876563947 stripped --- !u!1 &1876563947 stripped
GameObject: GameObject:
m_CorrespondingSourceObject: {fileID: 990566370520094600, guid: 899ce13087fd5974f88dcbccaea2df85, m_CorrespondingSourceObject: {fileID: 990566370520094600, guid: 899ce13087fd5974f88dcbccaea2df85,
@ -110939,6 +111117,14 @@ MonoBehaviour:
ID: 1286 ID: 1286
SerializedTypeNames: SerializedTypeNames:
- VRC.Udon.UdonBehaviour - VRC.Udon.UdonBehaviour
- gameObject: {fileID: 1875043585}
ID: 1287
SerializedTypeNames:
- VRC.Udon.UdonBehaviour
- gameObject: {fileID: 529984885}
ID: 1288
SerializedTypeNames:
- VRC.Udon.UdonBehaviour
portraitCameraPositionOffset: {x: 0, y: 0, z: 0} portraitCameraPositionOffset: {x: 0, y: 0, z: 0}
portraitCameraRotationOffset: {x: 0, y: 1, z: 0, w: -0.00000004371139} portraitCameraRotationOffset: {x: 0, y: 1, z: 0, w: -0.00000004371139}
PlayerPersistence: [] PlayerPersistence: []

View File

@ -44,7 +44,7 @@ MonoBehaviour:
Data: Data:
- Name: - Name:
Entry: 12 Entry: 12
Data: 5 Data: 8
- Name: - Name:
Entry: 7 Entry: 7
Data: Data:
@ -210,12 +210,229 @@ MonoBehaviour:
- Name: _fieldAttributes - Name: _fieldAttributes
Entry: 7 Entry: 7
Data: 13|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib Data: 13|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib
- Name:
Entry: 12
Data: 2
- Name:
Entry: 7
Data: 14|UnityEngine.SpaceAttribute, UnityEngine.CoreModule
- Name: height
Entry: 4
Data: 8
- Name:
Entry: 8
Data:
- Name:
Entry: 7
Data: 15|UnityEngine.SerializeField, UnityEngine.CoreModule
- Name:
Entry: 8
Data:
- Name:
Entry: 13
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 7
Data:
- Name: $k
Entry: 1
Data: _LoopPoint
- Name: $v
Entry: 7
Data: 16|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: _LoopPoint
- Name: <UserType>k__BackingField
Entry: 7
Data: 17|System.RuntimeType, mscorlib
- Name:
Entry: 1
Data: System.Int32, mscorlib
- Name:
Entry: 8
Data:
- Name: <SystemType>k__BackingField
Entry: 9
Data: 17
- Name: <SyncMode>k__BackingField
Entry: 7
Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib
- Name:
Entry: 6
Data:
- Name:
Entry: 8
Data:
- Name: <IsSerialized>k__BackingField
Entry: 5
Data: true
- Name: _fieldAttributes
Entry: 7
Data: 18|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib
- Name:
Entry: 12
Data: 2
- Name:
Entry: 7
Data: 19|UnityEngine.SerializeField, UnityEngine.CoreModule
- Name:
Entry: 8
Data:
- Name:
Entry: 7
Data: 20|UnityEngine.TooltipAttribute, UnityEngine.CoreModule
- Name: tooltip
Entry: 1
Data: Loop to this point in the camera sequence. Default is index 0 (the beginning)
- Name:
Entry: 8
Data:
- Name:
Entry: 13
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 7
Data:
- Name: $k
Entry: 1
Data: _FirstLoopCallbackObject
- Name: $v
Entry: 7
Data: 21|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: _FirstLoopCallbackObject
- Name: <UserType>k__BackingField
Entry: 7
Data: 22|System.RuntimeType, mscorlib
- Name:
Entry: 1
Data: UdonSharp.UdonSharpBehaviour, UdonSharp.Runtime
- Name:
Entry: 8
Data:
- Name: <SystemType>k__BackingField
Entry: 9
Data: 4
- Name: <SyncMode>k__BackingField
Entry: 7
Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib
- Name:
Entry: 6
Data:
- Name:
Entry: 8
Data:
- Name: <IsSerialized>k__BackingField
Entry: 5
Data: true
- Name: _fieldAttributes
Entry: 7
Data: 23|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib
- Name:
Entry: 12
Data: 3
- Name:
Entry: 7
Data: 24|UnityEngine.SpaceAttribute, UnityEngine.CoreModule
- Name: height
Entry: 4
Data: 8
- Name:
Entry: 8
Data:
- Name:
Entry: 7
Data: 25|UnityEngine.SerializeField, UnityEngine.CoreModule
- Name:
Entry: 8
Data:
- Name:
Entry: 7
Data: 26|UnityEngine.TooltipAttribute, UnityEngine.CoreModule
- Name: tooltip
Entry: 1
Data: Set this to call a function on an UdonSharpBehaviour instead of looping
the camera sequence
- Name:
Entry: 8
Data:
- Name:
Entry: 13
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 7
Data:
- Name: $k
Entry: 1
Data: _FirstLoopCallbackFunction
- Name: $v
Entry: 7
Data: 27|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: _FirstLoopCallbackFunction
- Name: <UserType>k__BackingField
Entry: 7
Data: 28|System.RuntimeType, mscorlib
- Name:
Entry: 1
Data: System.String, mscorlib
- Name:
Entry: 8
Data:
- Name: <SystemType>k__BackingField
Entry: 9
Data: 28
- Name: <SyncMode>k__BackingField
Entry: 7
Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib
- Name:
Entry: 6
Data:
- Name:
Entry: 8
Data:
- Name: <IsSerialized>k__BackingField
Entry: 5
Data: true
- Name: _fieldAttributes
Entry: 7
Data: 29|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib
- Name: - Name:
Entry: 12 Entry: 12
Data: 1 Data: 1
- Name: - Name:
Entry: 7 Entry: 7
Data: 14|UnityEngine.SerializeField, UnityEngine.CoreModule Data: 30|UnityEngine.SerializeField, UnityEngine.CoreModule
- Name: - Name:
Entry: 8 Entry: 8
Data: Data:
@ -239,13 +456,13 @@ MonoBehaviour:
Data: _Active Data: _Active
- Name: $v - Name: $v
Entry: 7 Entry: 7
Data: 15|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor Data: 31|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField - Name: <Name>k__BackingField
Entry: 1 Entry: 1
Data: _Active Data: _Active
- Name: <UserType>k__BackingField - Name: <UserType>k__BackingField
Entry: 7 Entry: 7
Data: 16|System.RuntimeType, mscorlib Data: 32|System.RuntimeType, mscorlib
- Name: - Name:
Entry: 1 Entry: 1
Data: System.Boolean, mscorlib Data: System.Boolean, mscorlib
@ -254,7 +471,7 @@ MonoBehaviour:
Data: Data:
- Name: <SystemType>k__BackingField - Name: <SystemType>k__BackingField
Entry: 9 Entry: 9
Data: 16 Data: 32
- Name: <SyncMode>k__BackingField - Name: <SyncMode>k__BackingField
Entry: 7 Entry: 7
Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib
@ -269,19 +486,19 @@ MonoBehaviour:
Data: false Data: false
- Name: _fieldAttributes - Name: _fieldAttributes
Entry: 7 Entry: 7
Data: 17|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib Data: 33|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib
- Name: - Name:
Entry: 12 Entry: 12
Data: 2 Data: 2
- Name: - Name:
Entry: 7 Entry: 7
Data: 18|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime Data: 34|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime
- Name: - Name:
Entry: 8 Entry: 8
Data: Data:
- Name: - Name:
Entry: 7 Entry: 7
Data: 19|UdonSharp.FieldChangeCallbackAttribute, UdonSharp.Runtime Data: 35|UdonSharp.FieldChangeCallbackAttribute, UdonSharp.Runtime
- Name: - Name:
Entry: 8 Entry: 8
Data: Data:
@ -305,22 +522,16 @@ MonoBehaviour:
Data: _NextCameraIndex Data: _NextCameraIndex
- Name: $v - Name: $v
Entry: 7 Entry: 7
Data: 20|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor Data: 36|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField - Name: <Name>k__BackingField
Entry: 1 Entry: 1
Data: _NextCameraIndex Data: _NextCameraIndex
- Name: <UserType>k__BackingField - Name: <UserType>k__BackingField
Entry: 7 Entry: 9
Data: 21|System.RuntimeType, mscorlib Data: 17
- Name:
Entry: 1
Data: System.Int32, mscorlib
- Name:
Entry: 8
Data:
- Name: <SystemType>k__BackingField - Name: <SystemType>k__BackingField
Entry: 9 Entry: 9
Data: 21 Data: 17
- Name: <SyncMode>k__BackingField - Name: <SyncMode>k__BackingField
Entry: 7 Entry: 7
Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib
@ -335,7 +546,7 @@ MonoBehaviour:
Data: false Data: false
- Name: _fieldAttributes - Name: _fieldAttributes
Entry: 7 Entry: 7
Data: 22|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib Data: 37|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib
- Name: - Name:
Entry: 12 Entry: 12
Data: 0 Data: 0

View File

@ -10,10 +10,16 @@ using VRC.Udon;
[UdonBehaviourSyncMode(BehaviourSyncMode.Manual)] [UdonBehaviourSyncMode(BehaviourSyncMode.Manual)]
public class CameraTimedSwitcher : UdonSharpBehaviour public class CameraTimedSwitcher : UdonSharpBehaviour
{ {
[SerializeField] private CameraControllerBase _CameraController; [SerializeField] private CameraControllerBase _CameraController;
[SerializeField] private string[] _SwitchFunctions; [SerializeField] private string[] _SwitchFunctions;
[Space]
[SerializeField] private float _TimeBetweenCuts = 5.0f; [SerializeField] private float _TimeBetweenCuts = 5.0f;
[SerializeField, Tooltip("Loop to this point in the camera sequence. Default is index 0 (the beginning)")]
private int _LoopPoint = 0;
[Space]
[SerializeField, Tooltip("Set this to call a function on an UdonSharpBehaviour instead of looping the camera sequence")]
private UdonSharpBehaviour _FirstLoopCallbackObject = null;
[SerializeField] private string _FirstLoopCallbackFunction = "";
[UdonSynced, FieldChangeCallback(nameof(Activate))] private bool _Active = false; [UdonSynced, FieldChangeCallback(nameof(Activate))] private bool _Active = false;
@ -26,6 +32,19 @@ public class CameraTimedSwitcher : UdonSharpBehaviour
{ {
_CameraController.SendCustomEvent(_SwitchFunctions[_NextCameraIndex]); _CameraController.SendCustomEvent(_SwitchFunctions[_NextCameraIndex]);
_NextCameraIndex = (_NextCameraIndex + 1) % _SwitchFunctions.Length; _NextCameraIndex = (_NextCameraIndex + 1) % _SwitchFunctions.Length;
if (_NextCameraIndex == 0)
{
if (_FirstLoopCallbackObject != null)
{
Activate = false;
_FirstLoopCallbackObject.SendCustomEvent(_FirstLoopCallbackFunction);
return;
}
else
{
_NextCameraIndex = _LoopPoint;
}
}
SendCustomEventDelayedSeconds(nameof(SwitchToNextCamera), _TimeBetweenCuts); SendCustomEventDelayedSeconds(nameof(SwitchToNextCamera), _TimeBetweenCuts);
} }

View File

@ -44,7 +44,7 @@ MonoBehaviour:
Data: Data:
- Name: - Name:
Entry: 12 Entry: 12
Data: 20 Data: 22
- Name: - Name:
Entry: 7 Entry: 7
Data: Data:
@ -647,13 +647,13 @@ MonoBehaviour:
Data: Data:
- Name: $k - Name: $k
Entry: 1 Entry: 1
Data: Player1AndWideShotTimerToggle Data: Player1AndLocationBoardTimerToggle
- Name: $v - Name: $v
Entry: 7 Entry: 7
Data: 40|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor Data: 40|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField - Name: <Name>k__BackingField
Entry: 1 Entry: 1
Data: Player1AndWideShotTimerToggle Data: Player1AndLocationBoardTimerToggle
- Name: <UserType>k__BackingField - Name: <UserType>k__BackingField
Entry: 9 Entry: 9
Data: 33 Data: 33
@ -701,13 +701,13 @@ MonoBehaviour:
Data: Data:
- Name: $k - Name: $k
Entry: 1 Entry: 1
Data: Player2AndWideShotTimerToggle Data: Player2AndLocationBoardTimerToggle
- Name: $v - Name: $v
Entry: 7 Entry: 7
Data: 43|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor Data: 43|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField - Name: <Name>k__BackingField
Entry: 1 Entry: 1
Data: Player2AndWideShotTimerToggle Data: Player2AndLocationBoardTimerToggle
- Name: <UserType>k__BackingField - Name: <UserType>k__BackingField
Entry: 9 Entry: 9
Data: 33 Data: 33
@ -755,16 +755,124 @@ MonoBehaviour:
Data: Data:
- Name: $k - Name: $k
Entry: 1 Entry: 1
Data: Player1CameraAnchor Data: LocationBoardAndShortHostTimerToggle
- Name: $v - Name: $v
Entry: 7 Entry: 7
Data: 46|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor Data: 46|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: LocationBoardAndShortHostTimerToggle
- Name: <UserType>k__BackingField
Entry: 9
Data: 33
- Name: <SystemType>k__BackingField
Entry: 9
Data: 4
- Name: <SyncMode>k__BackingField
Entry: 7
Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib
- Name:
Entry: 6
Data:
- Name:
Entry: 8
Data:
- Name: <IsSerialized>k__BackingField
Entry: 5
Data: true
- Name: _fieldAttributes
Entry: 7
Data: 47|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib
- Name:
Entry: 12
Data: 1
- Name:
Entry: 7
Data: 48|UnityEngine.SerializeField, UnityEngine.CoreModule
- Name:
Entry: 8
Data:
- Name:
Entry: 13
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 7
Data:
- Name: $k
Entry: 1
Data: LocationBoardAndLongHostTimerToggle
- Name: $v
Entry: 7
Data: 49|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: LocationBoardAndLongHostTimerToggle
- Name: <UserType>k__BackingField
Entry: 9
Data: 33
- Name: <SystemType>k__BackingField
Entry: 9
Data: 4
- Name: <SyncMode>k__BackingField
Entry: 7
Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib
- Name:
Entry: 6
Data:
- Name:
Entry: 8
Data:
- Name: <IsSerialized>k__BackingField
Entry: 5
Data: true
- Name: _fieldAttributes
Entry: 7
Data: 50|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib
- Name:
Entry: 12
Data: 1
- Name:
Entry: 7
Data: 51|UnityEngine.SerializeField, UnityEngine.CoreModule
- Name:
Entry: 8
Data:
- Name:
Entry: 13
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 7
Data:
- Name: $k
Entry: 1
Data: Player1CameraAnchor
- Name: $v
Entry: 7
Data: 52|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField - Name: <Name>k__BackingField
Entry: 1 Entry: 1
Data: Player1CameraAnchor Data: Player1CameraAnchor
- Name: <UserType>k__BackingField - Name: <UserType>k__BackingField
Entry: 7 Entry: 7
Data: 47|System.RuntimeType, mscorlib Data: 53|System.RuntimeType, mscorlib
- Name: - Name:
Entry: 1 Entry: 1
Data: CameraAnchor, Assembly-CSharp Data: CameraAnchor, Assembly-CSharp
@ -788,127 +896,19 @@ MonoBehaviour:
Data: true Data: true
- Name: _fieldAttributes - Name: _fieldAttributes
Entry: 7 Entry: 7
Data: 48|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib Data: 54|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib
- Name: - Name:
Entry: 12 Entry: 12
Data: 2 Data: 2
- Name: - Name:
Entry: 7 Entry: 7
Data: 49|UnityEngine.SpaceAttribute, UnityEngine.CoreModule Data: 55|UnityEngine.SpaceAttribute, UnityEngine.CoreModule
- Name: height - Name: height
Entry: 4 Entry: 4
Data: 8 Data: 8
- Name: - Name:
Entry: 8 Entry: 8
Data: Data:
- Name:
Entry: 7
Data: 50|UnityEngine.SerializeField, UnityEngine.CoreModule
- Name:
Entry: 8
Data:
- Name:
Entry: 13
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 7
Data:
- Name: $k
Entry: 1
Data: Player2CameraAnchor
- Name: $v
Entry: 7
Data: 51|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: Player2CameraAnchor
- Name: <UserType>k__BackingField
Entry: 9
Data: 47
- Name: <SystemType>k__BackingField
Entry: 9
Data: 4
- Name: <SyncMode>k__BackingField
Entry: 7
Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib
- Name:
Entry: 6
Data:
- Name:
Entry: 8
Data:
- Name: <IsSerialized>k__BackingField
Entry: 5
Data: true
- Name: _fieldAttributes
Entry: 7
Data: 52|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib
- Name:
Entry: 12
Data: 1
- Name:
Entry: 7
Data: 53|UnityEngine.SerializeField, UnityEngine.CoreModule
- Name:
Entry: 8
Data:
- Name:
Entry: 13
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 7
Data:
- Name: $k
Entry: 1
Data: HostAndWinnerCameraAnchor
- Name: $v
Entry: 7
Data: 54|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: HostAndWinnerCameraAnchor
- Name: <UserType>k__BackingField
Entry: 9
Data: 47
- Name: <SystemType>k__BackingField
Entry: 9
Data: 4
- Name: <SyncMode>k__BackingField
Entry: 7
Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib
- Name:
Entry: 6
Data:
- Name:
Entry: 8
Data:
- Name: <IsSerialized>k__BackingField
Entry: 5
Data: true
- Name: _fieldAttributes
Entry: 7
Data: 55|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib
- Name:
Entry: 12
Data: 1
- Name: - Name:
Entry: 7 Entry: 7
Data: 56|UnityEngine.SerializeField, UnityEngine.CoreModule Data: 56|UnityEngine.SerializeField, UnityEngine.CoreModule
@ -932,16 +932,16 @@ MonoBehaviour:
Data: Data:
- Name: $k - Name: $k
Entry: 1 Entry: 1
Data: LocationBoardCameraAnchor Data: Player2CameraAnchor
- Name: $v - Name: $v
Entry: 7 Entry: 7
Data: 57|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor Data: 57|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField - Name: <Name>k__BackingField
Entry: 1 Entry: 1
Data: LocationBoardCameraAnchor Data: Player2CameraAnchor
- Name: <UserType>k__BackingField - Name: <UserType>k__BackingField
Entry: 9 Entry: 9
Data: 47 Data: 53
- Name: <SystemType>k__BackingField - Name: <SystemType>k__BackingField
Entry: 9 Entry: 9
Data: 4 Data: 4
@ -986,16 +986,16 @@ MonoBehaviour:
Data: Data:
- Name: $k - Name: $k
Entry: 1 Entry: 1
Data: ModemCameraAnchor Data: HostAndWinnerCameraAnchor
- Name: $v - Name: $v
Entry: 7 Entry: 7
Data: 60|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor Data: 60|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField - Name: <Name>k__BackingField
Entry: 1 Entry: 1
Data: ModemCameraAnchor Data: HostAndWinnerCameraAnchor
- Name: <UserType>k__BackingField - Name: <UserType>k__BackingField
Entry: 9 Entry: 9
Data: 47 Data: 53
- Name: <SystemType>k__BackingField - Name: <SystemType>k__BackingField
Entry: 9 Entry: 9
Data: 4 Data: 4
@ -1040,16 +1040,16 @@ MonoBehaviour:
Data: Data:
- Name: $k - Name: $k
Entry: 1 Entry: 1
Data: VideoPlayerCameraAnchor Data: LocationBoardCameraAnchor
- Name: $v - Name: $v
Entry: 7 Entry: 7
Data: 63|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor Data: 63|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField - Name: <Name>k__BackingField
Entry: 1 Entry: 1
Data: VideoPlayerCameraAnchor Data: LocationBoardCameraAnchor
- Name: <UserType>k__BackingField - Name: <UserType>k__BackingField
Entry: 9 Entry: 9
Data: 47 Data: 53
- Name: <SystemType>k__BackingField - Name: <SystemType>k__BackingField
Entry: 9 Entry: 9
Data: 4 Data: 4
@ -1094,16 +1094,16 @@ MonoBehaviour:
Data: Data:
- Name: $k - Name: $k
Entry: 1 Entry: 1
Data: WideShotCameraAnchor Data: ModemCameraAnchor
- Name: $v - Name: $v
Entry: 7 Entry: 7
Data: 66|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor Data: 66|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField - Name: <Name>k__BackingField
Entry: 1 Entry: 1
Data: WideShotCameraAnchor Data: ModemCameraAnchor
- Name: <UserType>k__BackingField - Name: <UserType>k__BackingField
Entry: 9 Entry: 9
Data: 47 Data: 53
- Name: <SystemType>k__BackingField - Name: <SystemType>k__BackingField
Entry: 9 Entry: 9
Data: 4 Data: 4
@ -1122,12 +1122,120 @@ MonoBehaviour:
- Name: _fieldAttributes - Name: _fieldAttributes
Entry: 7 Entry: 7
Data: 67|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib Data: 67|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib
- Name:
Entry: 12
Data: 1
- Name:
Entry: 7
Data: 68|UnityEngine.SerializeField, UnityEngine.CoreModule
- Name:
Entry: 8
Data:
- Name:
Entry: 13
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 7
Data:
- Name: $k
Entry: 1
Data: VideoPlayerCameraAnchor
- Name: $v
Entry: 7
Data: 69|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: VideoPlayerCameraAnchor
- Name: <UserType>k__BackingField
Entry: 9
Data: 53
- Name: <SystemType>k__BackingField
Entry: 9
Data: 4
- Name: <SyncMode>k__BackingField
Entry: 7
Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib
- Name:
Entry: 6
Data:
- Name:
Entry: 8
Data:
- Name: <IsSerialized>k__BackingField
Entry: 5
Data: true
- Name: _fieldAttributes
Entry: 7
Data: 70|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib
- Name:
Entry: 12
Data: 1
- Name:
Entry: 7
Data: 71|UnityEngine.SerializeField, UnityEngine.CoreModule
- Name:
Entry: 8
Data:
- Name:
Entry: 13
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 7
Data:
- Name: $k
Entry: 1
Data: WideShotCameraAnchor
- Name: $v
Entry: 7
Data: 72|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: WideShotCameraAnchor
- Name: <UserType>k__BackingField
Entry: 9
Data: 53
- Name: <SystemType>k__BackingField
Entry: 9
Data: 4
- Name: <SyncMode>k__BackingField
Entry: 7
Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib
- Name:
Entry: 6
Data:
- Name:
Entry: 8
Data:
- Name: <IsSerialized>k__BackingField
Entry: 5
Data: true
- Name: _fieldAttributes
Entry: 7
Data: 73|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib
- Name: - Name:
Entry: 12 Entry: 12
Data: 2 Data: 2
- Name: - Name:
Entry: 7 Entry: 7
Data: 68|UnityEngine.SpaceAttribute, UnityEngine.CoreModule Data: 74|UnityEngine.SpaceAttribute, UnityEngine.CoreModule
- Name: height - Name: height
Entry: 4 Entry: 4
Data: 8 Data: 8
@ -1136,7 +1244,7 @@ MonoBehaviour:
Data: Data:
- Name: - Name:
Entry: 7 Entry: 7
Data: 69|UnityEngine.SerializeField, UnityEngine.CoreModule Data: 75|UnityEngine.SerializeField, UnityEngine.CoreModule
- Name: - Name:
Entry: 8 Entry: 8
Data: Data:
@ -1160,13 +1268,13 @@ MonoBehaviour:
Data: AllPlayersCameraAnchor Data: AllPlayersCameraAnchor
- Name: $v - Name: $v
Entry: 7 Entry: 7
Data: 70|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor Data: 76|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField - Name: <Name>k__BackingField
Entry: 1 Entry: 1
Data: AllPlayersCameraAnchor Data: AllPlayersCameraAnchor
- Name: <UserType>k__BackingField - Name: <UserType>k__BackingField
Entry: 9 Entry: 9
Data: 47 Data: 53
- Name: <SystemType>k__BackingField - Name: <SystemType>k__BackingField
Entry: 9 Entry: 9
Data: 4 Data: 4
@ -1184,13 +1292,13 @@ MonoBehaviour:
Data: true Data: true
- Name: _fieldAttributes - Name: _fieldAttributes
Entry: 7 Entry: 7
Data: 71|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib Data: 77|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib
- Name: - Name:
Entry: 12 Entry: 12
Data: 1 Data: 1
- Name: - Name:
Entry: 7 Entry: 7
Data: 72|UnityEngine.SerializeField, UnityEngine.CoreModule Data: 78|UnityEngine.SerializeField, UnityEngine.CoreModule
- Name: - Name:
Entry: 8 Entry: 8
Data: Data:

View File

@ -21,8 +21,10 @@ public class CameraControllerRound2 : CameraControllerBase
[Space] [Space]
[SerializeField] public CameraTimedSwitcher HostAllPlayersTimerToggle; [SerializeField] public CameraTimedSwitcher HostAllPlayersTimerToggle;
[SerializeField] public CameraTimedSwitcher HostPlayersAndWideShotTimerToggle; [SerializeField] public CameraTimedSwitcher HostPlayersAndWideShotTimerToggle;
[SerializeField] public CameraTimedSwitcher Player1AndWideShotTimerToggle; [SerializeField] public CameraTimedSwitcher Player1AndLocationBoardTimerToggle;
[SerializeField] public CameraTimedSwitcher Player2AndWideShotTimerToggle; [SerializeField] public CameraTimedSwitcher Player2AndLocationBoardTimerToggle;
[SerializeField] public CameraTimedSwitcher LocationBoardAndShortHostTimerToggle;
[SerializeField] public CameraTimedSwitcher LocationBoardAndLongHostTimerToggle;
[Space] [Space]
[SerializeField] public CameraAnchor Player1CameraAnchor; [SerializeField] public CameraAnchor Player1CameraAnchor;
[SerializeField] public CameraAnchor Player2CameraAnchor; [SerializeField] public CameraAnchor Player2CameraAnchor;
@ -57,8 +59,10 @@ public class CameraControllerRound2 : CameraControllerBase
Networking.SetOwner(Player, HostAllPlayersTimerToggle.gameObject); Networking.SetOwner(Player, HostAllPlayersTimerToggle.gameObject);
Networking.SetOwner(Player, HostPlayersAndWideShotTimerToggle.gameObject); Networking.SetOwner(Player, HostPlayersAndWideShotTimerToggle.gameObject);
Networking.SetOwner(Player, Player1AndWideShotTimerToggle.gameObject); Networking.SetOwner(Player, Player1AndLocationBoardTimerToggle.gameObject);
Networking.SetOwner(Player, Player2AndWideShotTimerToggle.gameObject); Networking.SetOwner(Player, Player2AndLocationBoardTimerToggle.gameObject);
Networking.SetOwner(Player, LocationBoardAndShortHostTimerToggle.gameObject);
Networking.SetOwner(Player, LocationBoardAndLongHostTimerToggle.gameObject);
Networking.SetOwner(Player, Player1CameraAnchor.gameObject); Networking.SetOwner(Player, Player1CameraAnchor.gameObject);
Networking.SetOwner(Player, Player2CameraAnchor.gameObject); Networking.SetOwner(Player, Player2CameraAnchor.gameObject);
@ -124,32 +128,60 @@ public class CameraControllerRound2 : CameraControllerBase
{ {
HostAllPlayersTimerToggle.Activate = true; HostAllPlayersTimerToggle.Activate = true;
HostPlayersAndWideShotTimerToggle.Activate = false; HostPlayersAndWideShotTimerToggle.Activate = false;
Player1AndWideShotTimerToggle.Activate = false; Player1AndLocationBoardTimerToggle.Activate = false;
Player2AndWideShotTimerToggle.Activate = false; Player2AndLocationBoardTimerToggle.Activate = false;
LocationBoardAndShortHostTimerToggle.Activate = false;
LocationBoardAndLongHostTimerToggle.Activate = false;
} }
public void ActivateHostPlayersAndWideShotCameraSwitcher() public void ActivateHostPlayersAndWideShotCameraSwitcher()
{ {
HostAllPlayersTimerToggle.Activate = false; HostAllPlayersTimerToggle.Activate = false;
HostPlayersAndWideShotTimerToggle.Activate = true; HostPlayersAndWideShotTimerToggle.Activate = true;
Player1AndWideShotTimerToggle.Activate = false; Player1AndLocationBoardTimerToggle.Activate = false;
Player2AndWideShotTimerToggle.Activate = false; Player2AndLocationBoardTimerToggle.Activate = false;
LocationBoardAndShortHostTimerToggle.Activate = false;
LocationBoardAndLongHostTimerToggle.Activate = false;
} }
public void ActivatePlayer1AndWideShotCameraSwitcher() public void ActivatePlayer1AndLocationBoardCameraSwitcher()
{ {
HostAllPlayersTimerToggle.Activate = false; HostAllPlayersTimerToggle.Activate = false;
HostPlayersAndWideShotTimerToggle.Activate = false; HostPlayersAndWideShotTimerToggle.Activate = false;
Player1AndWideShotTimerToggle.Activate = true; Player1AndLocationBoardTimerToggle.Activate = true;
Player2AndWideShotTimerToggle.Activate = false; Player2AndLocationBoardTimerToggle.Activate = false;
LocationBoardAndShortHostTimerToggle.Activate = false;
LocationBoardAndLongHostTimerToggle.Activate = false;
} }
public void ActivatePlayer2AndWideShotCameraSwitcher() public void ActivatePlayer2AndLocationBoardCameraSwitcher()
{ {
HostAllPlayersTimerToggle.Activate = false; HostAllPlayersTimerToggle.Activate = false;
HostPlayersAndWideShotTimerToggle.Activate = false; HostPlayersAndWideShotTimerToggle.Activate = false;
Player1AndWideShotTimerToggle.Activate = false; Player1AndLocationBoardTimerToggle.Activate = false;
Player2AndWideShotTimerToggle.Activate = true; Player2AndLocationBoardTimerToggle.Activate = true;
LocationBoardAndShortHostTimerToggle.Activate = false;
LocationBoardAndLongHostTimerToggle.Activate = false;
}
public void ActivateLocationBoardAndShortHostCameraSwitcher()
{
HostAllPlayersTimerToggle.Activate = false;
HostPlayersAndWideShotTimerToggle.Activate = false;
Player1AndLocationBoardTimerToggle.Activate = false;
Player2AndLocationBoardTimerToggle.Activate = false;
LocationBoardAndShortHostTimerToggle.Activate = true;
LocationBoardAndLongHostTimerToggle.Activate = false;
}
public void ActivateLocationBoardAndLongHostCameraSwitcher()
{
HostAllPlayersTimerToggle.Activate = false;
HostPlayersAndWideShotTimerToggle.Activate = false;
Player1AndLocationBoardTimerToggle.Activate = false;
Player2AndLocationBoardTimerToggle.Activate = false;
LocationBoardAndShortHostTimerToggle.Activate = false;
LocationBoardAndLongHostTimerToggle.Activate = true;
} }
@ -172,7 +204,9 @@ public class CameraControllerRound2 : CameraControllerBase
{ {
HostAllPlayersTimerToggle.Activate = false; HostAllPlayersTimerToggle.Activate = false;
HostPlayersAndWideShotTimerToggle.Activate = false; HostPlayersAndWideShotTimerToggle.Activate = false;
Player1AndWideShotTimerToggle.Activate = false; Player1AndLocationBoardTimerToggle.Activate = false;
Player2AndWideShotTimerToggle.Activate = false; Player2AndLocationBoardTimerToggle.Activate = false;
LocationBoardAndShortHostTimerToggle.Activate = false;
LocationBoardAndLongHostTimerToggle.Activate = false;
} }
} }

View File

@ -44,7 +44,7 @@ MonoBehaviour:
Data: Data:
- Name: - Name:
Entry: 12 Entry: 12
Data: 24 Data: 25
- Name: - Name:
Entry: 7 Entry: 7
Data: Data:
@ -1250,25 +1250,19 @@ MonoBehaviour:
Data: Data:
- Name: $k - Name: $k
Entry: 1 Entry: 1
Data: COLOR_STANDARD Data: _PanelToReveal_Cache
- Name: $v - Name: $v
Entry: 7 Entry: 7
Data: 81|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor Data: 81|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField - Name: <Name>k__BackingField
Entry: 1 Entry: 1
Data: COLOR_STANDARD Data: _PanelToReveal_Cache
- Name: <UserType>k__BackingField - Name: <UserType>k__BackingField
Entry: 7 Entry: 9
Data: 82|System.RuntimeType, mscorlib Data: 69
- Name:
Entry: 1
Data: UnityEngine.Color, UnityEngine.CoreModule
- Name:
Entry: 8
Data:
- Name: <SystemType>k__BackingField - Name: <SystemType>k__BackingField
Entry: 9 Entry: 9
Data: 82 Data: 69
- Name: <SyncMode>k__BackingField - Name: <SyncMode>k__BackingField
Entry: 7 Entry: 7
Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib
@ -1283,7 +1277,7 @@ MonoBehaviour:
Data: false Data: false
- Name: _fieldAttributes - Name: _fieldAttributes
Entry: 7 Entry: 7
Data: 83|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib Data: 82|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib
- Name: - Name:
Entry: 12 Entry: 12
Data: 0 Data: 0
@ -1304,19 +1298,25 @@ MonoBehaviour:
Data: Data:
- Name: $k - Name: $k
Entry: 1 Entry: 1
Data: COLOR_RED Data: COLOR_STANDARD
- Name: $v - Name: $v
Entry: 7 Entry: 7
Data: 84|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor Data: 83|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField - Name: <Name>k__BackingField
Entry: 1 Entry: 1
Data: COLOR_RED Data: COLOR_STANDARD
- Name: <UserType>k__BackingField - Name: <UserType>k__BackingField
Entry: 9 Entry: 7
Data: 82 Data: 84|System.RuntimeType, mscorlib
- Name:
Entry: 1
Data: UnityEngine.Color, UnityEngine.CoreModule
- Name:
Entry: 8
Data:
- Name: <SystemType>k__BackingField - Name: <SystemType>k__BackingField
Entry: 9 Entry: 9
Data: 82 Data: 84
- Name: <SyncMode>k__BackingField - Name: <SyncMode>k__BackingField
Entry: 7 Entry: 7
Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib
@ -1352,19 +1352,19 @@ MonoBehaviour:
Data: Data:
- Name: $k - Name: $k
Entry: 1 Entry: 1
Data: COLOR_YELLOW Data: COLOR_RED
- Name: $v - Name: $v
Entry: 7 Entry: 7
Data: 86|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor Data: 86|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField - Name: <Name>k__BackingField
Entry: 1 Entry: 1
Data: COLOR_YELLOW Data: COLOR_RED
- Name: <UserType>k__BackingField - Name: <UserType>k__BackingField
Entry: 9 Entry: 9
Data: 82 Data: 84
- Name: <SystemType>k__BackingField - Name: <SystemType>k__BackingField
Entry: 9 Entry: 9
Data: 82 Data: 84
- Name: <SyncMode>k__BackingField - Name: <SyncMode>k__BackingField
Entry: 7 Entry: 7
Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib
@ -1400,19 +1400,19 @@ MonoBehaviour:
Data: Data:
- Name: $k - Name: $k
Entry: 1 Entry: 1
Data: COLOR_GREEN Data: COLOR_YELLOW
- Name: $v - Name: $v
Entry: 7 Entry: 7
Data: 88|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor Data: 88|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField - Name: <Name>k__BackingField
Entry: 1 Entry: 1
Data: COLOR_GREEN Data: COLOR_YELLOW
- Name: <UserType>k__BackingField - Name: <UserType>k__BackingField
Entry: 9 Entry: 9
Data: 82 Data: 84
- Name: <SystemType>k__BackingField - Name: <SystemType>k__BackingField
Entry: 9 Entry: 9
Data: 82 Data: 84
- Name: <SyncMode>k__BackingField - Name: <SyncMode>k__BackingField
Entry: 7 Entry: 7
Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib
@ -1443,6 +1443,54 @@ MonoBehaviour:
- Name: - Name:
Entry: 8 Entry: 8
Data: Data:
- Name:
Entry: 7
Data:
- Name: $k
Entry: 1
Data: COLOR_GREEN
- Name: $v
Entry: 7
Data: 90|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor
- Name: <Name>k__BackingField
Entry: 1
Data: COLOR_GREEN
- Name: <UserType>k__BackingField
Entry: 9
Data: 84
- Name: <SystemType>k__BackingField
Entry: 9
Data: 84
- Name: <SyncMode>k__BackingField
Entry: 7
Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib
- Name:
Entry: 6
Data:
- Name:
Entry: 8
Data:
- Name: <IsSerialized>k__BackingField
Entry: 5
Data: false
- Name: _fieldAttributes
Entry: 7
Data: 91|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib
- Name:
Entry: 12
Data: 0
- Name:
Entry: 13
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 8
Data:
- Name: - Name:
Entry: 13 Entry: 13
Data: Data:

View File

@ -38,6 +38,8 @@ public class GameManagerRound2 : GameManagerBase
private CameraControllerRound2 _CameraControllerRound2 = null; private CameraControllerRound2 _CameraControllerRound2 = null;
private int _PanelToReveal_Cache = -1;
private readonly Color COLOR_STANDARD = new Color(0.78431f, 0.78431f, 0.78431f); private readonly Color COLOR_STANDARD = new Color(0.78431f, 0.78431f, 0.78431f);
private readonly Color COLOR_RED = new Color(0.78431f, 0.0f, 0.0f); private readonly Color COLOR_RED = new Color(0.78431f, 0.0f, 0.0f);
private readonly Color COLOR_YELLOW = new Color(0.78431f, 0.78431f, 0.0f); private readonly Color COLOR_YELLOW = new Color(0.78431f, 0.78431f, 0.0f);
@ -206,7 +208,7 @@ public class GameManagerRound2 : GameManagerBase
_JailPlayer.VideoIndex = (int)_CaseManager.GetCrook(); _JailPlayer.VideoIndex = (int)_CaseManager.GetCrook();
_CameraControllerRound2.ActivatePlayer1AndWideShotCameraSwitcher(); SwitchToCurrentPlayerAndLocationBoardSwitcher();
NetworkCalling.SendCustomNetworkEvent((IUdonEventReceiver)_AudioManager, NetworkEventTarget.All, NetworkCalling.SendCustomNetworkEvent((IUdonEventReceiver)_AudioManager, NetworkEventTarget.All,
"PlayMusicLoop", MusicEventType.RecoverTheLoot); "PlayMusicLoop", MusicEventType.RecoverTheLoot);
@ -217,6 +219,8 @@ public class GameManagerRound2 : GameManagerBase
HostCardRecoverTheLootInterface Interface = HostCardRecoverTheLootInterface Interface =
(HostCardRecoverTheLootInterface)GetHostCardInterface(RoundSegmentType.RecoverTheLoot); (HostCardRecoverTheLootInterface)GetHostCardInterface(RoundSegmentType.RecoverTheLoot);
Interface.SetComment("On the right track. You get a free turn.", COLOR_GREEN); Interface.SetComment("On the right track. You get a free turn.", COLOR_GREEN);
_CameraControllerRound2.ActivateLocationBoardAndShortHostCameraSwitcher();
} }
public void AlmostThere() public void AlmostThere()
@ -224,6 +228,8 @@ public class GameManagerRound2 : GameManagerBase
HostCardRecoverTheLootInterface Interface = HostCardRecoverTheLootInterface Interface =
(HostCardRecoverTheLootInterface)GetHostCardInterface(RoundSegmentType.RecoverTheLoot); (HostCardRecoverTheLootInterface)GetHostCardInterface(RoundSegmentType.RecoverTheLoot);
Interface.SetComment("Almost got it. Another free turn.", COLOR_YELLOW); Interface.SetComment("Almost got it. Another free turn.", COLOR_YELLOW);
_CameraControllerRound2.ActivateLocationBoardAndShortHostCameraSwitcher();
} }
public void OutOfOrder(PanelType Type) public void OutOfOrder(PanelType Type)
@ -246,6 +252,8 @@ public class GameManagerRound2 : GameManagerBase
} }
Interface.SetComment("Found " + PanelToken + ". Remember the order: loot, warrant, crook. Use some strategy.", COLOR_YELLOW); Interface.SetComment("Found " + PanelToken + ". Remember the order: loot, warrant, crook. Use some strategy.", COLOR_YELLOW);
_CameraControllerRound2.ActivateLocationBoardAndLongHostCameraSwitcher();
} }
// All of these next functions are the end of a turn, and should disable // All of these next functions are the end of a turn, and should disable
@ -294,6 +302,8 @@ public class GameManagerRound2 : GameManagerBase
NetworkCalling.SendCustomNetworkEvent((IUdonEventReceiver)_AudioManager, NetworkEventTarget.All, NetworkCalling.SendCustomNetworkEvent((IUdonEventReceiver)_AudioManager, NetworkEventTarget.All,
"StopMusic"); "StopMusic");
_CameraControllerRound2.DisableAllSwitchers();
AdvanceRound(); AdvanceRound();
} }
@ -311,17 +321,7 @@ public class GameManagerRound2 : GameManagerBase
_JailChain.Show = true; _JailChain.Show = true;
_CameraControllerRound2.DisableAllSwitchers(); SwitchToCurrentPlayerCamera();
switch (_CurrentPlayerCounter % 2)
{
case 0:
_CameraControllerRound2.SwitchToPlayer1Camera();
break;
case 1:
_CameraControllerRound2.SwitchToPlayer2Camera();
break;
}
EnableInteraction("Phone Call"); EnableInteraction("Phone Call");
} }
@ -375,6 +375,8 @@ public class GameManagerRound2 : GameManagerBase
HostCardRecoverTheLootInterface Interface = HostCardRecoverTheLootInterface Interface =
(HostCardRecoverTheLootInterface)GetHostCardInterface(RoundSegmentType.RecoverTheLoot); (HostCardRecoverTheLootInterface)GetHostCardInterface(RoundSegmentType.RecoverTheLoot);
Interface.EnableAllPanelButtons(true); Interface.EnableAllPanelButtons(true);
SwitchToCurrentPlayerAndLocationBoardSwitcher();
} }
@ -429,12 +431,25 @@ public class GameManagerRound2 : GameManagerBase
public void Button_RevealPanel(int Panel) public void Button_RevealPanel(int Panel)
{ {
if (_PanelToReveal_Cache >= 0)
{
return;
}
((HostCardRecoverTheLootInterface)GetHostCardInterface(RoundSegmentType.RecoverTheLoot)) ((HostCardRecoverTheLootInterface)GetHostCardInterface(RoundSegmentType.RecoverTheLoot))
.DisablePanelButton(Panel); .DisablePanelButton(Panel);
_LocationBoard.RevealPanel(Panel);
_PanelToReveal_Cache = Panel;
_CameraControllerRound2.DisableAllSwitchers(); _CameraControllerRound2.DisableAllSwitchers();
_CameraControllerRound2.SwitchToLocationBoardCamera(); _CameraControllerRound2.SwitchToLocationBoardCamera();
SendCustomEventDelayedSeconds(nameof(_RevealLocationBoardPanel_Private), 0.33333333333333f);
}
public void _RevealLocationBoardPanel_Private()
{
_LocationBoard.RevealPanel(_PanelToReveal_Cache);
_PanelToReveal_Cache = -1;
} }
[NetworkCallable] [NetworkCallable]
@ -478,6 +493,35 @@ public class GameManagerRound2 : GameManagerBase
public void Button_RevealPanel15() { Button_RevealPanel(15); } public void Button_RevealPanel15() { Button_RevealPanel(15); }
public void SwitchToCurrentPlayerAndLocationBoardSwitcher()
{
switch (_CurrentPlayerCounter % 2)
{
case 0:
_CameraControllerRound2.ActivatePlayer1AndLocationBoardCameraSwitcher();
break;
case 1:
_CameraControllerRound2.ActivatePlayer2AndLocationBoardCameraSwitcher();
break;
}
}
public void SwitchToCurrentPlayerCamera()
{
_CameraControllerRound2.DisableAllSwitchers();
switch (_CurrentPlayerCounter % 2)
{
case 0:
_CameraControllerRound2.SwitchToPlayer1Camera();
break;
case 1:
_CameraControllerRound2.SwitchToPlayer2Camera();
break;
}
}
private string PanelTypeToString(PanelType Type) private string PanelTypeToString(PanelType Type)
{ {
switch(Type) switch(Type)