From 7ce8b1693d2383b7a547198b4bdc724f11e526c9 Mon Sep 17 00:00:00 2001 From: Jamie Greunbaum Date: Thu, 12 Jun 2025 04:41:33 -0400 Subject: [PATCH] Refactor went pretty well. Everything is much nicer now. --- Assembly-CSharp.csproj | 4 +- Assets/Audio/SFX/Buzzer.wav.meta | 4 +- Assets/Audio/SFX/Ding - A#5.ogg.meta | 4 +- .../Audio/SFX/Final Round - Correct.ogg.meta | 14 +- .../SFX/Final Round - Incorrect.ogg.meta | 4 +- ... Super Single Vol. 1 - Fog Horn 1.ogg.meta | 28 +- Assets/Scenes/witwics.unity | 300 +++-- Assets/UdonSharp/GameManagerBase.asset | 233 ++++ Assets/UdonSharp/GameManagerBase.asset.meta | 8 + Assets/UdonSharp/GameManagerBase.cs | 113 ++ Assets/UdonSharp/GameManagerBase.cs.meta | 11 + ...eManager.asset => GameManagerRound1.asset} | 1188 ++++++----------- ...sset.meta => GameManagerRound1.asset.meta} | 0 .../{GameManager.cs => GameManagerRound1.cs} | 519 +++---- ...ager.cs.meta => GameManagerRound1.cs.meta} | 0 .../HostCardInterfaces/HostCardManager.asset | 599 ++++++++- .../HostCardInterfaces/HostCardManager.cs | 123 +- Assets/UdonSharp/Podium/PlayerPodium.asset | 114 +- Assets/UdonSharp/Podium/PlayerPodium.cs | 3 +- Thry/presets_known_materials.txt | 18 + 20 files changed, 2025 insertions(+), 1262 deletions(-) create mode 100644 Assets/UdonSharp/GameManagerBase.asset create mode 100644 Assets/UdonSharp/GameManagerBase.asset.meta create mode 100644 Assets/UdonSharp/GameManagerBase.cs create mode 100644 Assets/UdonSharp/GameManagerBase.cs.meta rename Assets/UdonSharp/{GameManager.asset => GameManagerRound1.asset} (66%) rename Assets/UdonSharp/{GameManager.asset.meta => GameManagerRound1.asset.meta} (100%) rename Assets/UdonSharp/{GameManager.cs => GameManagerRound1.cs} (65%) rename Assets/UdonSharp/{GameManager.cs.meta => GameManagerRound1.cs.meta} (100%) diff --git a/Assembly-CSharp.csproj b/Assembly-CSharp.csproj index 8a1ca5b..4903416 100644 --- a/Assembly-CSharp.csproj +++ b/Assembly-CSharp.csproj @@ -66,20 +66,22 @@ + - + + diff --git a/Assets/Audio/SFX/Buzzer.wav.meta b/Assets/Audio/SFX/Buzzer.wav.meta index db7db81..d438090 100644 --- a/Assets/Audio/SFX/Buzzer.wav.meta +++ b/Assets/Audio/SFX/Buzzer.wav.meta @@ -19,7 +19,7 @@ AudioImporter: sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 - quality: 0.14999999 + quality: 0.25 conversionMode: 0 preloadAudioData: 1 7: @@ -28,7 +28,7 @@ AudioImporter: sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 - quality: 0.14999999 + quality: 0.25 conversionMode: 0 preloadAudioData: 1 forceToMono: 1 diff --git a/Assets/Audio/SFX/Ding - A#5.ogg.meta b/Assets/Audio/SFX/Ding - A#5.ogg.meta index 51e80b8..acaa3a1 100644 --- a/Assets/Audio/SFX/Ding - A#5.ogg.meta +++ b/Assets/Audio/SFX/Ding - A#5.ogg.meta @@ -19,7 +19,7 @@ AudioImporter: sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 - quality: 0.14999999 + quality: 0.25 conversionMode: 0 preloadAudioData: 1 7: @@ -28,7 +28,7 @@ AudioImporter: sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 - quality: 0.14999999 + quality: 0.25 conversionMode: 0 preloadAudioData: 1 forceToMono: 1 diff --git a/Assets/Audio/SFX/Final Round - Correct.ogg.meta b/Assets/Audio/SFX/Final Round - Correct.ogg.meta index 8b55eff..1784fb7 100644 --- a/Assets/Audio/SFX/Final Round - Correct.ogg.meta +++ b/Assets/Audio/SFX/Final Round - Correct.ogg.meta @@ -1,9 +1,5 @@ fileFormatVersion: 2 -<<<<<<<< HEAD:Assets/Audio/Music/I Feel Good.wav.meta guid: 680142b640a682d4a92c9935828c2311 -======== -guid: 68d48e4c48967bf4ca3491c98a2d8c7f ->>>>>>>> final-round:Assets/Audio/SFX/Final Round - Correct.ogg.meta AudioImporter: externalObjects: {} serializedVersion: 7 @@ -11,7 +7,7 @@ AudioImporter: serializedVersion: 2 loadType: 0 sampleRateSetting: 0 - sampleRateOverride: 44100 + sampleRateOverride: 0 compressionFormat: 1 quality: 0.7 conversionMode: 0 @@ -21,18 +17,18 @@ AudioImporter: serializedVersion: 2 loadType: 0 sampleRateSetting: 0 - sampleRateOverride: 44100 + sampleRateOverride: 0 compressionFormat: 1 - quality: 0.14999999 + quality: 0.25 conversionMode: 0 preloadAudioData: 1 7: serializedVersion: 2 loadType: 0 sampleRateSetting: 0 - sampleRateOverride: 44100 + sampleRateOverride: 0 compressionFormat: 1 - quality: 0.14999999 + quality: 0.25 conversionMode: 0 preloadAudioData: 1 forceToMono: 1 diff --git a/Assets/Audio/SFX/Final Round - Incorrect.ogg.meta b/Assets/Audio/SFX/Final Round - Incorrect.ogg.meta index d47644c..4bf56df 100644 --- a/Assets/Audio/SFX/Final Round - Incorrect.ogg.meta +++ b/Assets/Audio/SFX/Final Round - Incorrect.ogg.meta @@ -19,7 +19,7 @@ AudioImporter: sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 - quality: 0.14999999 + quality: 0.25 conversionMode: 0 preloadAudioData: 1 7: @@ -28,7 +28,7 @@ AudioImporter: sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 - quality: 0.14999999 + quality: 0.25 conversionMode: 0 preloadAudioData: 1 forceToMono: 1 diff --git a/Assets/Audio/SFX/Hollywood Edge Super Single Vol. 1 - Fog Horn 1.ogg.meta b/Assets/Audio/SFX/Hollywood Edge Super Single Vol. 1 - Fog Horn 1.ogg.meta index d4a7c54..6e70ec9 100644 --- a/Assets/Audio/SFX/Hollywood Edge Super Single Vol. 1 - Fog Horn 1.ogg.meta +++ b/Assets/Audio/SFX/Hollywood Edge Super Single Vol. 1 - Fog Horn 1.ogg.meta @@ -9,13 +9,31 @@ AudioImporter: sampleRateSetting: 0 sampleRateOverride: 44100 compressionFormat: 1 - quality: 1 + quality: 0.7 conversionMode: 0 - preloadAudioData: 0 - platformSettingOverrides: {} - forceToMono: 0 + preloadAudioData: 1 + platformSettingOverrides: + 4: + serializedVersion: 2 + loadType: 0 + sampleRateSetting: 0 + sampleRateOverride: 44100 + compressionFormat: 1 + quality: 0.25 + conversionMode: 0 + preloadAudioData: 1 + 7: + serializedVersion: 2 + loadType: 0 + sampleRateSetting: 0 + sampleRateOverride: 44100 + compressionFormat: 1 + quality: 0.25 + conversionMode: 0 + preloadAudioData: 1 + forceToMono: 1 normalize: 1 - loadInBackground: 0 + loadInBackground: 1 ambisonic: 0 3D: 1 userData: diff --git a/Assets/Scenes/witwics.unity b/Assets/Scenes/witwics.unity index 0640b66..296f657 100644 --- a/Assets/Scenes/witwics.unity +++ b/Assets/Scenes/witwics.unity @@ -1156,7 +1156,7 @@ PrefabInstance: type: 3} propertyPath: _GameManager value: - objectReference: {fileID: 379391079} + objectReference: {fileID: 0} - target: {fileID: 1145695079806890482, guid: 79ebe62246f7f464e98373cb14765f9a, type: 3} propertyPath: serializationData.Prefab @@ -1167,7 +1167,7 @@ PrefabInstance: type: 3} propertyPath: GameManager value: - objectReference: {fileID: 379391079} + objectReference: {fileID: 515404446} - target: {fileID: 1226214083704227558, guid: 79ebe62246f7f464e98373cb14765f9a, type: 3} propertyPath: PlayerNumber @@ -3306,11 +3306,11 @@ GameObject: - component: {fileID: 379391077} - component: {fileID: 379391073} - component: {fileID: 379391085} - - component: {fileID: 379391079} - - component: {fileID: 379391078} - component: {fileID: 379391084} - m_Layer: 13 - m_Name: Host Card + - component: {fileID: 379391087} + - component: {fileID: 379391086} + m_Layer: 0 + m_Name: Host Card - Round 1 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 @@ -3383,8 +3383,8 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 379391072} serializedVersion: 2 - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 1.54, z: 11.239} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: -1.8840001, z: -1.7220001} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: @@ -3393,7 +3393,7 @@ Transform: - {fileID: 967689108} - {fileID: 1932946014} - {fileID: 736410918} - m_Father: {fileID: 0} + m_Father: {fileID: 515404447} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!65 &379391077 BoxCollider: @@ -3405,7 +3405,7 @@ BoxCollider: m_Material: {fileID: 0} m_IncludeLayers: serializedVersion: 2 - m_Bits: 0 + m_Bits: 1 m_ExcludeLayers: serializedVersion: 2 m_Bits: 0 @@ -3416,74 +3416,6 @@ BoxCollider: serializedVersion: 3 m_Size: {x: 0.2725, y: 0.16, z: 0.0001} m_Center: {x: 0, y: 0, z: 0} ---- !u!114 &379391078 -MonoBehaviour: - m_ObjectHideFlags: 2 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 379391072} - 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: 06514836c93438a44aed856bd4c09be1, - type: 2} - programSource: {fileID: 11400000, guid: 181b02f36de68294ca7e73c11b84b197, type: 2} - serializedPublicVariablesBytesString: Ai8AAAAAATIAAABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlAFQAYQBiAGwAZQAsACAAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4AAAAAAAYBAAAAAAAAACcBBAAAAHQAeQBwAGUAAWgAAABTAHkAcwB0AGUAbQAuAEMAbwBsAGwAZQBjAHQAaQBvAG4AcwAuAEcAZQBuAGUAcgBpAGMALgBMAGkAcwB0AGAAMQBbAFsAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4ALgBJAG4AdABlAHIAZgBhAGMAZQBzAC4ASQBVAGQAbwBuAFYAYQByAGkAYQBiAGwAZQAsACAAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4AXQBdACwAIABtAHMAYwBvAHIAbABpAGIAAQEJAAAAVgBhAHIAaQBhAGIAbABlAHMALwEAAAABaAAAAFMAeQBzAHQAZQBtAC4AQwBvAGwAbABlAGMAdABpAG8AbgBzAC4ARwBlAG4AZQByAGkAYwAuAEwAaQBzAHQAYAAxAFsAWwBWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAEkAbgB0AGUAcgBmAGEAYwBlAHMALgBJAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlACwAIABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgBdAF0ALAAgAG0AcwBjAG8AcgBsAGkAYgABAAAABgEAAAAAAAAAAi8CAAAAAUkAAABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlAGAAMQBbAFsAUwB5AHMAdABlAG0ALgBJAG4AdAAzADIALAAgAG0AcwBjAG8AcgBsAGkAYgBdAF0ALAAgAFYAUgBDAC4AVQBkAG8AbgAuAEMAbwBtAG0AbwBuAAIAAAAGAgAAAAAAAAAnAQQAAAB0AHkAcABlAAEXAAAAUwB5AHMAdABlAG0ALgBTAHQAcgBpAG4AZwAsACAAbQBzAGMAbwByAGwAaQBiACcBCgAAAFMAeQBtAGIAbwBsAE4AYQBtAGUAAR8AAABfAF8AXwBVAGQAbwBuAFMAaABhAHIAcABCAGUAaABhAHYAaQBvAHUAcgBWAGUAcgBzAGkAbwBuAF8AXwBfACcBBAAAAHQAeQBwAGUAARYAAABTAHkAcwB0AGUAbQAuAEkAbgB0ADMAMgAsACAAbQBzAGMAbwByAGwAaQBiABcBBQAAAFYAYQBsAHUAZQACAAAABwUHBQcF - publicVariablesUnityEngineObjects: [] - publicVariablesSerializationDataFormat: 0 ---- !u!114 &379391079 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 379391072} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 7f74a37881105b744bd2d7931cc9915f, type: 3} - m_Name: - m_EditorClassIdentifier: - serializationData: - SerializedFormat: 2 - SerializedBytes: - ReferencedUnityObjects: [] - SerializedBytesString: - Prefab: {fileID: 0} - PrefabModificationsReferencedUnityObjects: [] - PrefabModifications: [] - SerializationNodes: [] - _udonSharpBackingUdonBehaviour: {fileID: 379391078} - _PlayerPodiums: - - {fileID: 4438766482650780795} - - {fileID: 1993364535} - - {fileID: 1589630268} - QuestionURL: - url: https://witwics-dev.github.io/TestQuestion.json - _BetweenRoundsInterface: {fileID: 665314709} - _MultipleChoiceInterface: {fileID: 722410359} - _LightningRoundInterface: {fileID: 745232786} - _TheChaseInterface: {fileID: 1400862957} - _FinalRoundInterface: {fileID: 251407510} - _AdminPanelInterface: {fileID: 967689115} - _Ding: {fileID: 8300000, guid: c73e1e65b24947b479626ae419424e84, type: 3} - _Buzzer: {fileID: 8300000, guid: bc5aa9668b30b7e48a492e3308a2a802, type: 3} - _TheChase: {fileID: 8300000, guid: ebb0e1809180b8e4b8ae4c4fe1671ae7, type: 3} - _ThinkAboutIt: {fileID: 8300000, guid: fd2e7d68447011640a244f302d442395, type: 3} - _WhereInTheWorld: {fileID: 8300000, guid: e810feeb6c2063747bbb5f735a88bee9, type: 3} - _RockapellaIdent: {fileID: 8300000, guid: 3dd54f8dd36092b4d9664c76ccf9ab49, type: 3} - _MusicPlayer: {fileID: 158746910} - _SFXPlayer: {fileID: 1547939853} --- !u!114 &379391084 MonoBehaviour: m_ObjectHideFlags: 2 @@ -3565,8 +3497,8 @@ MonoBehaviour: positionDesyncThreshold: 0.015 rotationDesyncThreshold: 0.995 minimumSleepFrames: 4 - spawnPos: {x: 0, y: 1.54, z: 11.239} - spawnRot: {x: 0, y: 0, z: 0, w: 1} + spawnPos: {x: 0, y: -1.8840001, z: -1.7220001} + spawnRot: {x: -0, y: -0, z: -0, w: 1} _state: -1 localTransformFlag: 1 leftHandFlag: 0 @@ -3580,6 +3512,61 @@ MonoBehaviour: _showInternalObjects: 0 showInternalObjects: 0 unparentInternalDataObject: 0 +--- !u!114 &379391086 +MonoBehaviour: + m_ObjectHideFlags: 2 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 379391072} + 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: b111ebeb6b663b740af52dd2a3a0bfe3, + type: 2} + programSource: {fileID: 11400000, guid: 0dfc7de0357517d4e9a8145a063cc3da, type: 2} + serializedPublicVariablesBytesString: Ai8AAAAAATIAAABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlAFQAYQBiAGwAZQAsACAAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4AAAAAAAYBAAAAAAAAACcBBAAAAHQAeQBwAGUAAWgAAABTAHkAcwB0AGUAbQAuAEMAbwBsAGwAZQBjAHQAaQBvAG4AcwAuAEcAZQBuAGUAcgBpAGMALgBMAGkAcwB0AGAAMQBbAFsAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4ALgBJAG4AdABlAHIAZgBhAGMAZQBzAC4ASQBVAGQAbwBuAFYAYQByAGkAYQBiAGwAZQAsACAAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4AXQBdACwAIABtAHMAYwBvAHIAbABpAGIAAQEJAAAAVgBhAHIAaQBhAGIAbABlAHMALwEAAAABaAAAAFMAeQBzAHQAZQBtAC4AQwBvAGwAbABlAGMAdABpAG8AbgBzAC4ARwBlAG4AZQByAGkAYwAuAEwAaQBzAHQAYAAxAFsAWwBWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAEkAbgB0AGUAcgBmAGEAYwBlAHMALgBJAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlACwAIABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgBdAF0ALAAgAG0AcwBjAG8AcgBsAGkAYgABAAAABgEAAAAAAAAAAi8CAAAAAUkAAABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlAGAAMQBbAFsAUwB5AHMAdABlAG0ALgBJAG4AdAAzADIALAAgAG0AcwBjAG8AcgBsAGkAYgBdAF0ALAAgAFYAUgBDAC4AVQBkAG8AbgAuAEMAbwBtAG0AbwBuAAIAAAAGAgAAAAAAAAAnAQQAAAB0AHkAcABlAAEXAAAAUwB5AHMAdABlAG0ALgBTAHQAcgBpAG4AZwAsACAAbQBzAGMAbwByAGwAaQBiACcBCgAAAFMAeQBtAGIAbwBsAE4AYQBtAGUAAR8AAABfAF8AXwBVAGQAbwBuAFMAaABhAHIAcABCAGUAaABhAHYAaQBvAHUAcgBWAGUAcgBzAGkAbwBuAF8AXwBfACcBBAAAAHQAeQBwAGUAARYAAABTAHkAcwB0AGUAbQAuAEkAbgB0ADMAMgAsACAAbQBzAGMAbwByAGwAaQBiABcBBQAAAFYAYQBsAHUAZQACAAAABwUHBQcF + publicVariablesUnityEngineObjects: [] + publicVariablesSerializationDataFormat: 0 +--- !u!114 &379391087 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 379391072} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8610437a52d6c2e45adc3167b407ecb8, type: 3} + m_Name: + m_EditorClassIdentifier: + serializationData: + SerializedFormat: 2 + SerializedBytes: + ReferencedUnityObjects: [] + SerializedBytesString: + Prefab: {fileID: 0} + PrefabModificationsReferencedUnityObjects: [] + PrefabModifications: [] + SerializationNodes: [] + _udonSharpBackingUdonBehaviour: {fileID: 379391086} + _GameManager: {fileID: 515404446} + _BetweenRoundsInterface: {fileID: 665314709} + _MultipleChoiceInterface: {fileID: 722410359} + _LightningRoundInterface: {fileID: 745232786} + _TheChaseInterface: {fileID: 1400862957} + _FinalRoundInterface: {fileID: 251407510} + _AdminPanelInterface: {fileID: 967689115} --- !u!1 &386844719 stripped GameObject: m_CorrespondingSourceObject: {fileID: 1171468836346796873, guid: 79ebe62246f7f464e98373cb14765f9a, @@ -4626,7 +4613,7 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 379391078} + - m_Target: {fileID: 515404445} m_TargetAssemblyTypeName: VRC.Udon.UdonBehaviour, VRC.Udon m_MethodName: SendCustomEvent m_Mode: 5 @@ -5213,6 +5200,103 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 513895295} m_CullTransparentMesh: 1 +--- !u!1 &515404444 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 515404447} + - component: {fileID: 515404446} + - component: {fileID: 515404445} + m_Layer: 13 + m_Name: Game Manager - Round 1 + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &515404445 +MonoBehaviour: + m_ObjectHideFlags: 2 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 515404444} + 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: 06514836c93438a44aed856bd4c09be1, + type: 2} + programSource: {fileID: 11400000, guid: 181b02f36de68294ca7e73c11b84b197, type: 2} + serializedPublicVariablesBytesString: Ai8AAAAAATIAAABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlAFQAYQBiAGwAZQAsACAAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4AAAAAAAYBAAAAAAAAACcBBAAAAHQAeQBwAGUAAWgAAABTAHkAcwB0AGUAbQAuAEMAbwBsAGwAZQBjAHQAaQBvAG4AcwAuAEcAZQBuAGUAcgBpAGMALgBMAGkAcwB0AGAAMQBbAFsAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4ALgBJAG4AdABlAHIAZgBhAGMAZQBzAC4ASQBVAGQAbwBuAFYAYQByAGkAYQBiAGwAZQAsACAAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4AXQBdACwAIABtAHMAYwBvAHIAbABpAGIAAQEJAAAAVgBhAHIAaQBhAGIAbABlAHMALwEAAAABaAAAAFMAeQBzAHQAZQBtAC4AQwBvAGwAbABlAGMAdABpAG8AbgBzAC4ARwBlAG4AZQByAGkAYwAuAEwAaQBzAHQAYAAxAFsAWwBWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAEkAbgB0AGUAcgBmAGEAYwBlAHMALgBJAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlACwAIABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgBdAF0ALAAgAG0AcwBjAG8AcgBsAGkAYgABAAAABgsAAAAAAAAAAi8CAAAAAWIAAABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlAGAAMQBbAFsAVQBuAGkAdAB5AEUAbgBnAGkAbgBlAC4AQwBvAG0AcABvAG4AZQBuAHQAWwBdACwAIABVAG4AaQB0AHkARQBuAGcAaQBuAGUALgBDAG8AcgBlAE0AbwBkAHUAbABlAF0AXQAsACAAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4AAgAAAAYCAAAAAAAAACcBBAAAAHQAeQBwAGUAARcAAABTAHkAcwB0AGUAbQAuAFMAdAByAGkAbgBnACwAIABtAHMAYwBvAHIAbABpAGIAJwEKAAAAUwB5AG0AYgBvAGwATgBhAG0AZQABDgAAAF8AUABsAGEAeQBlAHIAUABvAGQAaQB1AG0AcwAnAQQAAAB0AHkAcABlAAEvAAAAVQBuAGkAdAB5AEUAbgBnAGkAbgBlAC4AQwBvAG0AcABvAG4AZQBuAHQAWwBdACwAIABVAG4AaQB0AHkARQBuAGcAaQBuAGUALgBDAG8AcgBlAE0AbwBkAHUAbABlAAEBBQAAAFYAYQBsAHUAZQAvAwAAAAEvAAAAVQBuAGkAdAB5AEUAbgBnAGkAbgBlAC4AQwBvAG0AcABvAG4AZQBuAHQAWwBdACwAIABVAG4AaQB0AHkARQBuAGcAaQBuAGUALgBDAG8AcgBlAE0AbwBkAHUAbABlAAMAAAAGAAAAAAAAAAAHBQcFAi8EAAAAAVEAAABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlAGAAMQBbAFsAVgBSAEMALgBTAEQASwBCAGEAcwBlAC4AVgBSAEMAVQByAGwALAAgAFYAUgBDAFMARABLAEIAYQBzAGUAXQBdACwAIABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAEAAAABgIAAAAAAAAAJwEEAAAAdAB5AHAAZQABFwAAAFMAeQBzAHQAZQBtAC4AUwB0AHIAaQBuAGcALAAgAG0AcwBjAG8AcgBsAGkAYgAnAQoAAABTAHkAbQBiAG8AbABOAGEAbQBlAAELAAAAUQB1AGUAcwB0AGkAbwBuAFUAUgBMACcBBAAAAHQAeQBwAGUAAR4AAABWAFIAQwAuAFMARABLAEIAYQBzAGUALgBWAFIAQwBVAHIAbAAsACAAVgBSAEMAUwBEAEsAQgBhAHMAZQABAQUAAABWAGEAbAB1AGUALwUAAAABHgAAAFYAUgBDAC4AUwBEAEsAQgBhAHMAZQAuAFYAUgBDAFUAcgBsACwAIABWAFIAQwBTAEQASwBCAGEAcwBlAAUAAAAnAQMAAAB1AHIAbAABAAAAAAUHBQIvBgAAAAFhAAAAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4ALgBVAGQAbwBuAFYAYQByAGkAYQBiAGwAZQBgADEAWwBbAFUAbgBpAHQAeQBFAG4AZwBpAG4AZQAuAEEAdQBkAGkAbwBDAGwAaQBwACwAIABVAG4AaQB0AHkARQBuAGcAaQBuAGUALgBBAHUAZABpAG8ATQBvAGQAdQBsAGUAXQBdACwAIABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAGAAAABgIAAAAAAAAAJwEEAAAAdAB5AHAAZQABFwAAAFMAeQBzAHQAZQBtAC4AUwB0AHIAaQBuAGcALAAgAG0AcwBjAG8AcgBsAGkAYgAnAQoAAABTAHkAbQBiAG8AbABOAGEAbQBlAAEFAAAAXwBEAGkAbgBnACcBBAAAAHQAeQBwAGUAARcAAABTAHkAcwB0AGUAbQAuAE8AYgBqAGUAYwB0ACwAIABtAHMAYwBvAHIAbABpAGIALQEFAAAAVgBhAGwAdQBlAAcFAjAGAAAABwAAAAYCAAAAAAAAACcBBAAAAHQAeQBwAGUAARcAAABTAHkAcwB0AGUAbQAuAFMAdAByAGkAbgBnACwAIABtAHMAYwBvAHIAbABpAGIAJwEKAAAAUwB5AG0AYgBvAGwATgBhAG0AZQABBwAAAF8AQgB1AHoAegBlAHIAJwEEAAAAdAB5AHAAZQABFwAAAFMAeQBzAHQAZQBtAC4ATwBiAGoAZQBjAHQALAAgAG0AcwBjAG8AcgBsAGkAYgAtAQUAAABWAGEAbAB1AGUABwUCMAYAAAAIAAAABgIAAAAAAAAAJwEEAAAAdAB5AHAAZQABFwAAAFMAeQBzAHQAZQBtAC4AUwB0AHIAaQBuAGcALAAgAG0AcwBjAG8AcgBsAGkAYgAnAQoAAABTAHkAbQBiAG8AbABOAGEAbQBlAAEJAAAAXwBUAGgAZQBDAGgAYQBzAGUAJwEEAAAAdAB5AHAAZQABFwAAAFMAeQBzAHQAZQBtAC4ATwBiAGoAZQBjAHQALAAgAG0AcwBjAG8AcgBsAGkAYgAtAQUAAABWAGEAbAB1AGUABwUCMAYAAAAJAAAABgIAAAAAAAAAJwEEAAAAdAB5AHAAZQABFwAAAFMAeQBzAHQAZQBtAC4AUwB0AHIAaQBuAGcALAAgAG0AcwBjAG8AcgBsAGkAYgAnAQoAAABTAHkAbQBiAG8AbABOAGEAbQBlAAENAAAAXwBUAGgAaQBuAGsAQQBiAG8AdQB0AEkAdAAnAQQAAAB0AHkAcABlAAEXAAAAUwB5AHMAdABlAG0ALgBPAGIAagBlAGMAdAAsACAAbQBzAGMAbwByAGwAaQBiAC0BBQAAAFYAYQBsAHUAZQAHBQIwBgAAAAoAAAAGAgAAAAAAAAAnAQQAAAB0AHkAcABlAAEXAAAAUwB5AHMAdABlAG0ALgBTAHQAcgBpAG4AZwAsACAAbQBzAGMAbwByAGwAaQBiACcBCgAAAFMAeQBtAGIAbwBsAE4AYQBtAGUAARAAAABfAFcAaABlAHIAZQBJAG4AVABoAGUAVwBvAHIAbABkACcBBAAAAHQAeQBwAGUAARcAAABTAHkAcwB0AGUAbQAuAE8AYgBqAGUAYwB0ACwAIABtAHMAYwBvAHIAbABpAGIALQEFAAAAVgBhAGwAdQBlAAcFAjAGAAAACwAAAAYCAAAAAAAAACcBBAAAAHQAeQBwAGUAARcAAABTAHkAcwB0AGUAbQAuAFMAdAByAGkAbgBnACwAIABtAHMAYwBvAHIAbABpAGIAJwEKAAAAUwB5AG0AYgBvAGwATgBhAG0AZQABEAAAAF8AUgBvAGMAawBhAHAAZQBsAGwAYQBJAGQAZQBuAHQAJwEEAAAAdAB5AHAAZQABFwAAAFMAeQBzAHQAZQBtAC4ATwBiAGoAZQBjAHQALAAgAG0AcwBjAG8AcgBsAGkAYgAtAQUAAABWAGEAbAB1AGUABwUCLwcAAAABYwAAAFYAUgBDAC4AVQBkAG8AbgAuAEMAbwBtAG0AbwBuAC4AVQBkAG8AbgBWAGEAcgBpAGEAYgBsAGUAYAAxAFsAWwBVAG4AaQB0AHkARQBuAGcAaQBuAGUALgBBAHUAZABpAG8AUwBvAHUAcgBjAGUALAAgAFUAbgBpAHQAeQBFAG4AZwBpAG4AZQAuAEEAdQBkAGkAbwBNAG8AZAB1AGwAZQBdAF0ALAAgAFYAUgBDAC4AVQBkAG8AbgAuAEMAbwBtAG0AbwBuAAwAAAAGAgAAAAAAAAAnAQQAAAB0AHkAcABlAAEXAAAAUwB5AHMAdABlAG0ALgBTAHQAcgBpAG4AZwAsACAAbQBzAGMAbwByAGwAaQBiACcBCgAAAFMAeQBtAGIAbwBsAE4AYQBtAGUAAQwAAABfAE0AdQBzAGkAYwBQAGwAYQB5AGUAcgAnAQQAAAB0AHkAcABlAAEXAAAAUwB5AHMAdABlAG0ALgBPAGIAagBlAGMAdAAsACAAbQBzAGMAbwByAGwAaQBiAC0BBQAAAFYAYQBsAHUAZQAHBQIwBwAAAA0AAAAGAgAAAAAAAAAnAQQAAAB0AHkAcABlAAEXAAAAUwB5AHMAdABlAG0ALgBTAHQAcgBpAG4AZwAsACAAbQBzAGMAbwByAGwAaQBiACcBCgAAAFMAeQBtAGIAbwBsAE4AYQBtAGUAAQoAAABfAFMARgBYAFAAbABhAHkAZQByACcBBAAAAHQAeQBwAGUAARcAAABTAHkAcwB0AGUAbQAuAE8AYgBqAGUAYwB0ACwAIABtAHMAYwBvAHIAbABpAGIALQEFAAAAVgBhAGwAdQBlAAcFAi8IAAAAAUkAAABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlAGAAMQBbAFsAUwB5AHMAdABlAG0ALgBJAG4AdAAzADIALAAgAG0AcwBjAG8AcgBsAGkAYgBdAF0ALAAgAFYAUgBDAC4AVQBkAG8AbgAuAEMAbwBtAG0AbwBuAA4AAAAGAgAAAAAAAAAnAQQAAAB0AHkAcABlAAEXAAAAUwB5AHMAdABlAG0ALgBTAHQAcgBpAG4AZwAsACAAbQBzAGMAbwByAGwAaQBiACcBCgAAAFMAeQBtAGIAbwBsAE4AYQBtAGUAAR8AAABfAF8AXwBVAGQAbwBuAFMAaABhAHIAcABCAGUAaABhAHYAaQBvAHUAcgBWAGUAcgBzAGkAbwBuAF8AXwBfACcBBAAAAHQAeQBwAGUAARYAAABTAHkAcwB0AGUAbQAuAEkAbgB0ADMAMgAsACAAbQBzAGMAbwByAGwAaQBiABcBBQAAAFYAYQBsAHUAZQACAAAABwUHBQcF + publicVariablesUnityEngineObjects: [] + publicVariablesSerializationDataFormat: 0 +--- !u!114 &515404446 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 515404444} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7f74a37881105b744bd2d7931cc9915f, type: 3} + m_Name: + m_EditorClassIdentifier: + serializationData: + SerializedFormat: 2 + SerializedBytes: + ReferencedUnityObjects: [] + SerializedBytesString: + Prefab: {fileID: 0} + PrefabModificationsReferencedUnityObjects: [] + PrefabModifications: [] + SerializationNodes: [] + _udonSharpBackingUdonBehaviour: {fileID: 515404445} + _HostCard: {fileID: 379391087} + _QuestionURL: + url: https://witwics-dev.github.io/TestQuestion.json + _PlayerPodiums: + - {fileID: 4438766482650780795} + - {fileID: 1993364535} + - {fileID: 1589630268} + _Ding: {fileID: 8300000, guid: c73e1e65b24947b479626ae419424e84, type: 3} + _Buzzer: {fileID: 8300000, guid: bc5aa9668b30b7e48a492e3308a2a802, type: 3} + _TheChase: {fileID: 8300000, guid: ebb0e1809180b8e4b8ae4c4fe1671ae7, type: 3} + _ThinkAboutIt: {fileID: 8300000, guid: fd2e7d68447011640a244f302d442395, type: 3} + _WhereInTheWorld: {fileID: 8300000, guid: e810feeb6c2063747bbb5f735a88bee9, type: 3} + _RockapellaIdent: {fileID: 8300000, guid: 3dd54f8dd36092b4d9664c76ccf9ab49, type: 3} + _MusicPlayer: {fileID: 158746910} + _SFXPlayer: {fileID: 1547939853} +--- !u!4 &515404447 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 515404444} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 3.424, z: 12.961} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 379391076} + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &526668270 stripped GameObject: m_CorrespondingSourceObject: {fileID: 4294144169429098507, guid: 79ebe62246f7f464e98373cb14765f9a, @@ -6083,7 +6167,7 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 379391078} + - m_Target: {fileID: 515404445} m_TargetAssemblyTypeName: m_MethodName: SendCustomEvent m_Mode: 5 @@ -7326,7 +7410,7 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 379391078} + - m_Target: {fileID: 515404445} m_TargetAssemblyTypeName: VRC.Udon.UdonBehaviour, VRC.Udon m_MethodName: SendCustomEvent m_Mode: 5 @@ -8764,7 +8848,7 @@ PrefabInstance: type: 3} propertyPath: _GameManager value: - objectReference: {fileID: 379391079} + objectReference: {fileID: 0} - target: {fileID: 1145695079806890482, guid: 79ebe62246f7f464e98373cb14765f9a, type: 3} propertyPath: serializationData.Prefab @@ -8775,7 +8859,7 @@ PrefabInstance: type: 3} propertyPath: GameManager value: - objectReference: {fileID: 379391079} + objectReference: {fileID: 515404446} - target: {fileID: 1226214083704227558, guid: 79ebe62246f7f464e98373cb14765f9a, type: 3} propertyPath: PlayerNumber @@ -9660,7 +9744,7 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 379391078} + - m_Target: {fileID: 515404445} m_TargetAssemblyTypeName: m_MethodName: SendCustomEvent m_Mode: 5 @@ -11569,7 +11653,7 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 379391078} + - m_Target: {fileID: 515404445} m_TargetAssemblyTypeName: m_MethodName: SendCustomEvent m_Mode: 5 @@ -16789,7 +16873,7 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 379391078} + - m_Target: {fileID: 515404445} m_TargetAssemblyTypeName: m_MethodName: SendCustomEvent m_Mode: 5 @@ -17564,7 +17648,7 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 379391078} + - m_Target: {fileID: 515404445} m_TargetAssemblyTypeName: m_MethodName: SendCustomEvent m_Mode: 5 @@ -19750,7 +19834,7 @@ MonoBehaviour: m_OnClick: m_PersistentCalls: m_Calls: - - m_Target: {fileID: 379391078} + - m_Target: {fileID: 515404445} m_TargetAssemblyTypeName: m_MethodName: SendCustomEvent m_Mode: 5 @@ -21526,7 +21610,7 @@ PrefabInstance: type: 3} propertyPath: _GameManager value: - objectReference: {fileID: 379391079} + objectReference: {fileID: 0} - target: {fileID: 1145695079806890482, guid: 79ebe62246f7f464e98373cb14765f9a, type: 3} propertyPath: serializationData.Prefab @@ -21537,7 +21621,7 @@ PrefabInstance: type: 3} propertyPath: GameManager value: - objectReference: {fileID: 379391079} + objectReference: {fileID: 515404446} - target: {fileID: 1226214083704227558, guid: 79ebe62246f7f464e98373cb14765f9a, type: 3} propertyPath: PlayerNumber @@ -22562,25 +22646,25 @@ MonoBehaviour: useAssignedLayers: 0 DynamicPrefabs: [] DynamicMaterials: - - {fileID: 2100000, guid: 50e427994e5b0224f966b200c577b78b, type: 2} - - {fileID: 2100000, guid: 49170bf20870c7c45873b3c1966d86af, type: 2} - - {fileID: 2100000, guid: 79cb8dae66bc60241b5964b24ff1ac7e, type: 2} - - {fileID: 2100000, guid: d811246c848733b4c8310b4dec5a5fdf, type: 2} - - {fileID: 2100000, guid: bd8b723337ae5824fa61f693f76e943f, type: 2} - - {fileID: 2100000, guid: faae26a849699fc4b804b74882a344df, type: 2} - - {fileID: 2100000, guid: a793cd1d5fe89c440900d816c7b8c323, type: 2} - - {fileID: 2100000, guid: 7eb7cd9bfc12d4c4198d1874ca5a1aa4, type: 2} - - {fileID: 2100000, guid: 9cdc0250a4c9b534fae68ae6aa90bf31, type: 2} - - {fileID: 2100000, guid: 5a56ded101f363e46861c8fe1c4f360e, type: 2} - - {fileID: 2100000, guid: f025bfafc9ecec74aa3aab468ef837d7, type: 2} - {fileID: 2100000, guid: 9ae5e187a5d8f4e4893d37b62cbf0959, type: 2} - {fileID: 2100000, guid: ff135f18e14d9a94287191652767f722, type: 2} + - {fileID: 2100000, guid: a793cd1d5fe89c440900d816c7b8c323, type: 2} + - {fileID: 2100000, guid: 9cdc0250a4c9b534fae68ae6aa90bf31, type: 2} - {fileID: 2100000, guid: d1244b908a4cccd4397cc9cad45fe846, type: 2} - - {fileID: 2100000, guid: 82bace4c334919c4f92e87905c39fdf8, type: 2} + - {fileID: 2100000, guid: faae26a849699fc4b804b74882a344df, type: 2} + - {fileID: 2100000, guid: bd8b723337ae5824fa61f693f76e943f, type: 2} + - {fileID: 2100000, guid: 7eb7cd9bfc12d4c4198d1874ca5a1aa4, type: 2} + - {fileID: 2100000, guid: 79cb8dae66bc60241b5964b24ff1ac7e, type: 2} - {fileID: 2100000, guid: c4382cc6d54262b46913ae6fe8a3740e, type: 2} - - {fileID: 2100000, guid: 220d5a1f1701e674794a1083cc2f0bac, type: 2} + - {fileID: 2100000, guid: 82bace4c334919c4f92e87905c39fdf8, type: 2} + - {fileID: 2100000, guid: d811246c848733b4c8310b4dec5a5fdf, type: 2} + - {fileID: 2100000, guid: f025bfafc9ecec74aa3aab468ef837d7, type: 2} + - {fileID: 2100000, guid: 50e427994e5b0224f966b200c577b78b, type: 2} + - {fileID: 2100000, guid: 5a56ded101f363e46861c8fe1c4f360e, type: 2} - {fileID: 2100000, guid: 95dd396b63c6ad4429ad37eedc63f20c, type: 2} - {fileID: 2100000, guid: 74aa3dbc50df9464e8d9d11815b389a7, type: 2} + - {fileID: 2100000, guid: 220d5a1f1701e674794a1083cc2f0bac, type: 2} + - {fileID: 2100000, guid: 49170bf20870c7c45873b3c1966d86af, type: 2} - {fileID: 2100000, guid: 341141e903fac3e4ca54a62259c6d01d, type: 2} LightMapsNear: [] LightMapsFar: [] @@ -23068,6 +23152,10 @@ MonoBehaviour: SerializedTypeNames: - VRC.Udon.UdonBehaviour - VRC.SDK3.Components.VRCPickup + - gameObject: {fileID: 515404444} + ID: 121 + SerializedTypeNames: + - VRC.Udon.UdonBehaviour portraitCameraPositionOffset: {x: 0, y: 0, z: 0} portraitCameraRotationOffset: {x: 0, y: 1, z: 0, w: -0.00000004371139} PlayerPersistence: [] @@ -23434,7 +23522,7 @@ SceneRoots: - {fileID: 358170790} - {fileID: 1947493793} - {fileID: 1193701800} - - {fileID: 379391076} + - {fileID: 515404447} - {fileID: 2136439120} - {fileID: 1559839983} - {fileID: 824788960} diff --git a/Assets/UdonSharp/GameManagerBase.asset b/Assets/UdonSharp/GameManagerBase.asset new file mode 100644 index 0000000..69a3c7e --- /dev/null +++ b/Assets/UdonSharp/GameManagerBase.asset @@ -0,0 +1,233 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: c333ccfdd0cbdbc4ca30cef2dd6e6b9b, type: 3} + m_Name: GameManagerBase + m_EditorClassIdentifier: + serializedUdonProgramAsset: {fileID: 11400000, guid: aa097bd5d9294a14cab8d8fdce153342, + type: 2} + udonAssembly: + assemblyError: + sourceCsScript: {fileID: 11500000, guid: e4b93753856e7ca48877947cbe074749, type: 3} + scriptVersion: 2 + compiledVersion: 2 + behaviourSyncMode: 0 + hasInteractEvent: 0 + scriptID: -4259654259815039154 + serializationData: + SerializedFormat: 2 + SerializedBytes: + ReferencedUnityObjects: [] + SerializedBytesString: + Prefab: {fileID: 0} + PrefabModificationsReferencedUnityObjects: [] + PrefabModifications: [] + SerializationNodes: + - Name: fieldDefinitions + Entry: 7 + Data: 0|System.Collections.Generic.Dictionary`2[[System.String, mscorlib],[UdonSharp.Compiler.FieldDefinition, + UdonSharp.Editor]], mscorlib + - Name: comparer + Entry: 7 + Data: 1|System.Collections.Generic.GenericEqualityComparer`1[[System.String, + mscorlib]], mscorlib + - Name: + Entry: 8 + Data: + - Name: + Entry: 12 + Data: 3 + - Name: + Entry: 7 + Data: + - Name: $k + Entry: 1 + Data: _HostCard + - Name: $v + Entry: 7 + Data: 2|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: _HostCard + - Name: k__BackingField + Entry: 7 + Data: 3|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: HostCardManager, Assembly-CSharp + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 7 + Data: 4|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: VRC.Udon.UdonBehaviour, VRC.Udon + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 7 + Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib + - Name: + Entry: 6 + Data: + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 5 + Data: true + - Name: _fieldAttributes + Entry: 7 + Data: 5|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + - Name: + Entry: 12 + Data: 1 + - Name: + Entry: 7 + Data: 6|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: _QuestionURL + - Name: $v + Entry: 7 + Data: 7|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: _QuestionURL + - Name: k__BackingField + Entry: 7 + Data: 8|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: VRC.SDKBase.VRCUrl, VRCSDKBase + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 9 + Data: 8 + - Name: k__BackingField + Entry: 7 + Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib + - Name: + Entry: 6 + Data: + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 5 + Data: true + - Name: _fieldAttributes + Entry: 7 + Data: 9|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + - Name: + Entry: 12 + Data: 1 + - Name: + Entry: 7 + Data: 10|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: _AllowInteractionFromHostCard + - Name: $v + Entry: 7 + Data: 11|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: _AllowInteractionFromHostCard + - Name: k__BackingField + Entry: 7 + Data: 12|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: System.Boolean, mscorlib + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 9 + Data: 12 + - Name: k__BackingField + Entry: 7 + Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib + - Name: + Entry: 6 + Data: + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 5 + Data: false + - Name: _fieldAttributes + Entry: 7 + Data: 13|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: + Entry: 13 + Data: + - Name: + Entry: 8 + Data: diff --git a/Assets/UdonSharp/GameManagerBase.asset.meta b/Assets/UdonSharp/GameManagerBase.asset.meta new file mode 100644 index 0000000..59ac4cc --- /dev/null +++ b/Assets/UdonSharp/GameManagerBase.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 58f4439ac4c3e9c438e2513925202b8c +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/UdonSharp/GameManagerBase.cs b/Assets/UdonSharp/GameManagerBase.cs new file mode 100644 index 0000000..3aecfd9 --- /dev/null +++ b/Assets/UdonSharp/GameManagerBase.cs @@ -0,0 +1,113 @@ + +using UdonSharp; +using UnityEngine; +using VRC.SDK3.Data; +using VRC.SDK3.StringLoading; +using VRC.SDK3.UdonNetworkCalling; +using VRC.SDKBase; +using VRC.Udon.Common.Interfaces; + + +public enum QuestionType +{ + BetweenRounds, + MultipleChoice, + LightningRound, + DumpsterDive, + TheChase, + FinalRound, + Tiebreaker +} + +public enum MusicEventType +{ + None, + TheChase, + ThinkAboutIt, + WhereInTheWorld, + RockapellaIdent +} + +public enum SFXEventType +{ + None, + Ding, + Buzzer +} + + +public class GameManagerBase : UdonSharpBehaviour +{ + [SerializeField] protected HostCardManager _HostCard = null; + + [SerializeField] protected VRCUrl _QuestionURL; + + private bool _AllowInteractionFromHostCard = false; + + + void Start() + { + InitialiseGameMode(); + } + + protected void EnableInteraction(string NextInteraction = "Advance") + { + _AllowInteractionFromHostCard = true; + _HostCard.SetNextInteractionText(NextInteraction); + } + protected void DisableInteraction() + { + _AllowInteractionFromHostCard = false; + } + + public bool IsInteractionEnabled() + { + return _AllowInteractionFromHostCard; + } + + public void HostCardUseButtonDown() + { + if (!IsInteractionEnabled()) { return; } + + _HostCardUseButtonDown_Internal(); + } + + protected HostCardInterfaceBase GetHostCardInterface(QuestionType Type) + { + return _HostCard.EnableHostCardDisplay(Type); + } + + protected virtual void _HostCardUseButtonDown_Internal() + { + Debug.LogError("You should not be seeing this. You don't need to call base._HostCardUseButtonDown_Internal()"); + } + + + protected virtual void InitialiseGameMode() + { + // Download our test question. + VRCStringDownloader.LoadUrl(_QuestionURL, (IUdonEventReceiver)this); + } + + + public override void OnStringLoadSuccess(IVRCStringDownload DownloadedString) + { + string JSONString = DownloadedString.Result; + if (VRCJson.TryDeserializeFromJson(JSONString, out DataToken JSONResult)) + { + if (JSONResult.TokenType == TokenType.DataList) + { + // For the moment, we're assuming that only Round 1 exists, so just pass + // the data over under that assumption. This will need to be fixed once + // we start expecting more game modes. + LoadQuestionData(JSONResult.DataList); + } + else + { + Debug.LogError("Malformed case file. Ensure the first element is an array of objects."); + } + } + } + + protected virtual void LoadQuestionData(DataList Data) {} +} diff --git a/Assets/UdonSharp/GameManagerBase.cs.meta b/Assets/UdonSharp/GameManagerBase.cs.meta new file mode 100644 index 0000000..bc08948 --- /dev/null +++ b/Assets/UdonSharp/GameManagerBase.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: e4b93753856e7ca48877947cbe074749 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/UdonSharp/GameManager.asset b/Assets/UdonSharp/GameManagerRound1.asset similarity index 66% rename from Assets/UdonSharp/GameManager.asset rename to Assets/UdonSharp/GameManagerRound1.asset index 78439fd..b6e9281 100644 --- a/Assets/UdonSharp/GameManager.asset +++ b/Assets/UdonSharp/GameManagerRound1.asset @@ -10,7 +10,7 @@ MonoBehaviour: m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c333ccfdd0cbdbc4ca30cef2dd6e6b9b, type: 3} - m_Name: GameManager + m_Name: GameManagerRound1 m_EditorClassIdentifier: serializedUdonProgramAsset: {fileID: 11400000, guid: 06514836c93438a44aed856bd4c09be1, type: 2} @@ -21,7 +21,7 @@ MonoBehaviour: compiledVersion: 2 behaviourSyncMode: 4 hasInteractEvent: 0 - scriptID: -5014025826788158411 + scriptID: -2656766195780718453 serializationData: SerializedFormat: 2 SerializedBytes: @@ -44,22 +44,148 @@ MonoBehaviour: Data: - Name: Entry: 12 - Data: 28 + Data: 22 - Name: Entry: 7 Data: - Name: $k Entry: 1 - Data: _BuzzInAllowed + Data: _HostCard - Name: $v Entry: 7 Data: 2|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: _BuzzInAllowed + Data: _HostCard - Name: k__BackingField Entry: 7 Data: 3|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: HostCardManager, Assembly-CSharp + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 7 + Data: 4|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: VRC.Udon.UdonBehaviour, VRC.Udon + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 7 + Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib + - Name: + Entry: 6 + Data: + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 5 + Data: true + - Name: _fieldAttributes + Entry: 7 + Data: 5|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + - Name: + Entry: 12 + Data: 1 + - Name: + Entry: 7 + Data: 6|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: _QuestionURL + - Name: $v + Entry: 7 + Data: 7|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: _QuestionURL + - Name: k__BackingField + Entry: 7 + Data: 8|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: VRC.SDKBase.VRCUrl, VRCSDKBase + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 9 + Data: 8 + - Name: k__BackingField + Entry: 7 + Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib + - Name: + Entry: 6 + Data: + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 5 + Data: true + - Name: _fieldAttributes + Entry: 7 + Data: 9|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + - Name: + Entry: 12 + Data: 1 + - Name: + Entry: 7 + Data: 10|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: _AllowInteractionFromHostCard + - Name: $v + Entry: 7 + Data: 11|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: _AllowInteractionFromHostCard + - Name: k__BackingField + Entry: 7 + Data: 12|System.RuntimeType, mscorlib - Name: Entry: 1 Data: System.Boolean, mscorlib @@ -68,13 +194,13 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 3 + Data: 12 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib - Name: - Entry: 3 - Data: 1 + Entry: 6 + Data: - Name: Entry: 8 Data: @@ -83,136 +209,10 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 4|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 13|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 - Data: 1 - - Name: - Entry: 7 - Data: 5|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime - - 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: _PlayerBuzzInAllowed - - Name: $v - Entry: 7 - Data: 6|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: _PlayerBuzzInAllowed - - Name: k__BackingField - Entry: 7 - Data: 7|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: System.Boolean[], mscorlib - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 9 - Data: 7 - - Name: k__BackingField - Entry: 7 - Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib - - Name: - Entry: 3 - Data: 1 - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 5 - Data: false - - Name: _fieldAttributes - Entry: 7 - Data: 8|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - - Name: - Entry: 12 - Data: 1 - - Name: - Entry: 7 - Data: 9|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime - - 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: _BuzzedInPlayer - - Name: $v - Entry: 7 - Data: 10|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: _BuzzedInPlayer - - Name: k__BackingField - Entry: 7 - Data: 11|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: System.Int32, mscorlib - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 9 - Data: 11 - - Name: k__BackingField - Entry: 7 - Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib - - Name: - Entry: 3 - Data: 1 - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 5 - Data: false - - Name: _fieldAttributes - Entry: 7 - Data: 12|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - - Name: - Entry: 12 - Data: 1 - - Name: - Entry: 7 - Data: 13|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime - - Name: - Entry: 8 - Data: + Data: 0 - Name: Entry: 13 Data: @@ -239,10 +239,10 @@ MonoBehaviour: Data: _GameHasBegun - Name: k__BackingField Entry: 9 - Data: 3 + Data: 12 - Name: k__BackingField Entry: 9 - Data: 3 + Data: 12 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -292,11 +292,17 @@ MonoBehaviour: Entry: 1 Data: _QuestionIndex - Name: k__BackingField - Entry: 9 - Data: 11 + Entry: 7 + Data: 18|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: System.Int32, mscorlib + - Name: + Entry: 8 + Data: - Name: k__BackingField Entry: 9 - Data: 11 + Data: 18 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -311,13 +317,13 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 18|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 19|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 19|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime + Data: 20|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: @@ -341,16 +347,16 @@ MonoBehaviour: Data: _QuestionStage - Name: $v Entry: 7 - Data: 20|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 21|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _QuestionStage - Name: k__BackingField Entry: 9 - Data: 11 + Data: 18 - Name: k__BackingField Entry: 9 - Data: 11 + Data: 18 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -365,13 +371,13 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 21|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 22|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 22|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime + Data: 23|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: @@ -395,16 +401,16 @@ MonoBehaviour: Data: _QuestionCorrectResponse - Name: $v Entry: 7 - Data: 23|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 24|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _QuestionCorrectResponse - Name: k__BackingField Entry: 9 - Data: 11 + Data: 18 - Name: k__BackingField Entry: 9 - Data: 11 + Data: 18 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -419,13 +425,13 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 24|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 25|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 25|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime + Data: 26|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: @@ -449,13 +455,13 @@ MonoBehaviour: Data: _QuestionsList - Name: $v Entry: 7 - Data: 26|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 27|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _QuestionsList - Name: k__BackingField Entry: 7 - Data: 27|System.RuntimeType, mscorlib + Data: 28|System.RuntimeType, mscorlib - Name: Entry: 1 Data: VRC.SDK3.Data.DataList, VRCSDK3 @@ -464,7 +470,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 27 + Data: 28 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -479,7 +485,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 28|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 29|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -503,13 +509,13 @@ MonoBehaviour: Data: _CurrentQuestion - Name: $v Entry: 7 - Data: 29|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 30|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _CurrentQuestion - Name: k__BackingField Entry: 7 - Data: 30|System.RuntimeType, mscorlib + Data: 31|System.RuntimeType, mscorlib - Name: Entry: 1 Data: VRC.SDK3.Data.DataDictionary, VRCSDK3 @@ -518,7 +524,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 30 + Data: 31 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -533,7 +539,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 31|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 32|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -554,31 +560,25 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: _FinalRoundPlayersSortedByScore + Data: _BuzzInAllowed - Name: $v Entry: 7 - Data: 32|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 33|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: _FinalRoundPlayersSortedByScore + Data: _BuzzInAllowed - Name: k__BackingField - Entry: 7 - Data: 33|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: System.Int32[], mscorlib - - Name: - Entry: 8 - Data: + Entry: 9 + Data: 12 - Name: k__BackingField Entry: 9 - Data: 33 + Data: 12 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib - Name: - Entry: 6 - Data: + Entry: 3 + Data: 1 - Name: Entry: 8 Data: @@ -590,7 +590,13 @@ MonoBehaviour: Data: 34|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 - Data: 0 + Data: 1 + - Name: + Entry: 7 + Data: 35|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime + - Name: + Entry: 8 + Data: - Name: Entry: 13 Data: @@ -608,25 +614,31 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: _IsBeingHeld + Data: _PlayerBuzzInAllowed - Name: $v Entry: 7 - Data: 35|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 36|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: _IsBeingHeld + Data: _PlayerBuzzInAllowed - Name: k__BackingField - Entry: 9 - Data: 3 + Entry: 7 + Data: 37|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: System.Boolean[], mscorlib + - Name: + Entry: 8 + Data: - Name: k__BackingField Entry: 9 - Data: 3 + Data: 37 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib - Name: - Entry: 6 - Data: + Entry: 3 + Data: 1 - Name: Entry: 8 Data: @@ -635,10 +647,16 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 36|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 38|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 - Data: 0 + Data: 1 + - Name: + Entry: 7 + Data: 39|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime + - Name: + Entry: 8 + Data: - Name: Entry: 13 Data: @@ -656,70 +674,124 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: _StoredJumpImpulse - - Name: $v - Entry: 7 - Data: 37|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: _StoredJumpImpulse - - Name: k__BackingField - Entry: 7 - Data: 38|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: System.Single, mscorlib - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 9 - Data: 38 - - Name: k__BackingField - Entry: 7 - Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib - - Name: - Entry: 6 - Data: - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 5 - Data: false - - Name: _fieldAttributes - Entry: 7 - Data: 39|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: - Entry: 7 - Data: - - Name: $k - Entry: 1 - Data: _PlayerPodiums + Data: _BuzzedInPlayer - Name: $v Entry: 7 Data: 40|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: _BuzzedInPlayer + - Name: k__BackingField + Entry: 9 + Data: 18 + - Name: k__BackingField + Entry: 9 + Data: 18 + - Name: k__BackingField + Entry: 7 + Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib + - Name: + Entry: 3 + Data: 1 + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 5 + Data: false + - Name: _fieldAttributes + Entry: 7 + Data: 41|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + - Name: + Entry: 12 + Data: 1 + - Name: + Entry: 7 + Data: 42|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime + - 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: _FinalRoundPlayersSortedByScore + - Name: $v + Entry: 7 + Data: 43|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: _FinalRoundPlayersSortedByScore + - Name: k__BackingField + Entry: 7 + Data: 44|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: System.Int32[], mscorlib + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 9 + Data: 44 + - Name: k__BackingField + Entry: 7 + Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib + - Name: + Entry: 6 + Data: + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 5 + Data: false + - Name: _fieldAttributes + Entry: 7 + Data: 45|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: + Entry: 7 + Data: + - Name: $k + Entry: 1 + Data: _PlayerPodiums + - Name: $v + Entry: 7 + Data: 46|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _PlayerPodiums - Name: k__BackingField Entry: 7 - Data: 41|System.RuntimeType, mscorlib + Data: 47|System.RuntimeType, mscorlib - Name: Entry: 1 Data: PlayerPodium[], Assembly-CSharp @@ -728,7 +800,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 7 - Data: 42|System.RuntimeType, mscorlib + Data: 48|System.RuntimeType, mscorlib - Name: Entry: 1 Data: UnityEngine.Component[], UnityEngine.CoreModule @@ -749,13 +821,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 43|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 49|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 44|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 50|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -776,91 +848,25 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: QuestionURL + Data: _Ding - Name: $v Entry: 7 - Data: 45|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 51|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: QuestionURL + Data: _Ding - Name: k__BackingField Entry: 7 - Data: 46|System.RuntimeType, mscorlib + Data: 52|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: VRC.SDKBase.VRCUrl, VRCSDKBase + Data: UnityEngine.AudioClip, UnityEngine.AudioModule - Name: Entry: 8 Data: - Name: k__BackingField Entry: 9 - Data: 46 - - Name: k__BackingField - Entry: 7 - Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib - - Name: - Entry: 3 - Data: 1 - - Name: - Entry: 8 - Data: - - Name: 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|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime - - 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: _BetweenRoundsInterface - - Name: $v - Entry: 7 - Data: 49|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: _BetweenRoundsInterface - - Name: k__BackingField - Entry: 7 - Data: 50|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: HostCardBetweenRoundsInterface, Assembly-CSharp - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 7 - Data: 51|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: VRC.Udon.UdonBehaviour, VRC.Udon - - Name: - Entry: 8 - Data: + Data: 52 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -875,22 +881,22 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 52|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 53|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 2 - Name: Entry: 7 - Data: 53|UnityEngine.HeaderAttribute, UnityEngine.CoreModule + Data: 54|UnityEngine.HeaderAttribute, UnityEngine.CoreModule - Name: header Entry: 1 - Data: UI + Data: Audio - Name: Entry: 8 Data: - Name: Entry: 7 - Data: 54|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 55|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -911,25 +917,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: _MultipleChoiceInterface + Data: _Buzzer - Name: $v Entry: 7 - Data: 55|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 56|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: _MultipleChoiceInterface + Data: _Buzzer - Name: k__BackingField - Entry: 7 - Data: 56|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: HostCardMultipleChoiceInterface, Assembly-CSharp - - Name: - Entry: 8 - Data: + Entry: 9 + Data: 52 - Name: k__BackingField Entry: 9 - Data: 51 + Data: 52 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -971,25 +971,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: _LightningRoundInterface + Data: _TheChase - Name: $v Entry: 7 Data: 59|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: _LightningRoundInterface + Data: _TheChase - Name: k__BackingField - Entry: 7 - Data: 60|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: HostCardLightningRoundInterface, Assembly-CSharp - - Name: - Entry: 8 - Data: + Entry: 9 + Data: 52 - Name: k__BackingField Entry: 9 - Data: 51 + Data: 52 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1004,13 +998,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 61|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 60|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 62|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 61|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -1031,25 +1025,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: _TheChaseInterface + Data: _ThinkAboutIt - Name: $v Entry: 7 - Data: 63|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 62|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: _TheChaseInterface + Data: _ThinkAboutIt - Name: k__BackingField - Entry: 7 - Data: 64|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: HostCardTheChaseInterface, Assembly-CSharp - - Name: - Entry: 8 - Data: + Entry: 9 + Data: 52 - Name: k__BackingField Entry: 9 - Data: 51 + Data: 52 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1064,13 +1052,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 65|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 63|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 66|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 64|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -1091,25 +1079,73 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: _FinalRoundInterface + Data: _WhereInTheWorld - Name: $v Entry: 7 - Data: 67|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 65|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: _FinalRoundInterface + Data: _WhereInTheWorld - Name: k__BackingField + Entry: 9 + Data: 52 + - Name: k__BackingField + Entry: 9 + Data: 52 + - Name: k__BackingField Entry: 7 - Data: 68|System.RuntimeType, mscorlib + Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib - Name: - Entry: 1 - Data: HostCardFinalRoundInterface, Assembly-CSharp + Entry: 6 + Data: - Name: Entry: 8 Data: + - Name: k__BackingField + Entry: 5 + Data: true + - Name: _fieldAttributes + Entry: 7 + Data: 66|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + - Name: + Entry: 12 + Data: 1 + - Name: + Entry: 7 + Data: 67|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: _RockapellaIdent + - Name: $v + Entry: 7 + Data: 68|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: _RockapellaIdent + - Name: k__BackingField + Entry: 9 + Data: 52 - Name: k__BackingField Entry: 9 - Data: 51 + Data: 52 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1151,25 +1187,25 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: _AdminPanelInterface + Data: _MusicPlayer - Name: $v Entry: 7 Data: 71|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: _AdminPanelInterface + Data: _MusicPlayer - Name: k__BackingField Entry: 7 Data: 72|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: HostPanelInterface, Assembly-CSharp + Data: UnityEngine.AudioSource, UnityEngine.AudioModule - Name: Entry: 8 Data: - Name: k__BackingField Entry: 9 - Data: 51 + Data: 72 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1211,418 +1247,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: _Ding + Data: _SFXPlayer - Name: $v Entry: 7 Data: 75|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: _Ding - - Name: k__BackingField - Entry: 7 - Data: 76|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: UnityEngine.AudioClip, UnityEngine.AudioModule - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 9 - Data: 76 - - Name: k__BackingField - Entry: 7 - Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib - - Name: - Entry: 6 - Data: - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 5 - Data: true - - Name: _fieldAttributes - Entry: 7 - Data: 77|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - - Name: - Entry: 12 - Data: 2 - - Name: - Entry: 7 - Data: 78|UnityEngine.HeaderAttribute, UnityEngine.CoreModule - - Name: header - Entry: 1 - Data: Audio - - Name: - Entry: 8 - Data: - - Name: - Entry: 7 - Data: 79|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: _Buzzer - - Name: $v - Entry: 7 - Data: 80|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: _Buzzer - - Name: k__BackingField - Entry: 9 - Data: 76 - - Name: k__BackingField - Entry: 9 - Data: 76 - - Name: k__BackingField - Entry: 7 - Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib - - Name: - Entry: 6 - Data: - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 5 - Data: true - - Name: _fieldAttributes - Entry: 7 - Data: 81|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - - Name: - Entry: 12 - Data: 1 - - Name: - Entry: 7 - Data: 82|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: _TheChase - - Name: $v - Entry: 7 - Data: 83|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: _TheChase - - Name: k__BackingField - Entry: 9 - Data: 76 - - Name: k__BackingField - Entry: 9 - Data: 76 - - Name: k__BackingField - Entry: 7 - Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib - - Name: - Entry: 6 - Data: - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 5 - Data: true - - Name: _fieldAttributes - Entry: 7 - Data: 84|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - - Name: - Entry: 12 - Data: 1 - - Name: - Entry: 7 - Data: 85|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: _ThinkAboutIt - - Name: $v - Entry: 7 - Data: 86|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: _ThinkAboutIt - - Name: k__BackingField - Entry: 9 - Data: 76 - - Name: k__BackingField - Entry: 9 - Data: 76 - - Name: k__BackingField - Entry: 7 - Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib - - Name: - Entry: 6 - Data: - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 5 - Data: true - - Name: _fieldAttributes - Entry: 7 - Data: 87|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - - Name: - Entry: 12 - Data: 1 - - Name: - Entry: 7 - Data: 88|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: _WhereInTheWorld - - Name: $v - Entry: 7 - Data: 89|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: _WhereInTheWorld - - Name: k__BackingField - Entry: 9 - Data: 76 - - Name: k__BackingField - Entry: 9 - Data: 76 - - Name: k__BackingField - Entry: 7 - Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib - - Name: - Entry: 6 - Data: - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 5 - Data: true - - Name: _fieldAttributes - Entry: 7 - Data: 90|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - - Name: - Entry: 12 - Data: 1 - - Name: - Entry: 7 - Data: 91|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: _RockapellaIdent - - Name: $v - Entry: 7 - Data: 92|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: _RockapellaIdent - - Name: k__BackingField - Entry: 9 - Data: 76 - - Name: k__BackingField - Entry: 9 - Data: 76 - - Name: k__BackingField - Entry: 7 - Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib - - Name: - Entry: 6 - Data: - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 5 - Data: true - - Name: _fieldAttributes - Entry: 7 - Data: 93|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - - Name: - Entry: 12 - Data: 1 - - Name: - Entry: 7 - Data: 94|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: _MusicPlayer - - Name: $v - Entry: 7 - Data: 95|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: _MusicPlayer - - Name: k__BackingField - Entry: 7 - Data: 96|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: UnityEngine.AudioSource, UnityEngine.AudioModule - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 9 - Data: 96 - - Name: k__BackingField - Entry: 7 - Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib - - Name: - Entry: 6 - Data: - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 5 - Data: true - - Name: _fieldAttributes - Entry: 7 - Data: 97|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - - Name: - Entry: 12 - Data: 1 - - Name: - Entry: 7 - Data: 98|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: _SFXPlayer - - Name: $v - Entry: 7 - Data: 99|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _SFXPlayer - Name: k__BackingField Entry: 9 - Data: 96 + Data: 72 - Name: k__BackingField Entry: 9 - Data: 96 + Data: 72 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1637,14 +1274,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 100|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], - mscorlib + Data: 76|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 101|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 77|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: diff --git a/Assets/UdonSharp/GameManager.asset.meta b/Assets/UdonSharp/GameManagerRound1.asset.meta similarity index 100% rename from Assets/UdonSharp/GameManager.asset.meta rename to Assets/UdonSharp/GameManagerRound1.asset.meta diff --git a/Assets/UdonSharp/GameManager.cs b/Assets/UdonSharp/GameManagerRound1.cs similarity index 65% rename from Assets/UdonSharp/GameManager.cs rename to Assets/UdonSharp/GameManagerRound1.cs index d483b14..fc7bd3e 100644 --- a/Assets/UdonSharp/GameManager.cs +++ b/Assets/UdonSharp/GameManagerRound1.cs @@ -5,46 +5,11 @@ using VRC.SDK3.Data; using VRC.SDK3.UdonNetworkCalling; using VRC.Udon.Common.Interfaces; using VRC.SDKBase; -using VRC.SDK3.StringLoading; -using VRC.SDK3.Components; -using VRC.Udon.Common; - - -public enum QuestionType -{ - None, - MultipleChoice, - LightningRound, - DumpsterDive, - TheChase, - FinalRound, - Tiebreaker -} - -public enum MusicEventType -{ - None, - TheChase, - ThinkAboutIt, - WhereInTheWorld, - RockapellaIdent -} - -public enum SFXEventType -{ - None, - Ding, - Buzzer -} [UdonBehaviourSyncMode(BehaviourSyncMode.Manual)] -public class GameManager : UdonSharpBehaviour +public class GameManagerRound1 : GameManagerBase { - [UdonSynced] private bool _BuzzInAllowed = false; - [UdonSynced] private bool[] _PlayerBuzzInAllowed; - [UdonSynced] private int _BuzzedInPlayer = 0; - [UdonSynced] private bool _GameHasBegun = false; [UdonSynced] private int _QuestionIndex = 0; [UdonSynced] private int _QuestionStage = 0; @@ -52,24 +17,14 @@ public class GameManager : UdonSharpBehaviour private DataList _QuestionsList = new DataList(); private DataDictionary _CurrentQuestion; + [UdonSynced] private bool _BuzzInAllowed = false; + [UdonSynced] private bool[] _PlayerBuzzInAllowed; + [UdonSynced] private int _BuzzedInPlayer = 0; + private int[] _FinalRoundPlayersSortedByScore; - private bool _IsBeingHeld = false; - private float _StoredJumpImpulse = 0.0f; - [SerializeField] private PlayerPodium[] _PlayerPodiums; - [UdonSynced] public VRCUrl QuestionURL; - - [Header("UI")] - [SerializeField] private HostCardBetweenRoundsInterface _BetweenRoundsInterface; - [SerializeField] private HostCardMultipleChoiceInterface _MultipleChoiceInterface; - [SerializeField] private HostCardLightningRoundInterface _LightningRoundInterface; - [SerializeField] private HostCardTheChaseInterface _TheChaseInterface; - [SerializeField] private HostCardFinalRoundInterface _FinalRoundInterface; - - [SerializeField] private HostPanelInterface _AdminPanelInterface; - [Header("Audio")] [SerializeField] private AudioClip _Ding = null; [SerializeField] private AudioClip _Buzzer = null; @@ -82,127 +37,81 @@ public class GameManager : UdonSharpBehaviour [SerializeField] private AudioSource _MusicPlayer = null; [SerializeField] private AudioSource _SFXPlayer = null; - void Start() + + protected override void InitialiseGameMode() { _PlayerBuzzInAllowed = new bool[_PlayerPodiums.Length]; ResetBuzzers(); - // Download our test question. - VRCStringDownloader.LoadUrl(QuestionURL, (IUdonEventReceiver)this); + base.InitialiseGameMode(); } - public override void OnPickup() + + protected override void LoadQuestionData(DataList Data) { - Networking.SetOwner(Networking.LocalPlayer, gameObject); - _StoredJumpImpulse = Networking.LocalPlayer.GetJumpImpulse(); - Networking.LocalPlayer.SetJumpImpulse(0.0f); - _IsBeingHeld = true; + _QuestionsList.Clear(); + _QuestionIndex = 0; - base.OnPickup(); - } + HostCardBetweenRoundsInterface Interface = + (HostCardBetweenRoundsInterface)GetHostCardInterface(QuestionType.BetweenRounds); - public override void OnDrop() - { - Networking.SetOwner(Networking.InstanceOwner, gameObject); - Networking.LocalPlayer.SetJumpImpulse(_StoredJumpImpulse); - _StoredJumpImpulse = 0.0f; - _IsBeingHeld = false; - - base.OnDrop(); - } - - public override bool OnOwnershipRequest(VRCPlayerApi RequestingPlayer, VRCPlayerApi RequestedOwner) - { - Debug.LogError(RequestingPlayer.displayName + " is requesting that " + RequestedOwner.displayName + " become the new owner of the host card. No fucking way."); - - return false; - } - - public override void OnOwnershipTransferred(VRCPlayerApi Player) - { - Debug.LogError("New owner is " + Player); - } - - public override void InputJump(bool Value, UdonInputEventArgs Args) - { - if (Value && _IsBeingHeld) + for (int i = 0; i < Data.Count; i++) { - _AdminPanelInterface.gameObject.SetActive(!_AdminPanelInterface.gameObject.activeSelf); - } - - base.InputJump(Value, Args); - } - - public override void OnStringLoadSuccess(IVRCStringDownload DownloadedString) - { - string JSONString = DownloadedString.Result; - if (VRCJson.TryDeserializeFromJson(JSONString, out DataToken JSONResult)) - { - if (JSONResult.TokenType == TokenType.DataList) + if (Data[i].TokenType == TokenType.DataDictionary) { - _QuestionsList.Clear(); - _QuestionIndex = 0; - - for (int i = 0; i < JSONResult.DataList.Count; i++) - { - if (JSONResult.DataList[i].TokenType == TokenType.DataDictionary) - { - _QuestionsList.Add(JSONResult.DataList[i]); - } - } - - if (_QuestionsList.Count == 0) - { - _BetweenRoundsInterface.HeaderUI.text = - "Unable to find any questions. Ensure the root array elements are all objects."; - return; - } - - _CurrentQuestion = _QuestionsList[_QuestionIndex].DataDictionary; - - _BetweenRoundsInterface.HeaderUI.text = - "Found " + _QuestionsList.Count + " questions in this case file. Press 'Use' button to show scores."; - - // Reset podiums on a successful case load - for (int i = 0; i < _PlayerPodiums.Length; i++) - { - NetworkCalling.SendCustomNetworkEvent( - (IUdonEventReceiver)_PlayerPodiums[i], - NetworkEventTarget.All, - "ResetPodium"); - } - - _GameHasBegun = false; - EnableInteraction("Start Game"); - } - else - { - Debug.LogError("Malformed case file. Ensure the first element is an array of objects."); + _QuestionsList.Add(Data[i]); } } + + if (_QuestionsList.Count == 0) + { + Interface.HeaderUI.text = + "Unable to find any questions. Ensure the root array elements are all objects."; + return; + } + + _CurrentQuestion = _QuestionsList[_QuestionIndex].DataDictionary; + + Interface.HeaderUI.text = + "Found " + _QuestionsList.Count + " questions in this case file. Press 'Use' button to show scores."; + + // Reset podiums on a successful case load + for (int i = 0; i < _PlayerPodiums.Length; i++) + { + NetworkCalling.SendCustomNetworkEvent( + (IUdonEventReceiver)_PlayerPodiums[i], + NetworkEventTarget.All, + "ResetPodium"); + } + + _GameHasBegun = false; + EnableInteraction("Start Game"); } private void NewMultipleChoiceQuestion() { - _MultipleChoiceInterface.HeaderUI.text = QuestionTypeToString((QuestionType)((int)_CurrentQuestion["Type"].Number)); + HostCardMultipleChoiceInterface Interface = + (HostCardMultipleChoiceInterface)GetHostCardInterface(QuestionType.MultipleChoice); + + ResetMultipleChoiceInterface(Interface); + + Interface.HeaderUI.text = QuestionTypeToString((QuestionType)((int)_CurrentQuestion["Type"].Number)); DataList ClueStrings = _CurrentQuestion["Clues"].DataList; - for (int i = 0; i < _MultipleChoiceInterface.CluesUI.Length && i < ClueStrings.Count; i++) + for (int i = 0; i < Interface.CluesUI.Length && i < ClueStrings.Count; i++) { - _MultipleChoiceInterface.CluesUI[i].text = ClueStrings[i].ToString(); + Interface.CluesUI[i].text = ClueStrings[i].ToString(); } DataList Choices = _CurrentQuestion["Choices"].DataList; - for (int i = 0; i < Choices.Count && i < _MultipleChoiceInterface.ChoiceUI.Length; i++) + for (int i = 0; i < Choices.Count && i < Interface.ChoiceUI.Length; i++) { - _MultipleChoiceInterface.ChoiceUI[i].text = Choices[i].ToString(); + Interface.ChoiceUI[i].text = Choices[i].ToString(); } _QuestionCorrectResponse = (int)_CurrentQuestion["Correct Response"].Number; - EnableHostCardDisplay(QuestionType.MultipleChoice); - EnableInteraction("Reveal Choice 1"); } @@ -212,25 +121,34 @@ public class GameManager : UdonSharpBehaviour SendCustomEventDelayedSeconds(nameof(MultipleChoiceRevealChoice2), 1.25f); SendCustomEventDelayedSeconds(nameof(MultipleChoiceRevealChoice3), 2.5f); } - public void MultipleChoiceRevealChoice1() + private void MultipleChoiceRevealChoice1() { - _MultipleChoiceInterface.ChoiceButtonImages[0].color = (_QuestionCorrectResponse == 1) ? Color.green : Color.red; + HostCardMultipleChoiceInterface Interface = + (HostCardMultipleChoiceInterface)GetHostCardInterface(QuestionType.MultipleChoice); + + Interface.ChoiceButtonImages[0].color = (_QuestionCorrectResponse == 1) ? Color.green : Color.red; SendCustomNetworkEvent(NetworkEventTarget.All, nameof(PlaySFXAtPitch), SFXEventType.Ding, As5); EnableInteraction("Reveal Choice 2"); } - public void MultipleChoiceRevealChoice2() + private void MultipleChoiceRevealChoice2() { - _MultipleChoiceInterface.ChoiceButtonImages[1].color = (_QuestionCorrectResponse == 2) ? Color.green : Color.red; + HostCardMultipleChoiceInterface Interface = + (HostCardMultipleChoiceInterface)GetHostCardInterface(QuestionType.MultipleChoice); + + Interface.ChoiceButtonImages[1].color = (_QuestionCorrectResponse == 2) ? Color.green : Color.red; SendCustomNetworkEvent(NetworkEventTarget.All, nameof(PlaySFXAtPitch), SFXEventType.Ding, C6); EnableInteraction("Reveal Choice 3"); } - public void MultipleChoiceRevealChoice3() + private void MultipleChoiceRevealChoice3() { - _MultipleChoiceInterface.ChoiceButtonImages[2].color = (_QuestionCorrectResponse == 3) ? Color.green : Color.red; + HostCardMultipleChoiceInterface Interface = + (HostCardMultipleChoiceInterface)GetHostCardInterface(QuestionType.MultipleChoice); + + Interface.ChoiceButtonImages[2].color = (_QuestionCorrectResponse == 3) ? Color.green : Color.red; DataList Choices = _CurrentQuestion["Choices"].DataList; EnableChoiceCards(); @@ -271,17 +189,20 @@ public class GameManager : UdonSharpBehaviour NetworkCalling.SendCustomNetworkEvent((IUdonEventReceiver)_PlayerPodiums[i], NetworkEventTarget.All, "LockInChoice"); } - _MultipleChoiceInterface.HeaderUI.text = "LOCKED IN"; - for (int i = 0; i < _MultipleChoiceInterface.CluesUI.Length; i++) + HostCardMultipleChoiceInterface Interface = + (HostCardMultipleChoiceInterface)GetHostCardInterface(QuestionType.MultipleChoice); + + Interface.HeaderUI.text = "LOCKED IN"; + for (int i = 0; i < Interface.CluesUI.Length; i++) { - _MultipleChoiceInterface.CluesUI[i].text = ""; + Interface.CluesUI[i].text = ""; } - for (int i = 0; i < _MultipleChoiceInterface.ChoiceUI.Length; i++) + for (int i = 0; i < Interface.ChoiceUI.Length; i++) { if (i != (_QuestionCorrectResponse - 1)) { - _MultipleChoiceInterface.ChoiceUI[i].text = ""; + Interface.ChoiceUI[i].text = ""; } } @@ -290,7 +211,10 @@ public class GameManager : UdonSharpBehaviour private void MultipleChoiceRevealAnswersAndAssignPoints() { - _MultipleChoiceInterface.HeaderUI.text = "ANSWER REVEALED"; + HostCardMultipleChoiceInterface Interface = + (HostCardMultipleChoiceInterface)GetHostCardInterface(QuestionType.MultipleChoice); + + Interface.HeaderUI.text = "ANSWER REVEALED"; for (int i = 0; i < _PlayerPodiums.Length; i++) { @@ -306,39 +230,44 @@ public class GameManager : UdonSharpBehaviour private void BeginLightningRound() { - _LightningRoundInterface.HeaderUI.text = QuestionTypeToString((QuestionType)((int)_CurrentQuestion["Type"].Number)) + " | " + _CurrentQuestion["Location"].ToString(); - _LightningRoundInterface.QuestionUI.text = ""; - for (int i = 0; i < _LightningRoundInterface.ChoiceUI.Length && i < _LightningRoundInterface.ChoiceButtons.Length; i++) - { - _LightningRoundInterface.ChoiceUI[i].text = ""; - } + HostCardLightningRoundInterface Interface = + (HostCardLightningRoundInterface)GetHostCardInterface(QuestionType.LightningRound); + + Interface.HeaderUI.text = QuestionTypeToString((QuestionType)((int)_CurrentQuestion["Type"].Number)) + " | " + _CurrentQuestion["Location"].ToString(); + for (int i = 0; i < Interface.ChoiceUI.Length && i < Interface.ChoiceButtons.Length; i++) + { + Interface.ChoiceUI[i].text = ""; + } + Interface.QuestionUI.text = "All of these questions are worth 5 Acme Crimebucks. These questions are all about [[CROOK]]'s most recent whereabouts, which is " + _CurrentQuestion["Location"].ToString() + ". Hands on your buzzers. Here's the first question..."; - EnableHostCardDisplay(QuestionType.LightningRound); EnableBuzzers(); - EnableInteraction("Next Question"); + EnableInteraction("First Question"); } private void NewLightningRoundQuestion(int Question) { DataDictionary CurrentQuestion = _CurrentQuestion["Questions"].DataList[Question - 1].DataDictionary; - _LightningRoundInterface.QuestionUI.text = CurrentQuestion["Question"].ToString(); + HostCardLightningRoundInterface Interface = + (HostCardLightningRoundInterface)GetHostCardInterface(QuestionType.LightningRound); + + Interface.QuestionUI.text = CurrentQuestion["Question"].ToString(); DataList Choices = CurrentQuestion["Choices"].DataList; - for (int i = 0; i < Choices.Count && i < _LightningRoundInterface.ChoiceUI.Length; i++) + for (int i = 0; i < Choices.Count && i < Interface.ChoiceUI.Length; i++) { - _LightningRoundInterface.ChoiceUI[i].text = Choices[i].ToString(); + Interface.ChoiceUI[i].text = Choices[i].ToString(); } _QuestionCorrectResponse = (int)CurrentQuestion["Correct Response"].Number; - for (int i = 0; i < _LightningRoundInterface.ChoiceButtons.Length && i < _LightningRoundInterface.ChoiceButtonImages.Length; i++) + for (int i = 0; i < Interface.ChoiceButtons.Length && i < Interface.ChoiceButtonImages.Length; i++) { - _LightningRoundInterface.ChoiceButtonImages[i].color = (_QuestionCorrectResponse == (i + 1)) ? Color.green : Color.red; - _LightningRoundInterface.ChoiceButtons[i].interactable = true; + Interface.ChoiceButtonImages[i].color = (_QuestionCorrectResponse == (i + 1)) ? Color.green : Color.red; + Interface.ChoiceButtons[i].interactable = true; } - _LightningRoundInterface.OtherButton.interactable = true; + Interface.OtherButton.interactable = true; EnableBuzzInPeriodForAllPlayers(); } @@ -347,11 +276,14 @@ public class GameManager : UdonSharpBehaviour { if (_QuestionCorrectResponse == Answer) { - for (int i = 0; i < _LightningRoundInterface.ChoiceButtons.Length; i++) + HostCardLightningRoundInterface Interface = + (HostCardLightningRoundInterface)GetHostCardInterface(QuestionType.LightningRound); + + for (int i = 0; i < Interface.ChoiceButtons.Length; i++) { - _LightningRoundInterface.ChoiceButtons[i].interactable = false; + Interface.ChoiceButtons[i].interactable = false; } - _LightningRoundInterface.OtherButton.interactable = false; + Interface.OtherButton.interactable = false; int PodiumIndex = _BuzzedInPlayer - 1; if (PodiumIndex >= 0 && PodiumIndex < _PlayerPodiums.Length) @@ -391,38 +323,58 @@ public class GameManager : UdonSharpBehaviour private void BeginTheChase() { - _TheChaseInterface.HeaderUI.text = QuestionTypeToString((QuestionType)((int)_CurrentQuestion["Type"].Number)); - _TheChaseInterface.ClueUI.text = ""; - for (int i = 0; i < _TheChaseInterface.ChoiceUI.Length && i < _TheChaseInterface.ChoiceButtons.Length; i++) + HostCardTheChaseInterface Interface = + (HostCardTheChaseInterface)GetHostCardInterface(QuestionType.TheChase); + + Interface.HeaderUI.text = QuestionTypeToString((QuestionType)((int)_CurrentQuestion["Type"].Number)); + Interface.ClueUI.text = ""; + for (int i = 0; i < Interface.ChoiceUI.Length && i < Interface.ChoiceButtons.Length; i++) { - _TheChaseInterface.ChoiceUI[i].text = ""; + Interface.ChoiceUI[i].text = ""; } - EnableHostCardDisplay(QuestionType.TheChase); EnableBuzzers(); - EnableInteraction("Next Question"); + EnableInteraction("Play The Music"); + } + + private void PlayTheChaseMusic() + { + HostCardTheChaseInterface Interface = + (HostCardTheChaseInterface)GetHostCardInterface(QuestionType.TheChase); + + NetworkCalling.SendCustomNetworkEvent((IUdonEventReceiver)this, NetworkEventTarget.All, nameof(PlayMusic), MusicEventType.TheChase); + + Interface.HeaderUI.text = QuestionTypeToString(QuestionType.TheChase); + Interface.ClueUI.text = "All of these questions are worth 5 Acme Crimebucks. Hands on your buzzers. Listen carefully. Here we go."; + + EnableBuzzers(); + + EnableInteraction("Here We Go"); } private void NewTheChaseClue(int Clue) { DataDictionary CurrentClue = _CurrentQuestion["Clues"].DataList[Clue - 1].DataDictionary; - _TheChaseInterface.ClueUI.text = CurrentClue["Clue"].ToString(); + HostCardTheChaseInterface Interface = + (HostCardTheChaseInterface)GetHostCardInterface(QuestionType.TheChase); + + Interface.ClueUI.text = CurrentClue["Clue"].ToString(); DataList Choices = CurrentClue["Choices"].DataList; - for (int i = 0; i < Choices.Count && i < _TheChaseInterface.ChoiceUI.Length; i++) + for (int i = 0; i < Choices.Count && i < Interface.ChoiceUI.Length; i++) { - _TheChaseInterface.ChoiceUI[i].text = Choices[i].ToString(); + Interface.ChoiceUI[i].text = Choices[i].ToString(); } - _TheChaseInterface.OtherButton.interactable = true; + Interface.OtherButton.interactable = true; _QuestionCorrectResponse = (int)CurrentClue["Correct Response"].Number; - for (int i = 0; i < _TheChaseInterface.ChoiceButtons.Length && i < _TheChaseInterface.ChoiceButtonImages.Length; i++) + for (int i = 0; i < Interface.ChoiceButtons.Length && i < Interface.ChoiceButtonImages.Length; i++) { - _TheChaseInterface.ChoiceButtonImages[i].color = (_QuestionCorrectResponse == (i + 1)) ? Color.green : Color.red; - _TheChaseInterface.ChoiceButtons[i].interactable = true; + Interface.ChoiceButtonImages[i].color = (_QuestionCorrectResponse == (i + 1)) ? Color.green : Color.red; + Interface.ChoiceButtons[i].interactable = true; } EnableBuzzInPeriodForAllPlayers(); @@ -461,51 +413,59 @@ public class GameManager : UdonSharpBehaviour } public void TheChaseEndClue() { - for (int i = 0; i < _TheChaseInterface.ChoiceButtons.Length; i++) + HostCardTheChaseInterface Interface = + (HostCardTheChaseInterface)GetHostCardInterface(QuestionType.TheChase); + + for (int i = 0; i < Interface.ChoiceButtons.Length; i++) { - _TheChaseInterface.ChoiceButtons[i].interactable = false; + Interface.ChoiceButtons[i].interactable = false; } - _TheChaseInterface.OtherButton.interactable = false; + Interface.OtherButton.interactable = false; EndBuzzInPeriod(); + EnableInteraction("Next Question"); } + private void BeginFinalRound() { - _FinalRoundInterface.HeaderUI.text = QuestionTypeToString((QuestionType)((int)_CurrentQuestion["Type"].Number)) + " | Showing Map Preview"; + HostCardFinalRoundInterface Interface = + (HostCardFinalRoundInterface)GetHostCardInterface(QuestionType.FinalRound); + + Interface.HeaderUI.text = QuestionTypeToString((QuestionType)((int)_CurrentQuestion["Type"].Number)) + " | Showing Map Preview"; EnableRiskCards(); DataList ClueStrings = _CurrentQuestion["Clues"].DataList; - for (int i = 0; i < _FinalRoundInterface.CluesUI.Length && i < ClueStrings.Count; i++) + for (int i = 0; i < Interface.CluesUI.Length && i < ClueStrings.Count; i++) { - _FinalRoundInterface.CluesUI[i].text = ClueStrings[i].ToString(); + Interface.CluesUI[i].text = ClueStrings[i].ToString(); } DataList Choices = _CurrentQuestion["Choices"].DataList; - for (int i = 0; i < Choices.Count && i < _FinalRoundInterface.ChoiceUI.Length; i++) + for (int i = 0; i < Choices.Count && i < Interface.ChoiceUI.Length; i++) { - _FinalRoundInterface.ChoiceUI[i].text = Choices[i].ToString(); + Interface.ChoiceUI[i].text = Choices[i].ToString(); } _QuestionCorrectResponse = (int)_CurrentQuestion["Correct Response"].Number; - EnableHostCardDisplay(QuestionType.FinalRound); - EnableInteraction("Think About It"); } private void PlayThinkingMusic() { - EnableHostCardDisplay(QuestionType.None); + HostCardBetweenRoundsInterface Interface = + (HostCardBetweenRoundsInterface)GetHostCardInterface(QuestionType.BetweenRounds); + Interface.HeaderUI.text = "Think about it..."; NetworkCalling.SendCustomNetworkEvent((IUdonEventReceiver)this, NetworkEventTarget.All, nameof(PlayMusic), MusicEventType.ThinkAboutIt); - SendCustomEventDelayedSeconds(nameof(CountdownFinished), 15.0f); + SendCustomEventDelayedSeconds(nameof(ThinkAboutItCountdownFinished), 15.0f); } - public void CountdownFinished() + public void ThinkAboutItCountdownFinished() { - EnableHostCardDisplay(QuestionType.FinalRound); + GetHostCardInterface(QuestionType.FinalRound); for (int i = 0; i < _PlayerPodiums.Length; i++) { @@ -521,25 +481,32 @@ public class GameManager : UdonSharpBehaviour SendCustomEventDelayedSeconds(nameof(FinalRoundRevealChoice2), 1.25f); SendCustomEventDelayedSeconds(nameof(FinalRoundRevealChoice3), 2.5f); } - public void FinalRoundRevealChoice1() + private void FinalRoundRevealChoice1() { - _FinalRoundInterface.ChoiceButtonImages[0].color = (_QuestionCorrectResponse == 1) ? Color.green : Color.red; + HostCardFinalRoundInterface Interface = + (HostCardFinalRoundInterface)GetHostCardInterface(QuestionType.FinalRound); + Interface.ChoiceButtonImages[0].color = (_QuestionCorrectResponse == 1) ? Color.green : Color.red; SendCustomNetworkEvent(NetworkEventTarget.All, nameof(PlaySFXAtPitch), SFXEventType.Ding, As5); EnableInteraction("Reveal Choice 2"); } - public void FinalRoundRevealChoice2() + private void FinalRoundRevealChoice2() { - _FinalRoundInterface.ChoiceButtonImages[1].color = (_QuestionCorrectResponse == 2) ? Color.green : Color.red; + HostCardFinalRoundInterface Interface = + (HostCardFinalRoundInterface)GetHostCardInterface(QuestionType.FinalRound); + Interface.ChoiceButtonImages[1].color = (_QuestionCorrectResponse == 2) ? Color.green : Color.red; SendCustomNetworkEvent(NetworkEventTarget.All, nameof(PlaySFXAtPitch), SFXEventType.Ding, C6); EnableInteraction("Reveal Choice 3"); } - public void FinalRoundRevealChoice3() + private void FinalRoundRevealChoice3() { - _FinalRoundInterface.ChoiceButtonImages[2].color = (_QuestionCorrectResponse == 3) ? Color.green : Color.red; + HostCardFinalRoundInterface Interface = + (HostCardFinalRoundInterface)GetHostCardInterface(QuestionType.FinalRound); + + Interface.ChoiceButtonImages[2].color = (_QuestionCorrectResponse == 3) ? Color.green : Color.red; DataList Choices = _CurrentQuestion["Choices"].DataList; EnableChoiceCards(); @@ -580,17 +547,20 @@ public class GameManager : UdonSharpBehaviour NetworkCalling.SendCustomNetworkEvent((IUdonEventReceiver)_PlayerPodiums[i], NetworkEventTarget.All, "LockInChoice"); } - _FinalRoundInterface.HeaderUI.text = "LOCKED IN"; - for (int i = 0; i < _FinalRoundInterface.CluesUI.Length; i++) + HostCardFinalRoundInterface Interface = + (HostCardFinalRoundInterface)GetHostCardInterface(QuestionType.FinalRound); + + Interface.HeaderUI.text = "LOCKED IN"; + for (int i = 0; i < Interface.CluesUI.Length; i++) { - _FinalRoundInterface.CluesUI[i].text = ""; + Interface.CluesUI[i].text = ""; } - for (int i = 0; i < _FinalRoundInterface.ChoiceUI.Length; i++) + for (int i = 0; i < Interface.ChoiceUI.Length; i++) { if (i != (_QuestionCorrectResponse - 1)) { - _FinalRoundInterface.ChoiceUI[i].text = ""; + Interface.ChoiceUI[i].text = ""; } } @@ -629,7 +599,10 @@ public class GameManager : UdonSharpBehaviour { int PlayerNumber = _FinalRoundPlayersSortedByScore[PlayerPlace - 1]; - _FinalRoundInterface.HeaderUI.text = "Player: " + _PlayerPodiums[PlayerNumber - 1].PlayerName; + HostCardBetweenRoundsInterface Interface = + (HostCardBetweenRoundsInterface)GetHostCardInterface(QuestionType.BetweenRounds); + + Interface.HeaderUI.text = "Player: " + _PlayerPodiums[PlayerNumber - 1].PlayerName; _PlayerPodiums[PlayerNumber - 1].EnableBuzzInEffect(true); EnableInteraction("Assign Points"); @@ -693,7 +666,11 @@ public class GameManager : UdonSharpBehaviour if (TiebreakerNeeded) { - EnableInteraction("Advance to tiebreaker"); + EnableInteraction("Advance To Tiebreaker"); + } + else + { + EnableInteraction("End Game"); } } @@ -704,11 +681,13 @@ public class GameManager : UdonSharpBehaviour DisableRiskCards(); DisableBuzzers(); + HostCardBetweenRoundsInterface Interface = + (HostCardBetweenRoundsInterface)GetHostCardInterface(QuestionType.BetweenRounds); + _QuestionIndex++; if (_QuestionIndex >= _QuestionsList.Count) { - _BetweenRoundsInterface.HeaderUI.text = "No More Questions"; - EnableHostCardDisplay(QuestionType.None); + Interface.HeaderUI.text = "No More Questions"; DisableInteraction(); return; } @@ -717,31 +696,28 @@ public class GameManager : UdonSharpBehaviour _QuestionStage = 0; // Again, why does this work, but not just casting to an enum? - _BetweenRoundsInterface.HeaderUI.text = "Upcoming Question: " + QuestionTypeToString((QuestionType)((int)_CurrentQuestion["Type"].Number)); - EnableHostCardDisplay(QuestionType.None); - - ResetMultipleChoiceInterface(); + Interface.HeaderUI.text = "Upcoming Question: " + QuestionTypeToString((QuestionType)((int)_CurrentQuestion["Type"].Number)); EnableInteraction("Show Next Question"); } - private void ResetMultipleChoiceInterface() + private void ResetMultipleChoiceInterface(HostCardMultipleChoiceInterface Interface) { - _MultipleChoiceInterface.HeaderUI.text = ""; + Interface.HeaderUI.text = ""; - for (int i = 0; i < _MultipleChoiceInterface.CluesUI.Length; i++) + for (int i = 0; i < Interface.CluesUI.Length; i++) { - _MultipleChoiceInterface.CluesUI[i].text = ""; + Interface.CluesUI[i].text = ""; } - for (int i = 0; i < _MultipleChoiceInterface.ChoiceButtonImages.Length; i++) + for (int i = 0; i < Interface.ChoiceButtonImages.Length; i++) { - _MultipleChoiceInterface.ChoiceButtonImages[i].color = Color.white; + Interface.ChoiceButtonImages[i].color = Color.white; } - for (int i = 0; i < _MultipleChoiceInterface.ChoiceUI.Length; i++) + for (int i = 0; i < Interface.ChoiceUI.Length; i++) { - _MultipleChoiceInterface.ChoiceUI[i].text = ""; + Interface.ChoiceUI[i].text = ""; } } @@ -780,7 +756,7 @@ public class GameManager : UdonSharpBehaviour } - public void EnableBuzzers() + private void EnableBuzzers() { for (int i = 0; i < _PlayerPodiums.Length; i++) { @@ -788,7 +764,7 @@ public class GameManager : UdonSharpBehaviour } } - public void DisableBuzzers() + private void DisableBuzzers() { for (int i = 0; i < _PlayerPodiums.Length; i++) { @@ -796,13 +772,13 @@ public class GameManager : UdonSharpBehaviour } } - public void EnableBuzzInPeriodForAllPlayers() + private void EnableBuzzInPeriodForAllPlayers() { _BuzzInAllowed = true; ResetBuzzers(); } - public void WaitForBuzzInsWithoutLastPlayer() { + private void WaitForBuzzInsWithoutLastPlayer() { _BuzzInAllowed = true; int PodiumIndex = _BuzzedInPlayer - 1; if (PodiumIndex >= 0 && PodiumIndex < _PlayerPodiums.Length) @@ -837,13 +813,13 @@ public class GameManager : UdonSharpBehaviour SendCustomNetworkEvent(NetworkEventTarget.All, nameof(PlaySFX), SFXEventType.Buzzer); } - public void EndBuzzInPeriod() + private void EndBuzzInPeriod() { _BuzzInAllowed = false; ResetBuzzers(); } - public void ResetBuzzers() + private void ResetBuzzers() { for (int i = 0; i < _PlayerPodiums.Length; i++) { _PlayerBuzzInAllowed[i] = true; @@ -909,12 +885,13 @@ public class GameManager : UdonSharpBehaviour switch(_QuestionStage) { case 1: BeginTheChase(); break; - case 2: NewTheChaseClue(1); break; - case 3: NewTheChaseClue(2); break; - case 4: NewTheChaseClue(3); break; - case 5: NewTheChaseClue(4); break; - case 6: NewTheChaseClue(5); break; - case 7: AdvanceToNextQuestion(); break; + case 2: PlayTheChaseMusic(); break; + case 3: NewTheChaseClue(1); break; + case 4: NewTheChaseClue(2); break; + case 5: NewTheChaseClue(3); break; + case 6: NewTheChaseClue(4); break; + case 7: NewTheChaseClue(5); break; + case 8: AdvanceToNextQuestion(); break; default: break; } } @@ -1002,10 +979,8 @@ public class GameManager : UdonSharpBehaviour } - public override void OnPickupUseDown() + protected override void _HostCardUseButtonDown_Internal() { - if (IsInteractionDisabled()) { return; } - if (!_GameHasBegun) { for (int i = 0; i < _PlayerPodiums.Length; i++) @@ -1017,68 +992,16 @@ public class GameManager : UdonSharpBehaviour } SendCustomNetworkEvent(NetworkEventTarget.All, nameof(PlaySFXAtPitch), SFXEventType.Ding, D6); - _BetweenRoundsInterface.HeaderUI.text = "Upcoming Question: " + QuestionTypeToString((QuestionType)((int)_CurrentQuestion["Type"].Number)); - EnableHostCardDisplay(QuestionType.None); + + HostCardBetweenRoundsInterface Interface = + (HostCardBetweenRoundsInterface)GetHostCardInterface(QuestionType.BetweenRounds); + Interface.HeaderUI.text = "Upcoming Question: " + QuestionTypeToString((QuestionType)((int)_CurrentQuestion["Type"].Number)); _GameHasBegun = true; return; } AdvanceQuestion(); - - base.OnPickupUseDown(); - } - - - private void EnableHostCardDisplay(QuestionType Type) - { - _BetweenRoundsInterface.gameObject.SetActive(false); - _MultipleChoiceInterface.gameObject.SetActive(false); - _LightningRoundInterface.gameObject.SetActive(false); - _TheChaseInterface.gameObject.SetActive(false); - _FinalRoundInterface.gameObject.SetActive(false); - - switch (Type) - { - case QuestionType.None: - _BetweenRoundsInterface.gameObject.SetActive(true); - break; - case QuestionType.MultipleChoice: - _MultipleChoiceInterface.gameObject.SetActive(true); - break; - case QuestionType.LightningRound: - _LightningRoundInterface.gameObject.SetActive(true); - break; - case QuestionType.DumpsterDive: break; - case QuestionType.TheChase: - _TheChaseInterface.gameObject.SetActive(true); - break; - case QuestionType.FinalRound: - _FinalRoundInterface.gameObject.SetActive(true); - break; - case QuestionType.Tiebreaker: - default: - break; - } - } - - private void EnableInteraction(string NextInteraction = "Advance") - { - DisableInteractive = false; - VRCPickup Pickup = GetComponent(); - if (Pickup != null) - { - Pickup.UseText = InteractionText; - } - } - private void DisableInteraction() - { - DisableInteractive = true; - } - - private bool IsInteractionDisabled() - { - return DisableInteractive; } @@ -1086,7 +1009,7 @@ public class GameManager : UdonSharpBehaviour { switch((int)Type) { - case (int)QuestionType.None: return "None"; + case (int)QuestionType.BetweenRounds: return "None"; case (int)QuestionType.MultipleChoice: return "Standard Round"; case (int)QuestionType.LightningRound: return "Lightning Round"; case (int)QuestionType.DumpsterDive: return "Dumpster Dive"; diff --git a/Assets/UdonSharp/GameManager.cs.meta b/Assets/UdonSharp/GameManagerRound1.cs.meta similarity index 100% rename from Assets/UdonSharp/GameManager.cs.meta rename to Assets/UdonSharp/GameManagerRound1.cs.meta diff --git a/Assets/UdonSharp/HostCardInterfaces/HostCardManager.asset b/Assets/UdonSharp/HostCardInterfaces/HostCardManager.asset index fb74f11..b4ccdc5 100644 --- a/Assets/UdonSharp/HostCardInterfaces/HostCardManager.asset +++ b/Assets/UdonSharp/HostCardInterfaces/HostCardManager.asset @@ -19,7 +19,7 @@ MonoBehaviour: sourceCsScript: {fileID: 11500000, guid: 8610437a52d6c2e45adc3167b407ecb8, type: 3} scriptVersion: 2 compiledVersion: 2 - behaviourSyncMode: 0 + behaviourSyncMode: 4 hasInteractEvent: 0 scriptID: 7539454640582602248 serializationData: @@ -42,6 +42,114 @@ MonoBehaviour: - Name: Entry: 8 Data: + - Name: + Entry: 12 + Data: 10 + - Name: + Entry: 7 + Data: + - Name: $k + Entry: 1 + Data: _GameManager + - Name: $v + Entry: 7 + Data: 2|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: _GameManager + - Name: k__BackingField + Entry: 7 + Data: 3|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: GameManagerBase, Assembly-CSharp + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 7 + Data: 4|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: VRC.Udon.UdonBehaviour, VRC.Udon + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 7 + Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib + - Name: + Entry: 6 + Data: + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 5 + Data: true + - Name: _fieldAttributes + Entry: 7 + Data: 5|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + - Name: + Entry: 12 + Data: 1 + - Name: + Entry: 7 + Data: 6|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: _FinalRoundPlayersSortedByScore + - Name: $v + Entry: 7 + Data: 7|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: _FinalRoundPlayersSortedByScore + - Name: k__BackingField + Entry: 7 + Data: 8|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: System.Int32[], mscorlib + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 9 + Data: 8 + - Name: k__BackingField + Entry: 7 + Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib + - Name: + Entry: 6 + Data: + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 5 + Data: false + - Name: _fieldAttributes + Entry: 7 + Data: 9|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -51,3 +159,492 @@ MonoBehaviour: - Name: Entry: 8 Data: + - Name: + Entry: 8 + Data: + - Name: + Entry: 8 + Data: + - Name: + Entry: 7 + Data: + - Name: $k + Entry: 1 + Data: _IsBeingHeld + - Name: $v + Entry: 7 + Data: 10|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: _IsBeingHeld + - Name: k__BackingField + Entry: 7 + Data: 11|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: System.Boolean, mscorlib + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 9 + Data: 11 + - Name: k__BackingField + Entry: 7 + Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib + - Name: + Entry: 6 + Data: + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 5 + Data: false + - Name: _fieldAttributes + Entry: 7 + Data: 12|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: + Entry: 7 + Data: + - Name: $k + Entry: 1 + Data: _StoredJumpImpulse + - Name: $v + Entry: 7 + Data: 13|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: _StoredJumpImpulse + - Name: k__BackingField + Entry: 7 + Data: 14|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: System.Single, mscorlib + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 9 + Data: 14 + - Name: k__BackingField + Entry: 7 + Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib + - Name: + Entry: 6 + Data: + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 5 + Data: false + - Name: _fieldAttributes + Entry: 7 + Data: 15|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: + Entry: 7 + Data: + - Name: $k + Entry: 1 + Data: _BetweenRoundsInterface + - Name: $v + Entry: 7 + Data: 16|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: _BetweenRoundsInterface + - Name: k__BackingField + Entry: 7 + Data: 17|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: HostCardBetweenRoundsInterface, Assembly-CSharp + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 9 + Data: 4 + - Name: k__BackingField + Entry: 7 + Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib + - Name: + Entry: 6 + Data: + - Name: + Entry: 8 + Data: + - Name: 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.HeaderAttribute, UnityEngine.CoreModule + - Name: header + Entry: 1 + Data: UI + - Name: + Entry: 8 + Data: + - Name: + Entry: 7 + Data: 20|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: _MultipleChoiceInterface + - Name: $v + Entry: 7 + Data: 21|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: _MultipleChoiceInterface + - Name: k__BackingField + Entry: 7 + Data: 22|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: HostCardMultipleChoiceInterface, Assembly-CSharp + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 9 + Data: 4 + - Name: k__BackingField + Entry: 7 + Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib + - Name: + Entry: 6 + Data: + - Name: + Entry: 8 + Data: + - Name: 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: 1 + - Name: + Entry: 7 + Data: 24|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: _LightningRoundInterface + - Name: $v + Entry: 7 + Data: 25|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: _LightningRoundInterface + - Name: k__BackingField + Entry: 7 + Data: 26|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: HostCardLightningRoundInterface, Assembly-CSharp + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 9 + Data: 4 + - Name: k__BackingField + Entry: 7 + Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib + - Name: + Entry: 6 + Data: + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 5 + Data: true + - Name: _fieldAttributes + Entry: 7 + Data: 27|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + - Name: + Entry: 12 + Data: 1 + - Name: + Entry: 7 + Data: 28|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: _TheChaseInterface + - Name: $v + Entry: 7 + Data: 29|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: _TheChaseInterface + - Name: k__BackingField + Entry: 7 + Data: 30|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: HostCardTheChaseInterface, Assembly-CSharp + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 9 + Data: 4 + - Name: k__BackingField + Entry: 7 + Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib + - Name: + Entry: 6 + Data: + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 5 + Data: true + - Name: _fieldAttributes + Entry: 7 + Data: 31|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + - Name: + Entry: 12 + Data: 1 + - Name: + Entry: 7 + Data: 32|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: _FinalRoundInterface + - Name: $v + Entry: 7 + Data: 33|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: _FinalRoundInterface + - Name: k__BackingField + Entry: 7 + Data: 34|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: HostCardFinalRoundInterface, Assembly-CSharp + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 9 + Data: 4 + - Name: k__BackingField + Entry: 7 + Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib + - Name: + Entry: 6 + Data: + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 5 + Data: true + - Name: _fieldAttributes + Entry: 7 + Data: 35|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + - Name: + Entry: 12 + Data: 1 + - Name: + Entry: 7 + Data: 36|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: _AdminPanelInterface + - Name: $v + Entry: 7 + Data: 37|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: _AdminPanelInterface + - Name: k__BackingField + Entry: 7 + Data: 38|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: HostPanelInterface, Assembly-CSharp + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 9 + Data: 4 + - Name: k__BackingField + Entry: 7 + Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib + - Name: + Entry: 6 + Data: + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 5 + Data: true + - Name: _fieldAttributes + Entry: 7 + Data: 39|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + - Name: + Entry: 12 + Data: 1 + - Name: + Entry: 7 + Data: 40|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: 13 + Data: + - Name: + Entry: 8 + Data: diff --git a/Assets/UdonSharp/HostCardInterfaces/HostCardManager.cs b/Assets/UdonSharp/HostCardInterfaces/HostCardManager.cs index 828b840..955a80f 100644 --- a/Assets/UdonSharp/HostCardInterfaces/HostCardManager.cs +++ b/Assets/UdonSharp/HostCardInterfaces/HostCardManager.cs @@ -1,13 +1,126 @@  using UdonSharp; using UnityEngine; +using VRC.SDK3.Data; +using VRC.SDK3.UdonNetworkCalling; +using VRC.Udon.Common.Interfaces; using VRC.SDKBase; -using VRC.Udon; +using VRC.SDK3.StringLoading; +using VRC.SDK3.Components; +using VRC.Udon.Common; + +[UdonBehaviourSyncMode(BehaviourSyncMode.Manual)] public class HostCardManager : UdonSharpBehaviour { - void Start() - { - - } + [SerializeField] private GameManagerBase _GameManager; + + private int[] _FinalRoundPlayersSortedByScore; + + private bool _IsBeingHeld = false; + private float _StoredJumpImpulse = 0.0f; + + [Header("UI")] + [SerializeField] private HostCardBetweenRoundsInterface _BetweenRoundsInterface; + [SerializeField] private HostCardMultipleChoiceInterface _MultipleChoiceInterface; + [SerializeField] private HostCardLightningRoundInterface _LightningRoundInterface; + [SerializeField] private HostCardTheChaseInterface _TheChaseInterface; + [SerializeField] private HostCardFinalRoundInterface _FinalRoundInterface; + + [SerializeField] private HostPanelInterface _AdminPanelInterface; + + public override void OnPickup() + { + Networking.SetOwner(Networking.LocalPlayer, gameObject); + _StoredJumpImpulse = Networking.LocalPlayer.GetJumpImpulse(); + Networking.LocalPlayer.SetJumpImpulse(0.0f); + _IsBeingHeld = true; + + base.OnPickup(); + } + + public override void OnDrop() + { + Networking.SetOwner(Networking.InstanceOwner, gameObject); + Networking.LocalPlayer.SetJumpImpulse(_StoredJumpImpulse); + _StoredJumpImpulse = 0.0f; + _IsBeingHeld = false; + + base.OnDrop(); + } + + public override bool OnOwnershipRequest(VRCPlayerApi RequestingPlayer, VRCPlayerApi RequestedOwner) + { + Debug.LogError(RequestingPlayer.displayName + " is requesting that " + RequestedOwner.displayName + " become the new owner of the host card. No fucking way."); + + return false; + } + + public override void OnOwnershipTransferred(VRCPlayerApi Player) + { + Debug.LogError("New owner is " + Player); + } + + public override void InputJump(bool Value, UdonInputEventArgs Args) + { + if (Value && _IsBeingHeld) + { + _AdminPanelInterface.gameObject.SetActive(!_AdminPanelInterface.gameObject.activeSelf); + } + + base.InputJump(Value, Args); + } + + + public override void OnPickupUseDown() + { + _GameManager.HostCardUseButtonDown(); + base.OnPickupUseDown(); + } + + + public void SetNextInteractionText(string NextInteractionText) + { + DisableInteractive = false; + VRCPickup Pickup = GetComponent(); + if (Pickup != null) + { + Pickup.UseText = NextInteractionText; + } + } + + + public HostCardInterfaceBase EnableHostCardDisplay(QuestionType Type) + { + _BetweenRoundsInterface.gameObject.SetActive(false); + _MultipleChoiceInterface.gameObject.SetActive(false); + _LightningRoundInterface.gameObject.SetActive(false); + _TheChaseInterface.gameObject.SetActive(false); + _FinalRoundInterface.gameObject.SetActive(false); + + switch (Type) + { + case QuestionType.BetweenRounds: + _BetweenRoundsInterface.gameObject.SetActive(true); + return _BetweenRoundsInterface; + case QuestionType.MultipleChoice: + _MultipleChoiceInterface.gameObject.SetActive(true); + return _MultipleChoiceInterface; + case QuestionType.LightningRound: + _LightningRoundInterface.gameObject.SetActive(true); + return _LightningRoundInterface; + case QuestionType.DumpsterDive: break; + case QuestionType.TheChase: + _TheChaseInterface.gameObject.SetActive(true); + return _TheChaseInterface; + case QuestionType.FinalRound: + _FinalRoundInterface.gameObject.SetActive(true); + return _FinalRoundInterface; + case QuestionType.Tiebreaker: + default: + return _BetweenRoundsInterface; + } + + return _BetweenRoundsInterface; + } } diff --git a/Assets/UdonSharp/Podium/PlayerPodium.asset b/Assets/UdonSharp/Podium/PlayerPodium.asset index e6885fe..fd0af24 100644 --- a/Assets/UdonSharp/Podium/PlayerPodium.asset +++ b/Assets/UdonSharp/Podium/PlayerPodium.asset @@ -116,7 +116,7 @@ MonoBehaviour: Data: 6|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: GameManager, Assembly-CSharp + Data: GameManagerRound1, Assembly-CSharp - Name: Entry: 8 Data: @@ -146,7 +146,13 @@ MonoBehaviour: Data: 8|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 - Data: 0 + Data: 1 + - Name: + Entry: 7 + Data: 9|UnityEngine.SerializeField, UnityEngine.CoreModule + - Name: + Entry: 8 + Data: - Name: Entry: 13 Data: @@ -167,13 +173,13 @@ MonoBehaviour: Data: _PlayerName - Name: $v Entry: 7 - Data: 9|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 10|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _PlayerName - Name: k__BackingField Entry: 7 - Data: 10|System.RuntimeType, mscorlib + Data: 11|System.RuntimeType, mscorlib - Name: Entry: 1 Data: System.String, mscorlib @@ -182,7 +188,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 10 + Data: 11 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -197,19 +203,19 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 11|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 12|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 2 - Name: Entry: 7 - Data: 12|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime + Data: 13|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: - Name: Entry: 7 - Data: 13|UdonSharp.FieldChangeCallbackAttribute, UdonSharp.Runtime + Data: 14|UdonSharp.FieldChangeCallbackAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: @@ -233,7 +239,7 @@ MonoBehaviour: Data: _PlayerID - Name: $v Entry: 7 - Data: 14|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 15|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _PlayerID @@ -257,13 +263,13 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 15|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 16|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 16|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime + Data: 17|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: @@ -287,7 +293,7 @@ MonoBehaviour: Data: _PlayerScore - Name: $v Entry: 7 - Data: 17|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 18|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _PlayerScore @@ -311,19 +317,19 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 18|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 19|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 2 - Name: Entry: 7 - Data: 19|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime + Data: 20|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: - Name: Entry: 7 - Data: 20|UdonSharp.FieldChangeCallbackAttribute, UdonSharp.Runtime + Data: 21|UdonSharp.FieldChangeCallbackAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: @@ -347,13 +353,13 @@ MonoBehaviour: Data: _ShowScoreCard - Name: $v Entry: 7 - Data: 21|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 22|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _ShowScoreCard - Name: k__BackingField Entry: 7 - Data: 22|System.RuntimeType, mscorlib + Data: 23|System.RuntimeType, mscorlib - Name: Entry: 1 Data: System.Boolean, mscorlib @@ -362,7 +368,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 22 + Data: 23 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -377,19 +383,19 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 23|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 24|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 2 - Name: Entry: 7 - Data: 24|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime + Data: 25|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: - Name: Entry: 7 - Data: 25|UdonSharp.FieldChangeCallbackAttribute, UdonSharp.Runtime + Data: 26|UdonSharp.FieldChangeCallbackAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: @@ -413,13 +419,13 @@ MonoBehaviour: Data: _ChoiceCards - Name: $v Entry: 7 - Data: 26|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 27|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _ChoiceCards - Name: k__BackingField Entry: 7 - Data: 27|System.RuntimeType, mscorlib + Data: 28|System.RuntimeType, mscorlib - Name: Entry: 1 Data: ChoiceCardGroup, Assembly-CSharp @@ -443,13 +449,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 28|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 29|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 29|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 30|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -473,13 +479,13 @@ MonoBehaviour: Data: _RiskCards - Name: $v Entry: 7 - Data: 30|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 31|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _RiskCards - Name: k__BackingField Entry: 7 - Data: 31|System.RuntimeType, mscorlib + Data: 32|System.RuntimeType, mscorlib - Name: Entry: 1 Data: RiskCardGroup, Assembly-CSharp @@ -503,13 +509,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 32|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 33|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 33|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 34|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -533,13 +539,13 @@ MonoBehaviour: Data: _Buzzer - Name: $v Entry: 7 - Data: 34|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 35|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _Buzzer - Name: k__BackingField Entry: 7 - Data: 35|System.RuntimeType, mscorlib + Data: 36|System.RuntimeType, mscorlib - Name: Entry: 1 Data: Buzzer, Assembly-CSharp @@ -563,13 +569,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 36|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 37|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 37|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 38|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -593,13 +599,13 @@ MonoBehaviour: Data: _BuzzedInEffect - Name: $v Entry: 7 - Data: 38|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 39|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _BuzzedInEffect - Name: k__BackingField Entry: 7 - Data: 39|System.RuntimeType, mscorlib + Data: 40|System.RuntimeType, mscorlib - Name: Entry: 1 Data: UnityEngine.GameObject, UnityEngine.CoreModule @@ -608,7 +614,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 39 + Data: 40 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -623,13 +629,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 40|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 41|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 2 - Name: Entry: 7 - Data: 41|UnityEngine.HeaderAttribute, UnityEngine.CoreModule + Data: 42|UnityEngine.HeaderAttribute, UnityEngine.CoreModule - Name: header Entry: 1 Data: Effects @@ -638,7 +644,7 @@ MonoBehaviour: Data: - Name: Entry: 7 - Data: 42|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 43|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -662,16 +668,16 @@ MonoBehaviour: Data: _ScorecardObject - Name: $v Entry: 7 - Data: 43|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 44|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _ScorecardObject - Name: k__BackingField Entry: 9 - Data: 39 + Data: 40 - Name: k__BackingField Entry: 9 - Data: 39 + Data: 40 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -686,13 +692,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 44|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 45|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 45|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 46|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -716,13 +722,13 @@ MonoBehaviour: Data: _NameplateUI - Name: $v Entry: 7 - Data: 46|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 47|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _NameplateUI - Name: k__BackingField Entry: 7 - Data: 47|System.RuntimeType, mscorlib + Data: 48|System.RuntimeType, mscorlib - Name: Entry: 1 Data: TMPro.TextMeshProUGUI, Unity.TextMeshPro @@ -731,7 +737,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 47 + Data: 48 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -746,13 +752,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 48|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 49|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 49|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 50|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -776,16 +782,16 @@ MonoBehaviour: Data: _ScorecardUI - Name: $v Entry: 7 - Data: 50|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 51|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: _ScorecardUI - Name: k__BackingField Entry: 9 - Data: 47 + Data: 48 - Name: k__BackingField Entry: 9 - Data: 47 + Data: 48 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -800,13 +806,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 51|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 52|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 52|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 53|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: diff --git a/Assets/UdonSharp/Podium/PlayerPodium.cs b/Assets/UdonSharp/Podium/PlayerPodium.cs index 661b8e8..339a433 100644 --- a/Assets/UdonSharp/Podium/PlayerPodium.cs +++ b/Assets/UdonSharp/Podium/PlayerPodium.cs @@ -7,12 +7,13 @@ using VRC.SDK3.UdonNetworkCalling; using VRC.Udon.Common.Interfaces; using VRC.Udon.Common; + [UdonBehaviourSyncMode(BehaviourSyncMode.Manual)] public class PlayerPodium : UdonSharpBehaviour { public int PlayerNumber = 0; - public GameManager GameManager; + [SerializeField] public GameManagerRound1 GameManager; [UdonSynced, FieldChangeCallback(nameof(PlayerName))] private string _PlayerName = "Player"; [UdonSynced] private int _PlayerID = -1; diff --git a/Thry/presets_known_materials.txt b/Thry/presets_known_materials.txt index b868eaf..29dc4bb 100644 --- a/Thry/presets_known_materials.txt +++ b/Thry/presets_known_materials.txt @@ -366,3 +366,21 @@ a6c1d9564b56ecd47b82dfa7a8f11cbe d419d3432b8a0a24b986e614c57c2039 21221da753878694b9b9518a540dda85 70108d78e82c2ec488d6b504865508e0 +46ae6414b09aebf42ab122c226c41825 +6e48f857c8e5f094cae38c993a2cce59 +439e2414b74264d4bbf5d838b652bd1e +38a0f6eebb239744c952b410c03b89af +6bcdbad1f1fd6fb4599c7ddf75df7ee3 +af82c8247b5c6ca46b69dfefc7a9e364 +02417c1fddc513b45a833885b863472f +7c646d1ef17cae040979e4344bfd851a +1f76a5e71d6aa6545b628ceb66d907c0 +812742149eb095f49810ddee4c46e857 +67f6a6e90c5f17340a1351b71cfd77f3 +1ecb914f77a803347ba8b570bef9f60f +7670e691e97b25b4282bf9c194b21b38 +bee376e351ed71340a174c583a7aa1dc +3032d9b195bb67748830b89e3085bfa1 +fe4fba6f914dca943a998dec2467eb1f +3dbd2c3b208506341843174ceac9003c +ba6285bf43e6df547bfa879728df0a5e