diff --git a/Assets/Scenes/PacMan.unity b/Assets/Scenes/PacMan.unity index 7c34f61..748c464 100644 --- a/Assets/Scenes/PacMan.unity +++ b/Assets/Scenes/PacMan.unity @@ -10822,6 +10822,164 @@ Transform: m_CorrespondingSourceObject: {fileID: 1315692994360949719, guid: 00a825a5aeafee94789192f61cbb3a5a, type: 3} m_PrefabInstance: {fileID: 742161192} m_PrefabAsset: {fileID: 0} +--- !u!1 &357748365 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 357748370} + - component: {fileID: 357748369} + - component: {fileID: 357748368} + - component: {fileID: 357748367} + - component: {fileID: 357748371} + - component: {fileID: 357748366} + m_Layer: 0 + m_Name: BallUnityDt + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &357748366 +MonoBehaviour: + m_ObjectHideFlags: 2 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 357748365} + 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: 2 + serializedProgramAsset: {fileID: 11400000, guid: 8968388b0e4fe434fb8da62328c108a0, type: 2} + programSource: {fileID: 11400000, guid: 1845851c6c8f8254baa6b40646c66d59, type: 2} + serializedPublicVariablesBytesString: Ai8AAAAAATIAAABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlAFQAYQBiAGwAZQAsACAAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4AAAAAAAYBAAAAAAAAACcBBAAAAHQAeQBwAGUAAWgAAABTAHkAcwB0AGUAbQAuAEMAbwBsAGwAZQBjAHQAaQBvAG4AcwAuAEcAZQBuAGUAcgBpAGMALgBMAGkAcwB0AGAAMQBbAFsAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4ALgBJAG4AdABlAHIAZgBhAGMAZQBzAC4ASQBVAGQAbwBuAFYAYQByAGkAYQBiAGwAZQAsACAAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4AXQBdACwAIABtAHMAYwBvAHIAbABpAGIAAQEJAAAAVgBhAHIAaQBhAGIAbABlAHMALwEAAAABaAAAAFMAeQBzAHQAZQBtAC4AQwBvAGwAbABlAGMAdABpAG8AbgBzAC4ARwBlAG4AZQByAGkAYwAuAEwAaQBzAHQAYAAxAFsAWwBWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAEkAbgB0AGUAcgBmAGEAYwBlAHMALgBJAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlACwAIABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgBdAF0ALAAgAG0AcwBjAG8AcgBsAGkAYgABAAAABgEAAAAAAAAAAi8CAAAAAUkAAABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlAGAAMQBbAFsAUwB5AHMAdABlAG0ALgBJAG4AdAAzADIALAAgAG0AcwBjAG8AcgBsAGkAYgBdAF0ALAAgAFYAUgBDAC4AVQBkAG8AbgAuAEMAbwBtAG0AbwBuAAIAAAAGAgAAAAAAAAAnAQQAAAB0AHkAcABlAAEXAAAAUwB5AHMAdABlAG0ALgBTAHQAcgBpAG4AZwAsACAAbQBzAGMAbwByAGwAaQBiACcBCgAAAFMAeQBtAGIAbwBsAE4AYQBtAGUAAR8AAABfAF8AXwBVAGQAbwBuAFMAaABhAHIAcABCAGUAaABhAHYAaQBvAHUAcgBWAGUAcgBzAGkAbwBuAF8AXwBfACcBBAAAAHQAeQBwAGUAARYAAABTAHkAcwB0AGUAbQAuAEkAbgB0ADMAMgAsACAAbQBzAGMAbwByAGwAaQBiABcBBQAAAFYAYQBsAHUAZQACAAAABwUHBQcF + publicVariablesUnityEngineObjects: [] + publicVariablesSerializationDataFormat: 0 +--- !u!135 &357748367 +SphereCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 357748365} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Radius: 0.5 + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &357748368 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 357748365} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: d77dfda7d2b90ea4983b8659e2c6c0e9, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &357748369 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 357748365} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &357748370 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 357748365} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0.426, y: 0, z: -0.468} + m_LocalScale: {x: 0.05, y: 0.05, z: 0.05} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1003947896} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &357748371 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 357748365} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0980d82a15346eb45b49fd33db0ffee9, type: 3} + m_Name: + m_EditorClassIdentifier: + serializationData: + SerializedFormat: 2 + SerializedBytes: + ReferencedUnityObjects: [] + SerializedBytesString: + Prefab: {fileID: 0} + PrefabModificationsReferencedUnityObjects: [] + PrefabModifications: [] + SerializationNodes: [] + _udonSharpBackingUdonBehaviour: {fileID: 357748366} + networkManager: {fileID: 1200574210} + start: {fileID: 992156376} + end: {fileID: 312606797} + mode: 2 --- !u!1001 &358677456 PrefabInstance: m_ObjectHideFlags: 0 @@ -15974,6 +16132,164 @@ Transform: m_CorrespondingSourceObject: {fileID: 1315692994360949719, guid: 00a825a5aeafee94789192f61cbb3a5a, type: 3} m_PrefabInstance: {fileID: 1229682176} m_PrefabAsset: {fileID: 0} +--- !u!1 &527776389 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 527776395} + - component: {fileID: 527776394} + - component: {fileID: 527776393} + - component: {fileID: 527776392} + - component: {fileID: 527776391} + - component: {fileID: 527776390} + m_Layer: 0 + m_Name: BallDt + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &527776390 +MonoBehaviour: + m_ObjectHideFlags: 2 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 527776389} + 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: 2 + serializedProgramAsset: {fileID: 11400000, guid: 8968388b0e4fe434fb8da62328c108a0, type: 2} + programSource: {fileID: 11400000, guid: 1845851c6c8f8254baa6b40646c66d59, type: 2} + serializedPublicVariablesBytesString: Ai8AAAAAATIAAABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlAFQAYQBiAGwAZQAsACAAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4AAAAAAAYBAAAAAAAAACcBBAAAAHQAeQBwAGUAAWgAAABTAHkAcwB0AGUAbQAuAEMAbwBsAGwAZQBjAHQAaQBvAG4AcwAuAEcAZQBuAGUAcgBpAGMALgBMAGkAcwB0AGAAMQBbAFsAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4ALgBJAG4AdABlAHIAZgBhAGMAZQBzAC4ASQBVAGQAbwBuAFYAYQByAGkAYQBiAGwAZQAsACAAVgBSAEMALgBVAGQAbwBuAC4AQwBvAG0AbQBvAG4AXQBdACwAIABtAHMAYwBvAHIAbABpAGIAAQEJAAAAVgBhAHIAaQBhAGIAbABlAHMALwEAAAABaAAAAFMAeQBzAHQAZQBtAC4AQwBvAGwAbABlAGMAdABpAG8AbgBzAC4ARwBlAG4AZQByAGkAYwAuAEwAaQBzAHQAYAAxAFsAWwBWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAEkAbgB0AGUAcgBmAGEAYwBlAHMALgBJAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlACwAIABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgBdAF0ALAAgAG0AcwBjAG8AcgBsAGkAYgABAAAABgEAAAAAAAAAAi8CAAAAAUkAAABWAFIAQwAuAFUAZABvAG4ALgBDAG8AbQBtAG8AbgAuAFUAZABvAG4AVgBhAHIAaQBhAGIAbABlAGAAMQBbAFsAUwB5AHMAdABlAG0ALgBJAG4AdAAzADIALAAgAG0AcwBjAG8AcgBsAGkAYgBdAF0ALAAgAFYAUgBDAC4AVQBkAG8AbgAuAEMAbwBtAG0AbwBuAAIAAAAGAgAAAAAAAAAnAQQAAAB0AHkAcABlAAEXAAAAUwB5AHMAdABlAG0ALgBTAHQAcgBpAG4AZwAsACAAbQBzAGMAbwByAGwAaQBiACcBCgAAAFMAeQBtAGIAbwBsAE4AYQBtAGUAAR8AAABfAF8AXwBVAGQAbwBuAFMAaABhAHIAcABCAGUAaABhAHYAaQBvAHUAcgBWAGUAcgBzAGkAbwBuAF8AXwBfACcBBAAAAHQAeQBwAGUAARYAAABTAHkAcwB0AGUAbQAuAEkAbgB0ADMAMgAsACAAbQBzAGMAbwByAGwAaQBiABcBBQAAAFYAYQBsAHUAZQACAAAABwUHBQcF + publicVariablesUnityEngineObjects: [] + publicVariablesSerializationDataFormat: 0 +--- !u!114 &527776391 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 527776389} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 0980d82a15346eb45b49fd33db0ffee9, type: 3} + m_Name: + m_EditorClassIdentifier: + serializationData: + SerializedFormat: 2 + SerializedBytes: + ReferencedUnityObjects: [] + SerializedBytesString: + Prefab: {fileID: 0} + PrefabModificationsReferencedUnityObjects: [] + PrefabModifications: [] + SerializationNodes: [] + _udonSharpBackingUdonBehaviour: {fileID: 527776390} + networkManager: {fileID: 1200574210} + start: {fileID: 992156376} + end: {fileID: 312606797} + mode: 1 +--- !u!135 &527776392 +SphereCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 527776389} + m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 + m_IsTrigger: 0 + m_ProvidesContacts: 0 + m_Enabled: 1 + serializedVersion: 3 + m_Radius: 0.5 + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &527776393 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 527776389} + m_Enabled: 1 + m_CastShadows: 1 + m_ReceiveShadows: 1 + m_DynamicOccludee: 1 + m_StaticShadowCaster: 0 + m_MotionVectors: 1 + m_LightProbeUsage: 1 + m_ReflectionProbeUsage: 1 + m_RayTracingMode: 2 + m_RayTraceProcedural: 0 + m_RenderingLayerMask: 1 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 27754be47f0109d4ebd0238a3abcab08, type: 2} + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 + m_StaticBatchRoot: {fileID: 0} + m_ProbeAnchor: {fileID: 0} + m_LightProbeVolumeOverride: {fileID: 0} + m_ScaleInLightmap: 1 + m_ReceiveGI: 1 + m_PreserveUVs: 0 + m_IgnoreNormalsForChartDetection: 0 + m_ImportantGI: 0 + m_StitchLightmapSeams: 1 + m_SelectedEditorRenderState: 3 + m_MinimumChartSize: 4 + m_AutoUVMaxDistance: 0.5 + m_AutoUVMaxAngle: 89 + m_LightmapParameters: {fileID: 0} + m_SortingLayerID: 0 + m_SortingLayer: 0 + m_SortingOrder: 0 + m_AdditionalVertexStreams: {fileID: 0} +--- !u!33 &527776394 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 527776389} + m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} +--- !u!4 &527776395 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 527776389} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: -0.426, y: 0, z: -0.468} + m_LocalScale: {x: 0.05, y: 0.05, z: 0.05} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 1003947896} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &528223655 stripped GameObject: m_CorrespondingSourceObject: {fileID: 6416098964784429726, guid: f10209aafcd484f438cbd0888287e98a, type: 3} @@ -29662,6 +29978,8 @@ Transform: - {fileID: 992156376} - {fileID: 312606797} - {fileID: 1156754001} + - {fileID: 527776395} + - {fileID: 357748370} m_Father: {fileID: 696593979} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &1006088012 @@ -33439,6 +33757,30 @@ MonoBehaviour: m_StringArgument: SyncButtonPressed m_BoolArgument: 0 m_CallState: 2 + - m_Target: {fileID: 527776390} + m_TargetAssemblyTypeName: + m_MethodName: SendCustomEvent + m_Mode: 5 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: SyncButtonPressed + m_BoolArgument: 0 + m_CallState: 2 + - m_Target: {fileID: 357748366} + m_TargetAssemblyTypeName: + m_MethodName: SendCustomEvent + m_Mode: 5 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: SyncButtonPressed + m_BoolArgument: 0 + m_CallState: 2 --- !u!114 &1106884489 MonoBehaviour: m_ObjectHideFlags: 0 @@ -35181,7 +35523,7 @@ MeshRenderer: m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 2100000, guid: 0dd5569666c2c954da72d06b96c639f0, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 @@ -35261,6 +35603,7 @@ MonoBehaviour: networkManager: {fileID: 1200574210} start: {fileID: 992156376} end: {fileID: 312606797} + mode: 0 --- !u!1 &1156762256 GameObject: m_ObjectHideFlags: 0 @@ -36706,6 +37049,8 @@ MonoBehaviour: _udonSharpBackingUdonBehaviour: {fileID: 1200574209} syncedObjects: - {fileID: 1156754006} + - {fileID: 527776391} + - {fileID: 357748371} DebugImageToIndicateOwner: {fileID: 1745114900} --- !u!1 &1203813879 GameObject: @@ -52447,6 +52792,30 @@ MonoBehaviour: m_StringArgument: UpButtonPressed m_BoolArgument: 0 m_CallState: 2 + - m_Target: {fileID: 527776390} + m_TargetAssemblyTypeName: + m_MethodName: SendCustomEvent + m_Mode: 5 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: UpButtonPressed + m_BoolArgument: 0 + m_CallState: 2 + - m_Target: {fileID: 357748366} + m_TargetAssemblyTypeName: + m_MethodName: SendCustomEvent + m_Mode: 5 + m_Arguments: + m_ObjectArgument: {fileID: 0} + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine + m_IntArgument: 0 + m_FloatArgument: 0 + m_StringArgument: UpButtonPressed + m_BoolArgument: 0 + m_CallState: 2 --- !u!114 &1745114898 MonoBehaviour: m_ObjectHideFlags: 0 @@ -52829,6 +53198,9 @@ MonoBehaviour: DynamicPrefabs: [] DynamicMaterials: - {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 2100000, guid: d77dfda7d2b90ea4983b8659e2c6c0e9, type: 2} + - {fileID: 2100000, guid: 27754be47f0109d4ebd0238a3abcab08, type: 2} + - {fileID: 2100000, guid: 0dd5569666c2c954da72d06b96c639f0, type: 2} - {fileID: 2100000, guid: db2b6d76bdd134244912a5c1c9971804, type: 2} LightMapsNear: [] LightMapsFar: [] @@ -54044,6 +54416,14 @@ MonoBehaviour: ID: 305 SerializedTypeNames: - VRC.Udon.UdonBehaviour + - gameObject: {fileID: 527776389} + ID: 306 + SerializedTypeNames: + - VRC.Udon.UdonBehaviour + - gameObject: {fileID: 357748365} + ID: 307 + SerializedTypeNames: + - VRC.Udon.UdonBehaviour portraitCameraPositionOffset: {x: 0, y: 0, z: 0} portraitCameraRotationOffset: {x: 0, y: 1, z: 0, w: -0.00000004371139} PlayerPersistence: [] diff --git a/Assets/Scripts/GameManager.asset b/Assets/Scripts/GameManager.asset index cd012e7..3a626a4 100644 --- a/Assets/Scripts/GameManager.asset +++ b/Assets/Scripts/GameManager.asset @@ -43,25 +43,25 @@ MonoBehaviour: Data: - Name: Entry: 12 - Data: 39 + Data: 37 - Name: Entry: 7 Data: - Name: $k Entry: 1 - Data: k__BackingField + Data: currentlyInTimeSequence - Name: $v Entry: 7 Data: 2|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: k__BackingField + Data: currentlyInTimeSequence - Name: k__BackingField Entry: 7 Data: 3|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: System.Int64, mscorlib + Data: System.Boolean, mscorlib - Name: Entry: 8 Data: @@ -103,25 +103,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data:
k__BackingField + Data: waitingForTimeSequenceFinalize - Name: $v Entry: 7 Data: 5|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data:
k__BackingField + Data: waitingForTimeSequenceFinalize - Name: k__BackingField - Entry: 7 - Data: 6|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: System.Single, mscorlib - - Name: - Entry: 8 - Data: + Entry: 9 + Data: 3 - Name: k__BackingField Entry: 9 - Data: 6 + Data: 3 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -136,7 +130,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 7|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 6|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -157,25 +151,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: currentlyInTimeSequence + Data: jumpingToTimeSequence - Name: $v Entry: 7 - Data: 8|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 7|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: currentlyInTimeSequence + Data: jumpingToTimeSequence - Name: k__BackingField - Entry: 7 - Data: 9|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: System.Boolean, mscorlib - - Name: - Entry: 8 - Data: + Entry: 9 + Data: 3 - Name: k__BackingField Entry: 9 - Data: 9 + Data: 3 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -190,7 +178,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 10|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 8|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -211,19 +199,31 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: waitingForTimeSequenceFinalize + Data: currentTimeSequence - Name: $v Entry: 7 - Data: 11|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 9|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: waitingForTimeSequenceFinalize + Data: currentTimeSequence - Name: k__BackingField - Entry: 9 - Data: 9 + Entry: 7 + Data: 10|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: Marro.PacManUdon.PacManTimeSequence, Assembly-CSharp + - Name: + Entry: 8 + Data: - Name: k__BackingField - Entry: 9 - Data: 9 + Entry: 7 + Data: 11|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: System.Int32, mscorlib + - Name: + Entry: 8 + Data: - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -259,25 +259,31 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: jumpingToTimeSequence + Data: timeSequenceSecondsPassed - Name: $v Entry: 7 Data: 13|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: jumpingToTimeSequence + Data: timeSequenceSecondsPassed - Name: k__BackingField - Entry: 9 - Data: 9 + Entry: 7 + Data: 14|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: System.Single, mscorlib + - Name: + Entry: 8 + Data: - Name: k__BackingField Entry: 9 - Data: 9 + Data: 14 - 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: @@ -286,10 +292,16 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 14|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 15|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 - Data: 0 + Data: 1 + - Name: + Entry: 7 + Data: 16|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime + - Name: + Entry: 8 + Data: - Name: Entry: 13 Data: @@ -307,31 +319,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: currentTimeSequence + Data: timeSequenceProgress - Name: $v Entry: 7 - Data: 15|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 17|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: currentTimeSequence + Data: timeSequenceProgress - Name: k__BackingField - Entry: 7 - Data: 16|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: Marro.PacManUdon.PacManTimeSequence, Assembly-CSharp - - Name: - Entry: 8 - Data: + Entry: 9 + Data: 11 - Name: k__BackingField - Entry: 7 - Data: 17|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: System.Int32, mscorlib - - Name: - Entry: 8 - Data: + Entry: 9 + Data: 11 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -367,118 +367,16 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: timeSequenceSecondsPassed + Data: timeSequenceKeyframeTimes - Name: $v Entry: 7 Data: 19|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: timeSequenceSecondsPassed - - Name: k__BackingField - Entry: 9 - Data: 6 - - Name: k__BackingField - Entry: 9 - Data: 6 - - 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: 20|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - - Name: - Entry: 12 - Data: 1 - - Name: - Entry: 7 - Data: 21|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: timeSequenceProgress - - Name: $v - Entry: 7 - Data: 22|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: timeSequenceProgress - - Name: k__BackingField - Entry: 9 - Data: 17 - - Name: k__BackingField - Entry: 9 - Data: 17 - - 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: 23|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: timeSequenceKeyframeTimes - - Name: $v - Entry: 7 - Data: 24|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: timeSequenceKeyframeTimes - Name: k__BackingField Entry: 7 - Data: 25|System.RuntimeType, mscorlib + Data: 20|System.RuntimeType, mscorlib - Name: Entry: 1 Data: System.Single[], mscorlib @@ -487,7 +385,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 25 + Data: 20 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -502,7 +400,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 26|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 21|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -526,13 +424,13 @@ MonoBehaviour: Data: mazes - Name: $v Entry: 7 - Data: 27|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 22|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: mazes - Name: k__BackingField Entry: 7 - Data: 28|System.RuntimeType, mscorlib + Data: 23|System.RuntimeType, mscorlib - Name: Entry: 1 Data: Marro.PacManUdon.Maze[], Assembly-CSharp @@ -541,7 +439,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 7 - Data: 29|System.RuntimeType, mscorlib + Data: 24|System.RuntimeType, mscorlib - Name: Entry: 1 Data: UnityEngine.Component[], UnityEngine.CoreModule @@ -562,19 +460,85 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 30|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 25|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 2 - Name: Entry: 7 - Data: 31|UnityEngine.HeaderAttribute, UnityEngine.CoreModule + Data: 26|UnityEngine.HeaderAttribute, UnityEngine.CoreModule - Name: header Entry: 1 Data: Static game components - Name: Entry: 8 Data: + - Name: + Entry: 7 + Data: 27|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: pacMan + - Name: $v + Entry: 7 + Data: 28|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: pacMan + - Name: k__BackingField + Entry: 7 + Data: 29|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: Marro.PacManUdon.PacMan, Assembly-CSharp + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 7 + Data: 30|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: 31|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + - Name: + Entry: 12 + Data: 1 - Name: Entry: 7 Data: 32|UnityEngine.SerializeField, UnityEngine.CoreModule @@ -598,82 +562,16 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: pacMan + Data: ghostManager - Name: $v Entry: 7 Data: 33|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: pacMan + Data: ghostManager - Name: k__BackingField Entry: 7 Data: 34|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: Marro.PacManUdon.PacMan, Assembly-CSharp - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 7 - Data: 35|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: 36|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - - Name: - Entry: 12 - Data: 1 - - Name: - Entry: 7 - Data: 37|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: ghostManager - - Name: $v - Entry: 7 - Data: 38|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: ghostManager - - Name: k__BackingField - Entry: 7 - Data: 39|System.RuntimeType, mscorlib - Name: Entry: 1 Data: Marro.PacManUdon.GhostManager, Assembly-CSharp @@ -682,7 +580,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 35 + Data: 30 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -697,13 +595,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 40|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 35|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 41|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 36|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -727,13 +625,13 @@ MonoBehaviour: Data: bonusFruit - Name: $v Entry: 7 - Data: 42|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 37|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: bonusFruit - Name: k__BackingField Entry: 7 - Data: 43|System.RuntimeType, mscorlib + Data: 38|System.RuntimeType, mscorlib - Name: Entry: 1 Data: Marro.PacManUdon.BonusFruit, Assembly-CSharp @@ -742,7 +640,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 35 + Data: 30 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -757,13 +655,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 44|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 39|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 45|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 40|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -787,13 +685,13 @@ MonoBehaviour: Data: pelletManager - Name: $v Entry: 7 - Data: 46|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 41|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: pelletManager - Name: k__BackingField Entry: 7 - Data: 47|System.RuntimeType, mscorlib + Data: 42|System.RuntimeType, mscorlib - Name: Entry: 1 Data: Marro.PacManUdon.PelletManager, Assembly-CSharp @@ -802,7 +700,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 35 + Data: 30 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -817,13 +715,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 48|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 43|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 49|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 44|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -847,13 +745,13 @@ MonoBehaviour: Data: statusDisplay - Name: $v Entry: 7 - Data: 50|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 45|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: statusDisplay - Name: k__BackingField Entry: 7 - Data: 51|System.RuntimeType, mscorlib + Data: 46|System.RuntimeType, mscorlib - Name: Entry: 1 Data: Marro.PacManUdon.StatusDisplay, Assembly-CSharp @@ -862,7 +760,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 35 + Data: 30 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -877,13 +775,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 52|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 47|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 53|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 48|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -907,16 +805,16 @@ MonoBehaviour: Data: attractScreen - Name: $v Entry: 7 - Data: 54|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 49|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: attractScreen - Name: k__BackingField Entry: 9 - Data: 47 + Data: 42 - Name: k__BackingField Entry: 9 - Data: 35 + Data: 30 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -931,13 +829,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 55|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 50|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 56|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 51|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -961,13 +859,13 @@ MonoBehaviour: Data: intermissionScreen - Name: $v Entry: 7 - Data: 57|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 52|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: intermissionScreen - Name: k__BackingField Entry: 7 - Data: 58|System.RuntimeType, mscorlib + Data: 53|System.RuntimeType, mscorlib - Name: Entry: 1 Data: UnityEngine.GameObject, UnityEngine.CoreModule @@ -976,7 +874,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 58 + Data: 53 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -991,13 +889,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 59|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 54|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 60|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 55|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -1021,16 +919,16 @@ MonoBehaviour: Data: pressStartButtonScreen - Name: $v Entry: 7 - Data: 61|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 56|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: pressStartButtonScreen - Name: k__BackingField Entry: 9 - Data: 58 + Data: 53 - Name: k__BackingField Entry: 9 - Data: 58 + Data: 53 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1045,13 +943,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 62|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 57|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 63|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 58|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -1075,13 +973,13 @@ MonoBehaviour: Data: playerInput - Name: $v Entry: 7 - Data: 64|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 59|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: playerInput - Name: k__BackingField Entry: 7 - Data: 65|System.RuntimeType, mscorlib + Data: 60|System.RuntimeType, mscorlib - Name: Entry: 1 Data: Marro.PacManUdon.PlayerInput, Assembly-CSharp @@ -1090,7 +988,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 35 + Data: 30 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1105,13 +1003,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 66|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 61|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 67|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 62|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -1135,13 +1033,13 @@ MonoBehaviour: Data: demo - Name: $v Entry: 7 - Data: 68|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 63|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: demo - Name: k__BackingField Entry: 7 - Data: 69|System.RuntimeType, mscorlib + Data: 64|System.RuntimeType, mscorlib - Name: Entry: 1 Data: UnityEngine.Animator, UnityEngine.AnimationModule @@ -1150,7 +1048,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 69 + Data: 64 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1165,13 +1063,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 70|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 65|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 71|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 66|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -1195,13 +1093,13 @@ MonoBehaviour: Data: soundManager - Name: $v Entry: 7 - Data: 72|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 67|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: soundManager - Name: k__BackingField Entry: 7 - Data: 73|System.RuntimeType, mscorlib + Data: 68|System.RuntimeType, mscorlib - Name: Entry: 1 Data: SoundManager, Assembly-CSharp @@ -1210,7 +1108,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 35 + Data: 30 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1225,13 +1123,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 74|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 69|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 75|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 70|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -1255,13 +1153,13 @@ MonoBehaviour: Data: networkManager - Name: $v Entry: 7 - Data: 76|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 71|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: networkManager - Name: k__BackingField Entry: 7 - Data: 77|System.RuntimeType, mscorlib + Data: 72|System.RuntimeType, mscorlib - Name: Entry: 1 Data: Marro.PacManUdon.NetworkManager, Assembly-CSharp @@ -1270,7 +1168,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 35 + Data: 30 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1285,13 +1183,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 78|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 73|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 79|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 74|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -1315,16 +1213,16 @@ MonoBehaviour: Data: recorder - Name: $v Entry: 7 - Data: 80|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 75|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: recorder - Name: k__BackingField Entry: 9 - Data: 58 + Data: 53 - Name: k__BackingField Entry: 9 - Data: 58 + Data: 53 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1339,13 +1237,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 81|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: 82|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 77|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -1369,16 +1267,16 @@ MonoBehaviour: Data: startingExtraLives - Name: $v Entry: 7 - Data: 83|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 78|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: startingExtraLives - Name: k__BackingField Entry: 9 - Data: 17 + Data: 11 - Name: k__BackingField Entry: 9 - Data: 17 + Data: 11 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1393,13 +1291,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 84|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 79|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 2 - Name: Entry: 7 - Data: 85|UnityEngine.HeaderAttribute, UnityEngine.CoreModule + Data: 80|UnityEngine.HeaderAttribute, UnityEngine.CoreModule - Name: header Entry: 1 Data: Game settings @@ -1408,7 +1306,7 @@ MonoBehaviour: Data: - Name: Entry: 7 - Data: 86|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 81|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -1432,16 +1330,16 @@ MonoBehaviour: Data: scoreToExtraLife - Name: $v Entry: 7 - Data: 87|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 82|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: scoreToExtraLife - Name: k__BackingField Entry: 9 - Data: 17 + Data: 11 - Name: k__BackingField Entry: 9 - Data: 17 + Data: 11 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1456,13 +1354,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 88|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 83|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 89|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 84|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -1486,16 +1384,16 @@ MonoBehaviour: Data: pelletCountOverride - Name: $v Entry: 7 - Data: 90|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 85|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: pelletCountOverride - Name: k__BackingField Entry: 9 - Data: 17 + Data: 11 - Name: k__BackingField Entry: 9 - Data: 17 + Data: 11 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1510,13 +1408,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 91|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 86|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 2 - Name: Entry: 7 - Data: 92|UnityEngine.TooltipAttribute, UnityEngine.CoreModule + Data: 87|UnityEngine.TooltipAttribute, UnityEngine.CoreModule - Name: tooltip Entry: 1 Data: Override amount of pellets needed to clear stage, set to -1 to disable. @@ -1525,7 +1423,7 @@ MonoBehaviour: Data: - Name: Entry: 7 - Data: 93|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 88|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -1549,13 +1447,13 @@ MonoBehaviour: Data: maze - Name: $v Entry: 7 - Data: 94|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 89|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: maze - Name: k__BackingField Entry: 7 - Data: 95|System.RuntimeType, mscorlib + Data: 90|System.RuntimeType, mscorlib - Name: Entry: 1 Data: Marro.PacManUdon.Maze, Assembly-CSharp @@ -1564,7 +1462,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 35 + Data: 30 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1579,7 +1477,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 96|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 91|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -1603,13 +1501,13 @@ MonoBehaviour: Data: pelletPool - Name: $v Entry: 7 - Data: 97|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 92|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: pelletPool - Name: k__BackingField Entry: 7 - Data: 98|System.RuntimeType, mscorlib + Data: 93|System.RuntimeType, mscorlib - Name: Entry: 1 Data: VRC.SDK3.Components.VRCObjectPool, VRCSDK3 @@ -1618,7 +1516,109 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 98 + Data: 93 + - 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: 94|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: intermission2Pole + - Name: $v + Entry: 7 + Data: 95|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: intermission2Pole + - Name: k__BackingField + Entry: 7 + Data: 96|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: Marro.PacManUdon.Intermission2Pole, Assembly-CSharp + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 9 + Data: 30 + - 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: 97|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: mazeSpriteAnimator + - Name: $v + Entry: 7 + Data: 98|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: mazeSpriteAnimator + - Name: k__BackingField + Entry: 9 + Data: 64 + - Name: k__BackingField + Entry: 9 + Data: 64 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1654,25 +1654,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: intermission2Pole + Data: pelletCountTotal - Name: $v Entry: 7 Data: 100|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: intermission2Pole + Data: pelletCountTotal - Name: k__BackingField - Entry: 7 - Data: 101|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: Marro.PacManUdon.Intermission2Pole, Assembly-CSharp - - Name: - Entry: 8 - Data: + Entry: 9 + Data: 11 - Name: k__BackingField Entry: 9 - Data: 35 + Data: 11 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1687,7 +1681,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 102|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 101|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 @@ -1709,19 +1703,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: mazeSpriteAnimator + Data: pelletCountRemaining - Name: $v Entry: 7 - Data: 103|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 102|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: mazeSpriteAnimator + Data: pelletCountRemaining - Name: k__BackingField Entry: 9 - Data: 69 + Data: 11 - Name: k__BackingField Entry: 9 - Data: 69 + Data: 11 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1736,7 +1730,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 104|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 103|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 @@ -1758,19 +1752,25 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: pelletCountTotal + Data: attractScreenElements - Name: $v Entry: 7 - Data: 105|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 104|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: pelletCountTotal + Data: attractScreenElements - Name: k__BackingField - Entry: 9 - Data: 17 + Entry: 7 + Data: 105|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: UnityEngine.GameObject[], UnityEngine.CoreModule + - Name: + Entry: 8 + Data: - Name: k__BackingField Entry: 9 - Data: 17 + Data: 105 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1807,19 +1807,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: pelletCountRemaining + Data: intermissionScreenElements - Name: $v Entry: 7 Data: 107|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: pelletCountRemaining + Data: intermissionScreenElements - Name: k__BackingField Entry: 9 - Data: 17 + Data: 105 - Name: k__BackingField Entry: 9 - Data: 17 + Data: 105 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1856,25 +1856,25 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: attractScreenElements + Data: gameState - Name: $v Entry: 7 Data: 109|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: attractScreenElements + Data: gameState - Name: k__BackingField Entry: 7 Data: 110|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: UnityEngine.GameObject[], UnityEngine.CoreModule + Data: Marro.PacManUdon.PacManGameState, Assembly-CSharp - Name: Entry: 8 Data: - Name: k__BackingField Entry: 9 - Data: 110 + Data: 11 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1911,25 +1911,25 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: intermissionScreenElements + Data: score - Name: $v Entry: 7 Data: 112|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: intermissionScreenElements + Data: score - Name: k__BackingField Entry: 9 - Data: 110 + Data: 11 - Name: k__BackingField Entry: 9 - Data: 110 + Data: 11 - 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: @@ -1940,122 +1940,18 @@ MonoBehaviour: Entry: 7 Data: 113|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: gameState - - Name: $v - Entry: 7 - Data: 114|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: gameState - - Name: k__BackingField - Entry: 7 - Data: 115|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: Marro.PacManUdon.PacManGameState, Assembly-CSharp - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 9 - Data: 17 - - 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: 116|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: score - - Name: $v - Entry: 7 - Data: 117|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: score - - Name: k__BackingField - Entry: 9 - Data: 17 - - Name: k__BackingField - Entry: 9 - Data: 17 - - 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: 118|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], - mscorlib - Name: Entry: 12 Data: 2 - Name: Entry: 7 - Data: 119|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime + Data: 114|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: - Name: Entry: 7 - Data: 120|UdonSharp.FieldChangeCallbackAttribute, UdonSharp.Runtime + Data: 115|UdonSharp.FieldChangeCallbackAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: @@ -2079,16 +1975,16 @@ MonoBehaviour: Data: level - Name: $v Entry: 7 - Data: 121|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 116|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: level - Name: k__BackingField Entry: 9 - Data: 17 + Data: 11 - Name: k__BackingField Entry: 9 - Data: 17 + Data: 11 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -2103,20 +1999,20 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 122|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 117|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 2 - Name: Entry: 7 - Data: 123|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime + Data: 118|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: - Name: Entry: 7 - Data: 124|UdonSharp.FieldChangeCallbackAttribute, UdonSharp.Runtime + Data: 119|UdonSharp.FieldChangeCallbackAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: @@ -2140,16 +2036,16 @@ MonoBehaviour: Data: highScore - Name: $v Entry: 7 - Data: 125|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 120|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: highScore - Name: k__BackingField Entry: 9 - Data: 17 + Data: 11 - Name: k__BackingField Entry: 9 - Data: 17 + Data: 11 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -2164,20 +2060,20 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 126|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 121|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 2 - Name: Entry: 7 - Data: 127|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime + Data: 122|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: - Name: Entry: 7 - Data: 128|UdonSharp.FieldChangeCallbackAttribute, UdonSharp.Runtime + Data: 123|UdonSharp.FieldChangeCallbackAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: @@ -2201,16 +2097,16 @@ MonoBehaviour: Data: extraLives - Name: $v Entry: 7 - Data: 129|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 124|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: extraLives - Name: k__BackingField Entry: 9 - Data: 17 + Data: 11 - Name: k__BackingField Entry: 9 - Data: 17 + Data: 11 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -2225,20 +2121,20 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 130|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], + Data: 125|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 2 - Name: Entry: 7 - Data: 131|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime + Data: 126|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: - Name: Entry: 7 - Data: 132|UdonSharp.FieldChangeCallbackAttribute, UdonSharp.Runtime + Data: 127|UdonSharp.FieldChangeCallbackAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: diff --git a/Assets/Scripts/GameManager.cs b/Assets/Scripts/GameManager.cs index 2899b46..e7721cb 100644 --- a/Assets/Scripts/GameManager.cs +++ b/Assets/Scripts/GameManager.cs @@ -88,7 +88,7 @@ namespace Marro.PacManUdon StartAttractMode(); } - public override void FixedUpdate() + public override void SyncedUpdate() { TimeSequenceUpdate(Time.deltaTime); } diff --git a/Assets/Scripts/Ghost.asset b/Assets/Scripts/Ghost.asset index 8f1e367..61db681 100644 --- a/Assets/Scripts/Ghost.asset +++ b/Assets/Scripts/Ghost.asset @@ -43,25 +43,25 @@ MonoBehaviour: Data: - Name: Entry: 12 - Data: 40 + Data: 38 - Name: Entry: 7 Data: - Name: $k Entry: 1 - Data: k__BackingField + Data: direction - Name: $v Entry: 7 Data: 2|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: k__BackingField + Data: direction - Name: k__BackingField Entry: 7 Data: 3|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: System.Int64, mscorlib + Data: UnityEngine.Vector2, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -103,124 +103,16 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data:
k__BackingField + Data: ghostType - Name: $v Entry: 7 Data: 5|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data:
k__BackingField + Data: ghostType - Name: k__BackingField Entry: 7 Data: 6|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: System.Single, mscorlib - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 9 - Data: 6 - - 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: 7|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: direction - - Name: $v - Entry: 7 - Data: 8|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: direction - - Name: k__BackingField - Entry: 7 - Data: 9|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: UnityEngine.Vector2, UnityEngine.CoreModule - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 9 - Data: 9 - - 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: 10|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: ghostType - - Name: $v - Entry: 7 - Data: 11|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: ghostType - - Name: k__BackingField - Entry: 7 - Data: 12|System.RuntimeType, mscorlib - Name: Entry: 1 Data: Marro.PacManUdon.PacManGhostType, Assembly-CSharp @@ -229,7 +121,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 7 - Data: 13|System.RuntimeType, mscorlib + Data: 7|System.RuntimeType, mscorlib - Name: Entry: 1 Data: System.Int32, mscorlib @@ -250,13 +142,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 14|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 8|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 15|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 9|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -280,13 +172,13 @@ MonoBehaviour: Data: startState - Name: $v Entry: 7 - Data: 16|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 10|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: startState - Name: k__BackingField Entry: 7 - Data: 17|System.RuntimeType, mscorlib + Data: 11|System.RuntimeType, mscorlib - Name: Entry: 1 Data: Marro.PacManUdon.PacManGhostStartState, Assembly-CSharp @@ -295,7 +187,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 13 + Data: 7 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -310,13 +202,13 @@ MonoBehaviour: Data: true - Name: _fieldAttributes Entry: 7 - Data: 18|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 12|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 19|UnityEngine.SerializeField, UnityEngine.CoreModule + Data: 13|UnityEngine.SerializeField, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -340,13 +232,13 @@ MonoBehaviour: Data: ghostManager - Name: $v Entry: 7 - Data: 20|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 14|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: ghostManager - Name: k__BackingField Entry: 7 - Data: 21|System.RuntimeType, mscorlib + Data: 15|System.RuntimeType, mscorlib - Name: Entry: 1 Data: Marro.PacManUdon.GhostManager, Assembly-CSharp @@ -355,7 +247,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 7 - Data: 22|System.RuntimeType, mscorlib + Data: 16|System.RuntimeType, mscorlib - Name: Entry: 1 Data: VRC.Udon.UdonBehaviour, VRC.Udon @@ -374,6 +266,114 @@ MonoBehaviour: - Name: k__BackingField Entry: 5 Data: false + - Name: _fieldAttributes + Entry: 7 + Data: 17|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: animator + - Name: $v + Entry: 7 + Data: 18|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: animator + - Name: k__BackingField + Entry: 7 + Data: 19|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: UnityEngine.Animator, UnityEngine.AnimationModule + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 9 + Data: 19 + - 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: 20|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: renderer + - Name: $v + Entry: 7 + Data: 21|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: renderer + - Name: k__BackingField + Entry: 7 + Data: 22|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: UnityEngine.Renderer, UnityEngine.CoreModule + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 9 + Data: 22 + - 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: 23|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib @@ -397,25 +397,25 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: animator + Data: pacMan - Name: $v Entry: 7 Data: 24|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: animator + Data: pacMan - Name: k__BackingField Entry: 7 Data: 25|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: UnityEngine.Animator, UnityEngine.AnimationModule + Data: Marro.PacManUdon.PacMan, Assembly-CSharp - Name: Entry: 8 Data: - Name: k__BackingField Entry: 9 - Data: 25 + Data: 16 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -451,25 +451,25 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: renderer + Data: blinky - Name: $v Entry: 7 Data: 27|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: renderer + Data: blinky - Name: k__BackingField Entry: 7 Data: 28|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: UnityEngine.Renderer, UnityEngine.CoreModule + Data: Marro.PacManUdon.Ghost, Assembly-CSharp - Name: Entry: 8 Data: - Name: k__BackingField Entry: 9 - Data: 28 + Data: 16 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -505,25 +505,25 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: pacMan + Data: scoreBonusDisplay - Name: $v Entry: 7 Data: 30|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: pacMan + Data: scoreBonusDisplay - Name: k__BackingField Entry: 7 Data: 31|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: Marro.PacManUdon.PacMan, Assembly-CSharp + Data: Marro.PacManUdon.ScoreBonusDisplay, Assembly-CSharp - Name: Entry: 8 Data: - Name: k__BackingField Entry: 9 - Data: 22 + Data: 16 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -559,25 +559,25 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: blinky + Data: startPosition - Name: $v Entry: 7 Data: 33|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: blinky + Data: startPosition - Name: k__BackingField Entry: 7 Data: 34|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: Marro.PacManUdon.Ghost, Assembly-CSharp + Data: UnityEngine.Vector3, UnityEngine.CoreModule - Name: Entry: 8 Data: - Name: k__BackingField Entry: 9 - Data: 22 + Data: 34 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -613,25 +613,25 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: scoreBonusDisplay + Data: startRotation - Name: $v Entry: 7 Data: 36|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: scoreBonusDisplay + Data: startRotation - Name: k__BackingField Entry: 7 Data: 37|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: Marro.PacManUdon.ScoreBonusDisplay, Assembly-CSharp + Data: UnityEngine.Quaternion, UnityEngine.CoreModule - Name: Entry: 8 Data: - Name: k__BackingField Entry: 9 - Data: 22 + Data: 37 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -667,25 +667,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: startPosition + Data: startScale - Name: $v Entry: 7 Data: 39|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: startPosition + Data: startScale - Name: k__BackingField - Entry: 7 - Data: 40|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: UnityEngine.Vector3, UnityEngine.CoreModule - - Name: - Entry: 8 - Data: + Entry: 9 + Data: 34 - Name: k__BackingField Entry: 9 - Data: 40 + Data: 34 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -700,7 +694,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 41|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 40|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -721,25 +715,67 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: startRotation + Data: homePosition - Name: $v Entry: 7 - Data: 42|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 41|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: startRotation + Data: homePosition - Name: k__BackingField + Entry: 9 + Data: 3 + - Name: k__BackingField + Entry: 9 + Data: 3 + - Name: k__BackingField Entry: 7 - Data: 43|System.RuntimeType, mscorlib + Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib - Name: - Entry: 1 - Data: UnityEngine.Quaternion, UnityEngine.CoreModule + Entry: 6 + Data: - Name: Entry: 8 Data: + - Name: k__BackingField + Entry: 5 + Data: false + - Name: _fieldAttributes + Entry: 7 + Data: 42|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: idlePosition1 + - Name: $v + Entry: 7 + Data: 43|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: idlePosition1 + - Name: k__BackingField + Entry: 9 + Data: 3 - Name: k__BackingField Entry: 9 - Data: 43 + Data: 3 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -775,19 +811,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: startScale + Data: idlePosition2 - Name: $v Entry: 7 Data: 45|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: startScale + Data: idlePosition2 - Name: k__BackingField Entry: 9 - Data: 40 + Data: 3 - Name: k__BackingField Entry: 9 - Data: 40 + Data: 3 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -823,19 +859,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: homePosition + Data: cornerPosition - Name: $v Entry: 7 Data: 47|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: homePosition + Data: cornerPosition - Name: k__BackingField Entry: 9 - Data: 9 + Data: 3 - Name: k__BackingField Entry: 9 - Data: 9 + Data: 3 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -871,160 +907,16 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: idlePosition1 + Data: kinematic - Name: $v Entry: 7 Data: 49|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: idlePosition1 - - Name: k__BackingField - Entry: 9 - Data: 9 - - Name: k__BackingField - Entry: 9 - Data: 9 - - 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: 50|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: idlePosition2 - - Name: $v - Entry: 7 - Data: 51|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: idlePosition2 - - Name: k__BackingField - Entry: 9 - Data: 9 - - Name: k__BackingField - Entry: 9 - Data: 9 - - 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: 52|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: cornerPosition - - Name: $v - Entry: 7 - Data: 53|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: cornerPosition - - Name: k__BackingField - Entry: 9 - Data: 9 - - Name: k__BackingField - Entry: 9 - Data: 9 - - 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: 54|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: kinematic - - Name: $v - Entry: 7 - Data: 55|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: kinematic - Name: k__BackingField Entry: 7 - Data: 56|System.RuntimeType, mscorlib + Data: 50|System.RuntimeType, mscorlib - Name: Entry: 1 Data: System.Boolean, mscorlib @@ -1033,7 +925,151 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 56 + Data: 50 + - 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: 51|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: horizontalOnly + - Name: $v + Entry: 7 + Data: 52|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: horizontalOnly + - Name: k__BackingField + Entry: 9 + Data: 50 + - Name: k__BackingField + Entry: 9 + Data: 50 + - 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: 53|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: housePelletCounterLimit + - Name: $v + Entry: 7 + Data: 54|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: housePelletCounterLimit + - Name: k__BackingField + Entry: 9 + Data: 7 + - Name: k__BackingField + Entry: 9 + Data: 7 + - 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: 55|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: faceInStartingDirectionUntilUnfrozen + - Name: $v + Entry: 7 + Data: 56|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: faceInStartingDirectionUntilUnfrozen + - Name: k__BackingField + Entry: 9 + Data: 50 + - Name: k__BackingField + Entry: 9 + Data: 50 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1069,19 +1105,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: horizontalOnly + Data: specialLook - Name: $v Entry: 7 Data: 58|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: horizontalOnly + Data: specialLook - Name: k__BackingField Entry: 9 - Data: 56 + Data: 50 - Name: k__BackingField Entry: 9 - Data: 56 + Data: 50 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1117,19 +1153,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: housePelletCounterLimit + Data: followingPredefinedPath - Name: $v Entry: 7 Data: 60|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: housePelletCounterLimit + Data: followingPredefinedPath - Name: k__BackingField Entry: 9 - Data: 13 + Data: 50 - Name: k__BackingField Entry: 9 - Data: 13 + Data: 50 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1165,160 +1201,16 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: faceInStartingDirectionUntilUnfrozen + Data: predefinedPath - Name: $v Entry: 7 Data: 62|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: faceInStartingDirectionUntilUnfrozen - - Name: k__BackingField - Entry: 9 - Data: 56 - - Name: k__BackingField - Entry: 9 - Data: 56 - - 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: 63|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: specialLook - - Name: $v - Entry: 7 - Data: 64|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: specialLook - - Name: k__BackingField - Entry: 9 - Data: 56 - - Name: k__BackingField - Entry: 9 - Data: 56 - - 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: 65|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: followingPredefinedPath - - Name: $v - Entry: 7 - Data: 66|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: followingPredefinedPath - - Name: k__BackingField - Entry: 9 - Data: 56 - - Name: k__BackingField - Entry: 9 - Data: 56 - - 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: 67|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: predefinedPath - - Name: $v - Entry: 7 - Data: 68|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: predefinedPath - Name: k__BackingField Entry: 7 - Data: 69|System.RuntimeType, mscorlib + Data: 63|System.RuntimeType, mscorlib - Name: Entry: 1 Data: UnityEngine.Vector2[], UnityEngine.CoreModule @@ -1327,7 +1219,151 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 69 + Data: 63 + - 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: 64|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: predefinedPathIndex + - Name: $v + Entry: 7 + Data: 65|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: predefinedPathIndex + - Name: k__BackingField + Entry: 9 + Data: 7 + - Name: k__BackingField + Entry: 9 + Data: 7 + - 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: 66|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: rngState + - Name: $v + Entry: 7 + Data: 67|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: rngState + - Name: k__BackingField + Entry: 9 + Data: 7 + - Name: k__BackingField + Entry: 9 + Data: 7 + - 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: 68|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: syncedPosition + - Name: $v + Entry: 7 + Data: 69|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: syncedPosition + - Name: k__BackingField + Entry: 9 + Data: 3 + - Name: k__BackingField + Entry: 9 + Data: 3 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1363,163 +1399,25 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: predefinedPathIndex + Data: speed - Name: $v Entry: 7 Data: 71|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: predefinedPathIndex - - Name: k__BackingField - Entry: 9 - Data: 13 - - Name: k__BackingField - Entry: 9 - Data: 13 - - 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: 72|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: rngState - - Name: $v - Entry: 7 - Data: 73|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: rngState - - Name: k__BackingField - Entry: 9 - Data: 13 - - Name: k__BackingField - Entry: 9 - Data: 13 - - 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: 74|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: syncedPosition - - Name: $v - Entry: 7 - Data: 75|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: syncedPosition - - Name: k__BackingField - Entry: 9 - Data: 9 - - Name: k__BackingField - Entry: 9 - Data: 9 - - 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: 76|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: speed - - Name: $v - Entry: 7 - Data: 77|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: speed - Name: k__BackingField - Entry: 9 - Data: 6 + Entry: 7 + Data: 72|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: System.Single, mscorlib + - Name: + Entry: 8 + Data: - Name: k__BackingField Entry: 9 - Data: 6 + Data: 72 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1534,7 +1432,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 78|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 73|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -1558,16 +1456,16 @@ MonoBehaviour: Data: target - Name: $v Entry: 7 - Data: 79|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 74|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: target - Name: k__BackingField Entry: 9 - Data: 9 + Data: 3 - Name: k__BackingField Entry: 9 - Data: 9 + Data: 3 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1582,7 +1480,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 80|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 75|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -1606,16 +1504,118 @@ MonoBehaviour: Data: offGrid - Name: $v Entry: 7 - Data: 81|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 76|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: offGrid - Name: k__BackingField Entry: 9 - Data: 56 + Data: 50 - Name: k__BackingField Entry: 9 - Data: 56 + Data: 50 + - 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: 77|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: inTunnel + - Name: $v + Entry: 7 + Data: 78|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: inTunnel + - Name: k__BackingField + Entry: 9 + Data: 50 + - Name: k__BackingField + Entry: 9 + Data: 50 + - 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: 79|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: ghostState + - Name: $v + Entry: 7 + Data: 80|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: ghostState + - Name: k__BackingField + Entry: 7 + Data: 81|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: Marro.PacManUdon.PacManGhostState, Assembly-CSharp + - 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 @@ -1651,19 +1651,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: inTunnel + Data: isScared - Name: $v Entry: 7 Data: 83|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: inTunnel + Data: isScared - Name: k__BackingField Entry: 9 - Data: 56 + Data: 50 - Name: k__BackingField Entry: 9 - Data: 56 + Data: 50 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1699,25 +1699,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: ghostState + Data: scattering - Name: $v Entry: 7 Data: 85|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: ghostState + Data: scattering - Name: k__BackingField - Entry: 7 - Data: 86|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: Marro.PacManUdon.PacManGhostState, Assembly-CSharp - - Name: - Entry: 8 - Data: + Entry: 9 + Data: 50 - Name: k__BackingField Entry: 9 - Data: 13 + Data: 50 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1732,7 +1726,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 87|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 86|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -1753,19 +1747,25 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: isScared + Data: frozenState - Name: $v Entry: 7 - Data: 88|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 87|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: isScared + Data: frozenState - Name: k__BackingField - Entry: 9 - Data: 56 + Entry: 7 + Data: 88|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: Marro.PacManUdon.PacManGhostFrozenState, Assembly-CSharp + - Name: + Entry: 8 + Data: - Name: k__BackingField Entry: 9 - Data: 56 + Data: 7 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1801,19 +1801,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: scattering + Data: hideUntilUnfrozen - Name: $v Entry: 7 Data: 90|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: scattering + Data: hideUntilUnfrozen - Name: k__BackingField Entry: 9 - Data: 56 + Data: 50 - Name: k__BackingField Entry: 9 - Data: 56 + Data: 50 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1849,121 +1849,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: frozenState + Data: housePelletCounter - Name: $v Entry: 7 Data: 92|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: frozenState - - Name: k__BackingField - Entry: 7 - Data: 93|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: Marro.PacManUdon.PacManGhostFrozenState, Assembly-CSharp - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 9 - Data: 13 - - 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: 94|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: hideUntilUnfrozen - - Name: $v - Entry: 7 - Data: 95|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: hideUntilUnfrozen - - Name: k__BackingField - Entry: 9 - Data: 56 - - Name: k__BackingField - Entry: 9 - Data: 56 - - 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: 96|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: housePelletCounter - - Name: $v - Entry: 7 - Data: 97|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: housePelletCounter - Name: k__BackingField Entry: 9 - Data: 13 + Data: 7 - Name: k__BackingField Entry: 9 - Data: 13 + Data: 7 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1978,7 +1876,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 98|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 93|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -2002,16 +1900,16 @@ MonoBehaviour: Data: housePelletCounterActive - Name: $v Entry: 7 - Data: 99|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 94|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: housePelletCounterActive - Name: k__BackingField Entry: 9 - Data: 56 + Data: 50 - Name: k__BackingField Entry: 9 - Data: 56 + Data: 50 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -2026,8 +1924,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 100|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], - mscorlib + Data: 95|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -2051,16 +1948,16 @@ MonoBehaviour: Data: turnAroundSoon - Name: $v Entry: 7 - Data: 101|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 96|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: turnAroundSoon - Name: k__BackingField Entry: 9 - Data: 56 + Data: 50 - Name: k__BackingField Entry: 9 - Data: 56 + Data: 50 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -2075,8 +1972,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 102|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], - mscorlib + Data: 97|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 diff --git a/Assets/Scripts/Ghost.cs b/Assets/Scripts/Ghost.cs index ba8fdbd..477f109 100644 --- a/Assets/Scripts/Ghost.cs +++ b/Assets/Scripts/Ghost.cs @@ -150,7 +150,7 @@ namespace Marro.PacManUdon // Debug.Log($"{gameObject} reset with state: {state}, target: {target}, offGrid: {offGrid}"); } - public override void FixedUpdate() + public override void SyncedUpdate() { if (ghostType == PacManGhostType.Blinky) { diff --git a/Assets/Scripts/NetworkManager.asset b/Assets/Scripts/NetworkManager.asset index 6199e1e..d96f7ba 100644 --- a/Assets/Scripts/NetworkManager.asset +++ b/Assets/Scripts/NetworkManager.asset @@ -43,7 +43,7 @@ MonoBehaviour: Data: - Name: Entry: 12 - Data: 11 + Data: 15 - Name: Entry: 7 Data: @@ -277,19 +277,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: startTimeTicks + Data: offsetTime - Name: $v Entry: 7 Data: 16|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: startTimeTicks + Data: offsetTime - Name: k__BackingField Entry: 7 Data: 17|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: System.Int64, mscorlib + Data: System.Single, mscorlib - Name: Entry: 8 Data: @@ -331,13 +331,13 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: nextEventTimeTicks + Data: internalTime - Name: $v Entry: 7 Data: 19|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: nextEventTimeTicks + Data: internalTime - Name: k__BackingField Entry: 9 Data: 17 @@ -379,16 +379,64 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: retriesWithoutSuccess + Data: nextEventTime - Name: $v Entry: 7 Data: 21|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: nextEventTime + - Name: k__BackingField + Entry: 9 + Data: 17 + - Name: k__BackingField + Entry: 9 + Data: 17 + - 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: 22|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: retriesWithoutSuccess + - Name: $v + Entry: 7 + Data: 23|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: retriesWithoutSuccess - Name: k__BackingField Entry: 7 - Data: 22|System.RuntimeType, mscorlib + Data: 24|System.RuntimeType, mscorlib - Name: Entry: 1 Data: System.Int32, mscorlib @@ -397,7 +445,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 22 + Data: 24 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -412,7 +460,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 23|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 25|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -436,13 +484,13 @@ MonoBehaviour: Data: buffer - Name: $v Entry: 7 - Data: 24|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 26|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: buffer - Name: k__BackingField Entry: 7 - Data: 25|System.RuntimeType, mscorlib + Data: 27|System.RuntimeType, mscorlib - Name: Entry: 1 Data: System.Byte[], mscorlib @@ -451,55 +499,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 25 - - 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: 26|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: index - - Name: $v - Entry: 7 - Data: 27|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: index - - Name: k__BackingField - Entry: 9 - Data: 22 - - Name: k__BackingField - Entry: 9 - Data: 22 + Data: 27 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -535,19 +535,67 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: networkedData + Data: bufferIndex - Name: $v Entry: 7 Data: 29|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: bufferIndex + - Name: k__BackingField + Entry: 9 + Data: 24 + - Name: k__BackingField + Entry: 9 + Data: 24 + - 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: 30|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: networkedData + - Name: $v + Entry: 7 + Data: 31|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: networkedData - Name: k__BackingField Entry: 9 - Data: 25 + Data: 27 - Name: k__BackingField Entry: 9 - Data: 25 + Data: 27 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -562,13 +610,13 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 30|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 32|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 1 - Name: Entry: 7 - Data: 31|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime + Data: 33|UdonSharp.UdonSyncedAttribute, UdonSharp.Runtime - Name: Entry: 8 Data: @@ -589,13 +637,61 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: k__BackingField + Data: k__BackingField - Name: $v Entry: 7 - Data: 32|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 34|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: k__BackingField + Data: k__BackingField + - Name: k__BackingField + Entry: 9 + Data: 12 + - 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: 35|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: k__BackingField + - Name: $v + Entry: 7 + Data: 36|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: k__BackingField - Name: k__BackingField Entry: 9 Data: 17 @@ -616,7 +712,103 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 33|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 37|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:
k__BackingField + - Name: $v + Entry: 7 + Data: 38|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data:
k__BackingField + - Name: k__BackingField + Entry: 9 + Data: 17 + - Name: k__BackingField + Entry: 9 + Data: 17 + - 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: k__BackingField + - Name: $v + Entry: 7 + Data: 40|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: k__BackingField + - Name: k__BackingField + Entry: 9 + Data: 12 + - 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: 41|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 diff --git a/Assets/Scripts/NetworkManager.cs b/Assets/Scripts/NetworkManager.cs index c03b655..7665003 100644 --- a/Assets/Scripts/NetworkManager.cs +++ b/Assets/Scripts/NetworkManager.cs @@ -37,38 +37,146 @@ namespace Marro.PacManUdon // [6]: (byte) Type of event. 0 = Full Sync, which is used to sync up from an undefinted state. // [7+]: Event-specific data + #region Constants + /// + /// The maximum size of the buffer in bytes. + /// private const int BufferMaxSizeBytes = 10000; + /// + /// How many bytes to increase the buffer size by if the current one is not enough. + /// private const int BufferIncrementSizeBytes = 1000; - [SerializeField] private SyncedObject[] syncedObjects; - - [SerializeField] private Animator DebugImageToIndicateOwner; - - private bool isOwner; - private bool isSynced; - - private long startTimeTicks = DateTime.UtcNow.Ticks; // Initialize to prevent errors - private long nextEventTimeTicks; - - private int retriesWithoutSuccess; - - // Main buffer of events - private byte[] buffer; - private int index; - + /// + /// The index in an event where the event size is stored. + /// private const ushort HeaderEventSizeIndex = 0; + /// + /// The index in an event where the timestamp is stored. + /// private const ushort HeaderTimestampIndex = 2; + /// + /// The index in an event where the event type is stored. + /// private const ushort HeaderEventTypeIndex = 6; + /// + /// The total length of the header of an event, in bytes. + /// private const ushort HeaderLength = 7; - private const int Delay = 250; + /// + /// The multiplier from Unity time to a timestamp. + /// + private const int TimestampMultiplier = 1000; + /// + /// The zero value of a timestamp. Anything below this value is negative. + /// + private const uint TimestampZeroValue = 1000; + /// + /// The delay at which the receiving side replays events. + /// + private const float Delay = 0.250f; + #endregion + #region Private attributes + /// + /// Objects which are controlled by this . + /// + [SerializeField] private SyncedObject[] syncedObjects; + + /// + /// An animator which visualizes whether the current perspective is the owner. + /// + [SerializeField] private Animator DebugImageToIndicateOwner; + + /// + /// Whether the current perspective is the transmitting side. + /// + private bool isOwner; + /// + /// Whether the current perspective is synced with the owner. (Always true if current perspective is owner.) + /// + private bool isSynced; + + + /// + /// Offset from system time to network time, including delay. + /// + private float offsetTime; + /// + /// Time since last full sync, captured when this FixedUpdate started, with network delay applied. + /// + private float internalTime; + + /// + /// Time at which next received event occured. + /// + private float nextEventTime; + + /// + /// Amounot of retries in a row without a successful sync. + /// + private int retriesWithoutSuccess; + + /// + /// Main buffer of data to be transmitted or processed + /// + private byte[] buffer; + /// + /// Index of . + /// + private int bufferIndex; + + /// + /// Data which is currently available on the network. + /// [UdonSynced] private byte[] networkedData = new byte[0]; + #endregion - public long CurrentTimeTicks { get; private set; } + #region Public fields + /// + /// Whether this is ready to transmit or receive data. + /// If false, networking is disabled and this acts as a pass-through. + /// + public bool Ready { get; private set; } = false; + + /// + /// The time since last full sync which is currently being simulated. + /// + public float SyncedTime { get; private set; } + + /// + /// Time since the last simulation, in seconds. + /// + public float Dt { get; private set; } + + /// + /// Is the current simulation to prepare for applying a network event? + /// True = Yes, This update is preparing for a network update. + /// False = No, this update is after the network update or there was no + /// + public bool IsEventUpdate { get; private set; } + + /// + /// Is the local user owner? + /// + public bool IsOwner => isOwner; + #endregion + + #region General + public void Awake() + { + offsetTime = Time.fixedTime; + } public void Initialize() { + if (Ready) + { + Debug.LogWarning($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Already initialized, rejecting repeat call to {nameof(Initialize)}"); + return; + } + if (!BitConverter.IsLittleEndian) { Debug.LogError($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Fatal: NetworkManager only supports little endian! Network sync will not be possible."); @@ -77,328 +185,49 @@ namespace Marro.PacManUdon return; } - buffer = new byte[BufferIncrementSizeBytes]; - index = 0; - startTimeTicks = DateTime.UtcNow.Ticks; - isSynced = false; - retriesWithoutSuccess = 0; SetOwner(Networking.IsOwner(gameObject)); - Debug.Log($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Initialized, startTimeTicks: {startTimeTicks}"); + buffer = new byte[BufferIncrementSizeBytes]; + bufferIndex = 0; + isSynced = isOwner; // Owner is always synced + retriesWithoutSuccess = 0; + + offsetTime = Time.fixedTime; + internalTime = 0; + SyncedTime = 0; + Dt = Time.fixedDeltaTime; + + Ready = true; + + Debug.Log($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Initialized, time offset: {offsetTime}"); } - public void Update() + public void FixedUpdate() { + UpdateInternalTime(); + if (!isOwner) { - ProgressReplayTime(); + ProgressEventTime(); } - UpdateTime(DateTime.UtcNow.Ticks); + PerformFixedSyncedUpdate(); } - public void SendEvent(NetworkEventType eventType) + public void UpdateInternalTime() { - if (!isOwner) - { - Debug.LogError($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Attempted {nameof(SendEvent)} while not the owner!"); - return; - } + internalTime = Time.fixedTime - offsetTime; + } - var eventTime = GetTimestamp(CurrentTimeTicks); - - InitializeEvent(eventType, eventTime, BufferMaxSizeBytes, out byte[][] data, out var index); + private void PerformFixedSyncedUpdate() + { + IsEventUpdate = false; + ProgressSyncedTime(internalTime); foreach (var obj in syncedObjects) { - obj.AppendSyncedData(data, ref index, eventType); + obj.SyncedUpdate(); } - - // Get event size, skipping over the event size which is not yet included - ushort eventSize = 0; - for (int i = 0; i < index; i++) - { - eventSize += (ushort)data[i].Length; - } - - if (!EnsureSpaceToStoreEvent(eventSize)) - { - return; - } - - data[0] = BitConverter.GetBytes(eventSize); - - var oldIndex = this.index; - - FlattenAndCopy(data, index, buffer, ref this.index); - - Debug.Log($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Prepared event with {eventSize} bytes and timestamp {eventTime} for serialization, index went from {oldIndex} to {this.index}"); - - RequestSerialization(); - - retriesWithoutSuccess = 0; // We had success! - } - - public void RequestEvent(NetworkEventType eventType) - { - if (isOwner) - { - Debug.LogError($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Attempted {nameof(RequestEvent)} while we are the owner!"); - return; - } - - SendCustomNetworkEvent(VRC.Udon.Common.Interfaces.NetworkEventTarget.Owner, "RequestEventReceived", eventType); - } - - [NetworkCallable] - public void RequestEventReceived(NetworkEventType eventType) - { - if (!isOwner) - { - Debug.LogError($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Attempted {nameof(RequestEventReceived)} while we are not the owner!"); - return; - } - - SendEvent(eventType); - } - - private void ProcessIncomingData() - { - if (networkedData.Length == 0) - { - return; // Nothing to process - } - - var length = networkedData.Length; - int index = 0; - while (index < length) - { - if (length - index < HeaderLength) - { - Debug.LogWarning($"({nameof(PacManUdon)} {nameof(NetworkManager)}) {nameof(ProcessIncomingData)}: Remaining data in networkedData is not long enough to form a complete event!"); - HandleError(); - return; - } - - var eventSize = networkedData[index + HeaderEventSizeIndex]; - var eventType = (NetworkEventType)networkedData[index + HeaderEventTypeIndex]; - - if (eventType == NetworkEventType.FullSync) - { - ProcessIncomingFullSync(index, eventSize); // Immediately process full sync - index += eventSize; - continue; - } - - if (!isSynced) - { - Debug.LogWarning($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Received event of type {eventType} while we are not yet synced to the remote time, ignoring event."); - index += eventSize; - continue; - } - - AppendEventToBuffer(index, eventSize); - index += eventSize; - } - - Debug.Log($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Received {networkedData.Length} bytes!\nBytes received:\n{BytesToString(networkedData)}"); - } - - private void ProcessIncomingFullSync(int index, int size) - { - // Intentionally not doing a buffer size check here, since this is not appending to the buffer - // (and there is no good way to continue if event is too large) - - // Clear buffer and copy the full sync into it - buffer = new byte[size]; - Array.Copy(networkedData, index, buffer, 0, size); - this.index = size; - - // Sync up to the time in the full sync - var timestamp = BitConverter.ToUInt32(networkedData, index + HeaderTimestampIndex); - SyncToTimestamp(timestamp); - - // Immediately apply the full sync - nextEventTimeTicks = GetTimeTicks(timestamp); - isSynced = true; - } - - private void AppendEventToBuffer(int index, int size) - { - if (!EnsureSpaceToStoreEvent(size)) - { - return; - } - - Array.Copy(networkedData, index, buffer, this.index, size); - this.index += size; - - UpdateNextEventTime(); - } - - private void ProgressReplayTime() - { - while (index != 0 && nextEventTimeTicks <= CurrentTimeTicks) - { - ProcessIncomingEvent(); - UpdateNextEventTime(); - } - } - - private void UpdateNextEventTime() - { - if (index == 0) - { - return; - } - - var nextEventTimeTicks = GetTimeTicks(BitConverter.ToUInt32(buffer, HeaderTimestampIndex)); - if (nextEventTimeTicks >= this.nextEventTimeTicks) - { - this.nextEventTimeTicks = nextEventTimeTicks; - } - else - { - Debug.LogWarning($"({nameof(PacManUdon)} {nameof(NetworkManager)}) New event is earlier than previous event!"); - HandleError(); - return; - } - } - - private void ProcessIncomingEvent() - { - var eventTimeTicks = GetTimeTicks(BitConverter.ToUInt32(buffer, HeaderTimestampIndex)); - var eventType = (NetworkEventType)buffer[HeaderEventTypeIndex]; - var index = (int)HeaderLength; // Skip header - - UpdateTime(eventTimeTicks); - - foreach (var obj in syncedObjects) - { - obj.FixedUpdate(); - } - - foreach (var obj in syncedObjects) - { - var success = obj.SetSyncedData(buffer, ref index, eventType); - - if (!success) - { - Debug.LogWarning($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Malformed data reported by {obj.name} during event type {eventType}!"); - HandleError(); - return; - } - - if (index > this.index) - { - Debug.LogWarning($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Buffer overflow during {nameof(SyncedObject.SetSyncedData)} for {obj.name} in event type {eventType}!"); - HandleError(); - return; - } - } - - var eventSize = BitConverter.ToUInt16(buffer, HeaderEventSizeIndex); - if (index != eventSize) - { - Debug.LogWarning($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Amount of data read does not match event size! Expected {eventSize}, read {index}."); - HandleError(); - return; - } - - RemoveProcessedDataFromBuffer(index); - - Debug.Log($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Processed incoming event! Total {index} bytes."); - - retriesWithoutSuccess = 0; // We had success! - } - - private void SyncToTimestamp(uint newTime) - { - var timeToSyncTo = newTime - Delay; - startTimeTicks = DateTime.UtcNow.Ticks - timeToSyncTo * TimeSpan.TicksPerMillisecond; - - Debug.Log($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Synced to time {newTime}, startTimeTicks is now {startTimeTicks}"); - } - - private bool EnsureSpaceToStoreEvent(int eventSize) - { - if (index + eventSize <= buffer.Length) - { - return true; // Enough space! - } - - var newBufferSize = ((index + eventSize) / BufferIncrementSizeBytes + 1) * BufferIncrementSizeBytes; - - var success = IncreaseBufferSize(newBufferSize); - if (success) - { - return true; - } - - if (index == 0) - { - Debug.LogError($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Buffer is not large enough to store event!"); - } - else - { - Debug.LogWarning($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Too much data in buffer to store event!"); - } - - HandleError(); // We can store event now that we cleared the buffer. - return false; - } - - private bool IncreaseBufferSize(int newSize) - { - if (newSize < buffer.Length) - { - Debug.Log($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Cannot decrease the size of the buffer!"); - return false; - } - - if (newSize > BufferMaxSizeBytes) - { - return false; - } - - var oldBuffer = buffer; - buffer = new byte[newSize]; - oldBuffer.CopyTo(buffer, 0); - return true; - } - - private void InitializeEvent(NetworkEventType eventType, uint eventTime, int maxSize, out byte[][] data, out int index) - { - data = new byte[maxSize][]; - index = 3; - - data[0] = new byte[2]; // Placeholder for event size - data[1] = BitConverter.GetBytes(eventTime); - data[2] = new byte[] { GameManager.Int32ToByte((int)eventType) }; - } - - private void FlattenAndCopy(byte[][] data, int length, byte[] target, ref int index) - { - for (int i = 0; i < length; i++) - { - var values = data[i]; - Array.Copy(values, 0, target, index, values.Length); - index += values.Length; - } - } - - private void RemoveProcessedDataFromBuffer(int amountProcessed) - { - var oldBuffer = buffer; - index -= amountProcessed; - buffer = new byte[BufferMaxSizeBytes]; - Array.Copy(oldBuffer, amountProcessed, buffer, 0, index); - } - - private void ClearBuffer() - { - buffer = new byte[BufferMaxSizeBytes]; - index = 0; } private void HandleError() @@ -436,7 +265,323 @@ namespace Marro.PacManUdon DebugImageToIndicateOwner.SetFloat("Color", isOwner ? 1 : 0); } } + #endregion + #region Sender + public void SendEvent(NetworkEventType eventType) + { + if (!isOwner) + { + Debug.LogError($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Attempted {nameof(SendEvent)} while not the owner!"); + return; + } + + var eventTime = TimeToTimestamp(SyncedTime); + + InitializeEvent(eventType, eventTime, BufferMaxSizeBytes, out byte[][] data, out var index); + + foreach (var obj in syncedObjects) + { + obj.AppendSyncedData(data, ref index, eventType); + } + + // Get event size, skipping over the event size which is not yet included + ushort eventSize = 0; + for (int i = 0; i < index; i++) + { + eventSize += (ushort)data[i].Length; + } + + if (!EnsureSpaceToStoreEvent(eventSize)) + { + return; + } + + data[0] = BitConverter.GetBytes(eventSize); + + var oldIndex = this.bufferIndex; + + FlattenAndCopy(data, index, buffer, ref this.bufferIndex); + + Debug.Log($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Prepared event with {eventSize} bytes and timestamp {eventTime} for serialization, index went from {oldIndex} to {this.bufferIndex}"); + + RequestSerialization(); + + retriesWithoutSuccess = 0; // We had success! + } + + private static void InitializeEvent(NetworkEventType eventType, uint eventTime, int maxSize, out byte[][] data, out int index) + { + data = new byte[maxSize][]; + index = 3; + + data[0] = new byte[2]; // Placeholder for event size + data[1] = BitConverter.GetBytes(eventTime); + data[2] = new byte[] { GameManager.Int32ToByte((int)eventType) }; + } + #endregion + + #region Receiver + public void RequestEvent(NetworkEventType eventType) + { + if (isOwner) + { + Debug.LogError($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Attempted {nameof(RequestEvent)} while we are the owner!"); + return; + } + + SendCustomNetworkEvent(VRC.Udon.Common.Interfaces.NetworkEventTarget.Owner, "RequestEventReceived", eventType); + } + + private void ProcessIncomingData() + { + if (networkedData.Length == 0) + { + return; // Nothing to process + } + + Debug.Log($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Received {networkedData.Length} bytes!\nBytes received:\n{BytesToString(networkedData)}"); + + var length = networkedData.Length; + int index = 0; + while (index < length) + { + if (length - index < HeaderLength) + { + Debug.LogWarning($"({nameof(PacManUdon)} {nameof(NetworkManager)}) {nameof(ProcessIncomingData)}: Remaining data in networkedData is not long enough to form a complete event!"); + HandleError(); + return; + } + + var eventSize = networkedData[index + HeaderEventSizeIndex]; + var eventType = (NetworkEventType)networkedData[index + HeaderEventTypeIndex]; + + if (eventType == NetworkEventType.FullSync) + { + ProcessIncomingFullSync(index, eventSize); // Immediately process full sync + index += eventSize; + continue; + } + + if (!isSynced) + { + Debug.LogWarning($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Received event of type {eventType} while we are not yet synced to the remote time, ignoring event."); + index += eventSize; + continue; + } + + AppendEventToBuffer(index, eventSize); + index += eventSize; + } + } + + private void ProcessIncomingFullSync(int index, int size) + { + // Intentionally not doing a buffer size check here, since this is not appending to the buffer + // (and there is no good way to continue if event is too large) + + // Clear buffer and copy the full sync into it + buffer = new byte[size]; + Array.Copy(networkedData, index, buffer, 0, size); + this.bufferIndex = size; + + // Sync up to the time in the full sync + var timestamp = BitConverter.ToUInt32(networkedData, index + HeaderTimestampIndex); + SyncToTimestamp(timestamp); + + // Immediately apply the full sync + UpdateNextEventTime(); + isSynced = true; + } + + private void ProgressEventTime() + { + IsEventUpdate = true; + + while (bufferIndex != 0 && nextEventTime <= internalTime) + { + ProcessIncomingEvent(); + UpdateNextEventTime(); + } + } + + private void ProcessIncomingEvent() + { + var eventTime = TimestampToTime(BitConverter.ToUInt32(buffer, HeaderTimestampIndex)); + var eventType = (NetworkEventType)buffer[HeaderEventTypeIndex]; + var index = (int)HeaderLength; // Skip header + + ProgressSyncedTime(eventTime); + + foreach (var obj in syncedObjects) + { + obj.SyncedUpdate(); + } + + foreach (var obj in syncedObjects) + { + var success = obj.SetSyncedData(buffer, ref index, eventType); + + if (!success) + { + Debug.LogWarning($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Malformed data reported by {obj.name} during event type {eventType}!"); + HandleError(); + return; + } + + if (index > this.bufferIndex) + { + Debug.LogWarning($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Buffer overflow during {nameof(SyncedObject.SetSyncedData)} for {obj.name} in event type {eventType}!"); + HandleError(); + return; + } + } + + var eventSize = BitConverter.ToUInt16(buffer, HeaderEventSizeIndex); + if (index != eventSize) + { + Debug.LogWarning($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Amount of data read does not match event size! Expected {eventSize}, read {index}."); + HandleError(); + return; + } + + RemoveProcessedDataFromBuffer(index); + + Debug.Log($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Processed incoming event! Total {index} bytes."); + + retriesWithoutSuccess = 0; // We had success! + } + #endregion + + #region Buffer + private void ClearBuffer() + { + buffer = new byte[BufferMaxSizeBytes]; + bufferIndex = 0; + } + + private void RemoveProcessedDataFromBuffer(int amountProcessed) + { + var oldBuffer = buffer; + bufferIndex -= amountProcessed; + buffer = new byte[BufferMaxSizeBytes]; + Array.Copy(oldBuffer, amountProcessed, buffer, 0, bufferIndex); + } + + private bool IncreaseBufferSize(int newSize) + { + if (newSize < buffer.Length) + { + Debug.Log($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Cannot decrease the size of the buffer!"); + return false; + } + + if (newSize > BufferMaxSizeBytes) + { + return false; + } + + var oldBuffer = buffer; + buffer = new byte[newSize]; + oldBuffer.CopyTo(buffer, 0); + return true; + } + + private bool EnsureSpaceToStoreEvent(int eventSize) + { + if (bufferIndex + eventSize <= buffer.Length) + { + return true; // Enough space! + } + + var newBufferSize = ((bufferIndex + eventSize) / BufferIncrementSizeBytes + 1) * BufferIncrementSizeBytes; + + var success = IncreaseBufferSize(newBufferSize); + if (success) + { + return true; + } + + if (bufferIndex == 0) + { + Debug.LogError($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Buffer is not large enough to store event!"); + } + else + { + Debug.LogWarning($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Too much data in buffer to store event!"); + } + + HandleError(); // We can store event now that we cleared the buffer. + return false; + } + + private void AppendEventToBuffer(int index, int size) + { + if (!EnsureSpaceToStoreEvent(size)) + { + return; + } + + Array.Copy(networkedData, index, buffer, this.bufferIndex, size); + this.bufferIndex += size; + + UpdateNextEventTime(); + } + #endregion + + #region Time + private void ProgressSyncedTime(float newTime) + { + //Debug.Log($"({nameof(PacManUdon)} {nameof(NetworkManager)}) updating SyncedTime from {SyncedTime} to {newTime}"); + Dt = newTime - SyncedTime; + SyncedTime = newTime; + } + + private void SyncToTimestamp(uint timestamp) + { + var oldOffset = offsetTime; + var timeToSyncTo = timestamp / (float)TimestampMultiplier - Delay; + offsetTime = Time.fixedTime - timeToSyncTo; + + var delta = offsetTime - oldOffset; + internalTime = internalTime - delta; + SyncedTime = SyncedTime - delta; + + Debug.Log($"({nameof(PacManUdon)} {nameof(NetworkManager)}) Synced to timestamp {timestamp}, current time is {Time.fixedTime}, timeToSyncTo is {timeToSyncTo}, offsetTime is now {offsetTime}, internalTime is now {internalTime}, SyncedTime is now {SyncedTime}"); + } + + private void UpdateNextEventTime() + { + if (bufferIndex == 0) + { + return; + } + + var nextEventTime = TimestampToTime(BitConverter.ToUInt32(buffer, HeaderTimestampIndex)); + if (nextEventTime >= this.nextEventTime) + { + this.nextEventTime = nextEventTime; + } + else + { + Debug.LogWarning($"({nameof(PacManUdon)} {nameof(NetworkManager)}) New event is earlier than previous event!"); + HandleError(); + return; + } + } + + public static uint TimeToTimestamp(float time) + { + return (uint)((time * TimestampMultiplier) + TimestampZeroValue); + } + + public static float TimestampToTime(uint timeStamp) + { + return (timeStamp - (long)TimestampZeroValue) / (float)TimestampMultiplier; // Use a long here to prevent an underflow + } + #endregion + + #region VRC events public override void OnOwnershipTransferred(VRCPlayerApi newOwner) { SetOwner(newOwner == Networking.LocalPlayer); @@ -451,8 +596,8 @@ namespace Marro.PacManUdon { if (isOwner) { - networkedData = new byte[index]; - Array.Copy(buffer, networkedData, index); + networkedData = new byte[bufferIndex]; + Array.Copy(buffer, networkedData, bufferIndex); } else { @@ -487,30 +632,9 @@ namespace Marro.PacManUdon ProcessIncomingData(); } } + #endregion - private void UpdateTime(long timeTicks) - { - CurrentTimeTicks = timeTicks; - - foreach (var obj in syncedObjects) - { - obj.Dt = (timeTicks - obj.LastUpdateTicks) / (float)TimeSpan.TicksPerSecond; - obj.LastUpdateTicks = timeTicks; - } - } - - public uint GetTimestamp(long timeTicks) - { - return (uint)((timeTicks - startTimeTicks) / TimeSpan.TicksPerMillisecond); - } - - public long GetTimeTicks(uint timeStamp) - { - return timeStamp * TimeSpan.TicksPerMillisecond + startTimeTicks; - } - - public bool IsOwner => isOwner; - + #region Utils public string BytesToString(byte[] bytes) { var sb = new StringBuilder("new byte[] { "); @@ -521,5 +645,23 @@ namespace Marro.PacManUdon sb.Append("}"); return sb.ToString(); } + + private static void FlattenAndCopy(byte[][] data, int length, byte[] target, ref int index) + { + for (int i = 0; i < length; i++) + { + var values = data[i]; + Array.Copy(values, 0, target, index, values.Length); + index += values.Length; + } + } + #endregion + + #region Debug + public void SimulateSyncToTimestamp(uint timestamp) + { + SyncToTimestamp(timestamp); + } + #endregion } } diff --git a/Assets/Scripts/PacMan.asset b/Assets/Scripts/PacMan.asset index 4dfe3d1..2917ba8 100644 --- a/Assets/Scripts/PacMan.asset +++ b/Assets/Scripts/PacMan.asset @@ -43,25 +43,25 @@ MonoBehaviour: Data: - Name: Entry: 12 - Data: 24 + Data: 22 - Name: Entry: 7 Data: - Name: $k Entry: 1 - Data: k__BackingField + Data: direction - Name: $v Entry: 7 Data: 2|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: k__BackingField + Data: direction - Name: k__BackingField Entry: 7 Data: 3|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: System.Int64, mscorlib + Data: UnityEngine.Vector2, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -103,124 +103,16 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data:
k__BackingField + Data: gameController - Name: $v Entry: 7 Data: 5|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data:
k__BackingField + Data: gameController - Name: k__BackingField Entry: 7 Data: 6|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: System.Single, mscorlib - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 9 - Data: 6 - - 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: 7|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: direction - - Name: $v - Entry: 7 - Data: 8|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: direction - - Name: k__BackingField - Entry: 7 - Data: 9|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: UnityEngine.Vector2, UnityEngine.CoreModule - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 9 - Data: 9 - - 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: 10|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: gameController - - Name: $v - Entry: 7 - Data: 11|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: gameController - - Name: k__BackingField - Entry: 7 - Data: 12|System.RuntimeType, mscorlib - Name: Entry: 1 Data: Marro.PacManUdon.GameManager, Assembly-CSharp @@ -229,7 +121,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 7 - Data: 13|System.RuntimeType, mscorlib + Data: 7|System.RuntimeType, mscorlib - Name: Entry: 1 Data: VRC.Udon.UdonBehaviour, VRC.Udon @@ -248,6 +140,114 @@ MonoBehaviour: - 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: 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: input + - Name: $v + Entry: 7 + Data: 9|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: input + - Name: k__BackingField + Entry: 7 + Data: 10|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: Marro.PacManUdon.PlayerInput, Assembly-CSharp + - 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: 6 + Data: + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 5 + Data: false + - Name: _fieldAttributes + Entry: 7 + Data: 11|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: defaultSpeed + - Name: $v + Entry: 7 + Data: 12|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: defaultSpeed + - Name: k__BackingField + Entry: 7 + Data: 13|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: System.Single, mscorlib + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 9 + Data: 13 + - 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: 14|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib @@ -271,22 +271,16 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: input + Data: powerPelletSpeed - Name: $v Entry: 7 Data: 15|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: input + Data: powerPelletSpeed - Name: k__BackingField - Entry: 7 - Data: 16|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: Marro.PacManUdon.PlayerInput, Assembly-CSharp - - Name: - Entry: 8 - Data: + Entry: 9 + Data: 13 - Name: k__BackingField Entry: 9 Data: 13 @@ -304,7 +298,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 17|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 16|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -325,19 +319,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: defaultSpeed + Data: speed - Name: $v Entry: 7 - Data: 18|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 17|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: defaultSpeed + Data: speed - Name: k__BackingField Entry: 9 - Data: 6 + Data: 13 - Name: k__BackingField Entry: 9 - Data: 6 + Data: 13 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -352,7 +346,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 19|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 18|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -373,19 +367,25 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: powerPelletSpeed + Data: startPosition - Name: $v Entry: 7 - Data: 20|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 19|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: powerPelletSpeed + Data: startPosition - Name: k__BackingField - Entry: 9 - Data: 6 + Entry: 7 + Data: 20|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: UnityEngine.Vector3, UnityEngine.CoreModule + - Name: + Entry: 8 + Data: - Name: k__BackingField Entry: 9 - Data: 6 + Data: 20 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -421,19 +421,25 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: speed + Data: startRotation - Name: $v Entry: 7 Data: 22|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: speed + Data: startRotation - Name: k__BackingField - Entry: 9 - Data: 6 + Entry: 7 + Data: 23|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: UnityEngine.Quaternion, UnityEngine.CoreModule + - Name: + Entry: 8 + Data: - Name: k__BackingField Entry: 9 - Data: 6 + Data: 23 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -448,7 +454,7 @@ 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: 0 @@ -469,25 +475,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: startPosition + Data: startScale - Name: $v Entry: 7 - Data: 24|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 25|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: startPosition + Data: startScale - Name: k__BackingField - Entry: 7 - Data: 25|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: UnityEngine.Vector3, UnityEngine.CoreModule - - Name: - Entry: 8 - Data: + Entry: 9 + Data: 20 - Name: k__BackingField Entry: 9 - Data: 25 + Data: 20 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -523,19 +523,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: startRotation + Data: animator - Name: $v Entry: 7 Data: 27|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: startRotation + Data: animator - Name: k__BackingField Entry: 7 Data: 28|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: UnityEngine.Quaternion, UnityEngine.CoreModule + Data: UnityEngine.Animator, UnityEngine.AnimationModule - Name: Entry: 8 Data: @@ -577,118 +577,16 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: startScale + Data: renderer - Name: $v Entry: 7 Data: 30|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: startScale - - Name: k__BackingField - Entry: 9 - Data: 25 - - Name: k__BackingField - Entry: 9 - Data: 25 - - 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: 31|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: animator - - Name: $v - Entry: 7 - Data: 32|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: animator - - Name: k__BackingField - Entry: 7 - Data: 33|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: UnityEngine.Animator, UnityEngine.AnimationModule - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 9 - Data: 33 - - 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: 34|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: renderer - - Name: $v - Entry: 7 - Data: 35|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: renderer - Name: k__BackingField Entry: 7 - Data: 36|System.RuntimeType, mscorlib + Data: 31|System.RuntimeType, mscorlib - Name: Entry: 1 Data: UnityEngine.Renderer, UnityEngine.CoreModule @@ -697,7 +595,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 36 + Data: 31 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -712,7 +610,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 37|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 @@ -736,13 +634,13 @@ MonoBehaviour: Data: pelletPool - Name: $v Entry: 7 - Data: 38|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 33|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: pelletPool - Name: k__BackingField Entry: 7 - Data: 39|System.RuntimeType, mscorlib + Data: 34|System.RuntimeType, mscorlib - Name: Entry: 1 Data: VRC.SDK3.Components.VRCObjectPool, VRCSDK3 @@ -751,7 +649,109 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 9 - Data: 39 + Data: 34 + - 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: 35|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: hideUntilUnfrozen + - Name: $v + Entry: 7 + Data: 36|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: hideUntilUnfrozen + - Name: k__BackingField + Entry: 7 + Data: 37|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: System.Boolean, mscorlib + - Name: + Entry: 8 + Data: + - Name: k__BackingField + Entry: 9 + Data: 37 + - 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: 38|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: dead + - Name: $v + Entry: 7 + Data: 39|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: dead + - Name: k__BackingField + Entry: 9 + Data: 37 + - Name: k__BackingField + Entry: 9 + Data: 37 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -787,25 +787,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: hideUntilUnfrozen + Data: kinematic - Name: $v Entry: 7 Data: 41|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: hideUntilUnfrozen + Data: kinematic - Name: k__BackingField - Entry: 7 - Data: 42|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: System.Boolean, mscorlib - - Name: - Entry: 8 - Data: + Entry: 9 + Data: 37 - Name: k__BackingField Entry: 9 - Data: 42 + Data: 37 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -820,7 +814,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 43|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 42|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -841,19 +835,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: dead + Data: followingPredefinedPath - Name: $v Entry: 7 - Data: 44|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 43|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: dead + Data: followingPredefinedPath - Name: k__BackingField Entry: 9 - Data: 42 + Data: 37 - Name: k__BackingField Entry: 9 - Data: 42 + Data: 37 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -868,7 +862,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 45|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 44|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -889,19 +883,25 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: kinematic + Data: predefinedPath - Name: $v Entry: 7 - Data: 46|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 45|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: kinematic + Data: predefinedPath - Name: k__BackingField - Entry: 9 - Data: 42 + Entry: 7 + Data: 46|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: UnityEngine.Vector2[], UnityEngine.CoreModule + - Name: + Entry: 8 + Data: - Name: k__BackingField Entry: 9 - Data: 42 + Data: 46 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -937,19 +937,25 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: followingPredefinedPath + Data: predefinedPathIndex - Name: $v Entry: 7 Data: 48|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: followingPredefinedPath + Data: predefinedPathIndex - Name: k__BackingField - Entry: 9 - Data: 42 + Entry: 7 + Data: 49|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: System.Int32, mscorlib + - Name: + Entry: 8 + Data: - Name: k__BackingField Entry: 9 - Data: 42 + Data: 49 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -964,7 +970,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 49|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 50|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -985,25 +991,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: predefinedPath + Data: syncedPosition - Name: $v Entry: 7 - Data: 50|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 51|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: predefinedPath + Data: syncedPosition - Name: k__BackingField - Entry: 7 - Data: 51|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: UnityEngine.Vector2[], UnityEngine.CoreModule - - Name: - Entry: 8 - Data: + Entry: 9 + Data: 3 - Name: k__BackingField Entry: 9 - Data: 51 + Data: 3 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1039,121 +1039,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: predefinedPathIndex + Data: targetDirection - Name: $v Entry: 7 Data: 53|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: predefinedPathIndex - - Name: k__BackingField - Entry: 7 - Data: 54|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: System.Int32, mscorlib - - Name: - Entry: 8 - Data: - - Name: k__BackingField - Entry: 9 - Data: 54 - - 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: 55|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: syncedPosition - - Name: $v - Entry: 7 - Data: 56|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: syncedPosition - - Name: k__BackingField - Entry: 9 - Data: 9 - - Name: k__BackingField - Entry: 9 - Data: 9 - - 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: 57|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: targetDirection - - Name: $v - Entry: 7 - Data: 58|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: targetDirection - Name: k__BackingField Entry: 9 - Data: 9 + Data: 3 - Name: k__BackingField Entry: 9 - Data: 9 + Data: 3 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1168,7 +1066,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 59|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 54|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -1192,16 +1090,16 @@ MonoBehaviour: Data: freezeSeconds - Name: $v Entry: 7 - Data: 60|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 55|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: freezeSeconds - Name: k__BackingField Entry: 9 - Data: 6 + Data: 13 - Name: k__BackingField Entry: 9 - Data: 6 + Data: 13 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1216,7 +1114,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 61|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 56|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -1240,16 +1138,16 @@ MonoBehaviour: Data: frozen - Name: $v Entry: 7 - Data: 62|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 57|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: frozen - Name: k__BackingField Entry: 9 - Data: 42 + Data: 37 - Name: k__BackingField Entry: 9 - Data: 42 + Data: 37 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -1264,7 +1162,7 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 63|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 58|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 diff --git a/Assets/Scripts/PacMan.cs b/Assets/Scripts/PacMan.cs index bd7fcfd..bddc694 100644 --- a/Assets/Scripts/PacMan.cs +++ b/Assets/Scripts/PacMan.cs @@ -75,7 +75,7 @@ animator.SetTrigger("Reset"); } - public override void FixedUpdate() + public override void SyncedUpdate() { // gameStateManager.statusDisplay.SetDebugText(1, this.targetDirection.ToString()); diff --git a/Assets/Scripts/SyncedObject.cs b/Assets/Scripts/SyncedObject.cs index 9517542..9739f08 100644 --- a/Assets/Scripts/SyncedObject.cs +++ b/Assets/Scripts/SyncedObject.cs @@ -6,9 +6,7 @@ namespace Marro.PacManUdon { public abstract class SyncedObject : UdonSharpBehaviour { - public long LastUpdateTicks { get; set; } - public float Dt { get; set; } - public abstract void FixedUpdate(); + public abstract void SyncedUpdate(); public abstract void AppendSyncedData(byte[][] data, ref int index, NetworkEventType eventType); public abstract bool SetSyncedData(byte[] data, ref int index, NetworkEventType eventType); } diff --git a/Assets/Test stuff/TestBall.asset b/Assets/Test stuff/TestBall.asset index 2cd03f0..bde288c 100644 --- a/Assets/Test stuff/TestBall.asset +++ b/Assets/Test stuff/TestBall.asset @@ -49,19 +49,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: k__BackingField + Data: start - Name: $v Entry: 7 Data: 2|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: k__BackingField + Data: start - Name: k__BackingField Entry: 7 Data: 3|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: System.Int64, mscorlib + Data: UnityEngine.Transform, UnityEngine.CoreModule - Name: Entry: 8 Data: @@ -79,13 +79,19 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 5 - Data: false + Data: true - Name: _fieldAttributes Entry: 7 Data: 4|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 - Data: 0 + Data: 1 + - Name: + Entry: 7 + Data: 5|UnityEngine.SerializeField, UnityEngine.CoreModule + - Name: + Entry: 8 + Data: - Name: Entry: 13 Data: @@ -103,25 +109,19 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data:
k__BackingField + Data: end - Name: $v Entry: 7 - Data: 5|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 6|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data:
k__BackingField + Data: end - Name: k__BackingField - Entry: 7 - Data: 6|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: System.Single, mscorlib - - Name: - Entry: 8 - Data: + Entry: 9 + Data: 3 - Name: k__BackingField Entry: 9 - Data: 6 + Data: 3 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -133,13 +133,85 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 5 - Data: false + Data: true - Name: _fieldAttributes Entry: 7 Data: 7|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 - Data: 0 + Data: 1 + - Name: + Entry: 7 + Data: 8|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: mode + - Name: $v + Entry: 7 + Data: 9|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: mode + - Name: k__BackingField + Entry: 7 + Data: 10|System.RuntimeType, mscorlib + - Name: + Entry: 1 + Data: TestBallMode, Assembly-CSharp + - Name: + Entry: 8 + Data: + - 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: 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: 12|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + - Name: + Entry: 12 + Data: 1 + - Name: + Entry: 7 + Data: 13|UnityEngine.SerializeField, UnityEngine.CoreModule + - Name: + Entry: 8 + Data: - Name: Entry: 13 Data: @@ -160,13 +232,13 @@ MonoBehaviour: Data: networkManager - Name: $v Entry: 7 - Data: 8|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 14|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: networkManager - Name: k__BackingField Entry: 7 - Data: 9|System.RuntimeType, mscorlib + Data: 15|System.RuntimeType, mscorlib - Name: Entry: 1 Data: Marro.PacManUdon.NetworkManager, Assembly-CSharp @@ -175,7 +247,7 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 7 - Data: 10|System.RuntimeType, mscorlib + Data: 16|System.RuntimeType, mscorlib - Name: Entry: 1 Data: VRC.Udon.UdonBehaviour, VRC.Udon @@ -193,19 +265,13 @@ MonoBehaviour: Data: - Name: k__BackingField Entry: 5 - Data: true + Data: false - Name: _fieldAttributes Entry: 7 - Data: 11|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 17|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 - Data: 1 - - Name: - Entry: 7 - Data: 12|UnityEngine.SerializeField, UnityEngine.CoreModule - - Name: - Entry: 8 - Data: + Data: 0 - Name: Entry: 13 Data: @@ -223,133 +289,25 @@ MonoBehaviour: Data: - Name: $k Entry: 1 - Data: start + Data: sumOfDt - Name: $v Entry: 7 - Data: 13|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 18|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 - Data: start + Data: sumOfDt - Name: k__BackingField Entry: 7 - Data: 14|System.RuntimeType, mscorlib + Data: 19|System.RuntimeType, mscorlib - Name: Entry: 1 - Data: UnityEngine.Transform, UnityEngine.CoreModule + 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: true - - Name: _fieldAttributes - Entry: 7 - Data: 15|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - - Name: - Entry: 12 - Data: 1 - - Name: - Entry: 7 - Data: 16|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: end - - Name: $v - Entry: 7 - Data: 17|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: end - - Name: k__BackingField - Entry: 9 - Data: 14 - - 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: true - - Name: _fieldAttributes - Entry: 7 - Data: 18|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - - Name: - Entry: 12 - Data: 1 - - Name: - Entry: 7 - Data: 19|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: amountUp - - Name: $v - Entry: 7 - Data: 20|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - - Name: k__BackingField - Entry: 1 - Data: amountUp - - Name: k__BackingField - Entry: 9 - Data: 6 - - Name: k__BackingField - Entry: 9 - Data: 6 + Data: 19 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib @@ -364,7 +322,55 @@ MonoBehaviour: Data: false - Name: _fieldAttributes Entry: 7 - Data: 21|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib + Data: 20|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: amountUp + - Name: $v + Entry: 7 + Data: 21|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + - Name: k__BackingField + Entry: 1 + Data: amountUp + - Name: k__BackingField + Entry: 9 + Data: 19 + - Name: k__BackingField + Entry: 9 + Data: 19 + - 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: 22|System.Collections.Generic.List`1[[System.Attribute, mscorlib]], mscorlib - Name: Entry: 12 Data: 0 @@ -388,22 +394,16 @@ MonoBehaviour: Data: loopOffset - Name: $v Entry: 7 - Data: 22|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor + Data: 23|UdonSharp.Compiler.FieldDefinition, UdonSharp.Editor - Name: k__BackingField Entry: 1 Data: loopOffset - Name: k__BackingField - Entry: 7 - Data: 23|System.RuntimeType, mscorlib - - Name: - Entry: 1 - Data: System.Int32, mscorlib - - Name: - Entry: 8 - Data: + Entry: 9 + Data: 11 - Name: k__BackingField Entry: 9 - Data: 23 + Data: 11 - Name: k__BackingField Entry: 7 Data: System.Nullable`1[[UdonSharp.UdonSyncMode, UdonSharp.Runtime]], mscorlib diff --git a/Assets/Test stuff/TestBall.cs b/Assets/Test stuff/TestBall.cs index b7359b3..3baf96b 100644 --- a/Assets/Test stuff/TestBall.cs +++ b/Assets/Test stuff/TestBall.cs @@ -3,32 +3,49 @@ using Marro.PacManUdon; using System; using System.Drawing.Text; using UnityEngine; +using VRC.SDKBase; + + +enum TestBallMode +{ + UseNetworkTime, + UseNetworkDt, + UseUnityDt, +} public class TestBall : SyncedObject { - [SerializeField] private NetworkManager networkManager; [SerializeField] private Transform start; [SerializeField] private Transform end; + [SerializeField] private TestBallMode mode; + + private NetworkManager networkManager; + private const int LoopTimeMs = 1000; private const float MaxUp = 0.7f; private const float UpPerPress = 0.4f; private const float DownPerSecond = 1; + private float sumOfDt; + private float amountUp = 0; private int loopOffset = 0; - private void Start() + public void Initialize(NetworkManager networkManager) { - networkManager.Initialize(); + this.networkManager = networkManager; + sumOfDt = networkManager.SyncedTime; } - public override void FixedUpdate() + public override void SyncedUpdate() { - DeltaUp(-DownPerSecond * Dt); + DeltaUp(-DownPerSecond * networkManager.Dt); + + UpdateProgress(); float progress = GetProgress(); - transform.position = Vector3.Lerp(start.position, end.position, progress) + amountUp * MaxUp * Vector3.up;; + transform.position = Vector3.Lerp(start.position, end.position, progress) + amountUp * MaxUp * Vector3.up; } private void DeltaUp(float delta) @@ -38,16 +55,48 @@ public class TestBall : SyncedObject private void SetProgress(float progress) { - var currentTimestamp = networkManager.GetTimestamp(networkManager.CurrentTimeTicks); + var currentTimestamp = NetworkManager.TimeToTimestamp(networkManager.SyncedTime); loopOffset = (int)(currentTimestamp - progress * LoopTimeMs); } private float GetProgress() { - var currentTimestamp = networkManager.GetTimestamp(networkManager.CurrentTimeTicks); + var currentTimestamp = GetCurrentTimestamp(); + //Debug.Log($"CurrentTimeStamp for mode {mode}: {currentTimestamp}"); return ((int)currentTimestamp - loopOffset) % LoopTimeMs / (float)LoopTimeMs; // "uint % int" is not exposed, I love working in Udon } + private uint GetCurrentTimestamp() + { + switch (mode) + { + case TestBallMode.UseNetworkTime: + return NetworkManager.TimeToTimestamp(networkManager.SyncedTime); + case TestBallMode.UseNetworkDt: + case TestBallMode.UseUnityDt: + return NetworkManager.TimeToTimestamp(sumOfDt); + default: + Debug.LogError($"({nameof(TestBall)}) Unknown mode {mode}!"); + return 0; + } + } + + private void UpdateProgress() + { + switch (mode) + { + case TestBallMode.UseNetworkDt: + sumOfDt += networkManager.Dt; + break; + case TestBallMode.UseUnityDt: + if (!networkManager.IsEventUpdate) + { + sumOfDt += Time.fixedDeltaTime; + } + break; + } + } + public void UpButtonPressed() { DeltaUp(UpPerPress); @@ -55,12 +104,6 @@ public class TestBall : SyncedObject networkManager.SendEvent((NetworkEventType)1); } - public void SyncButtonPressed() - { - networkManager.SendEvent((NetworkEventType)0); - Debug.Log($"({nameof(TestBall)}) Sync button pressed, synced at progress {GetProgress()} and amountUp {amountUp}."); - } - public override void AppendSyncedData(byte[][] data, ref int index, NetworkEventType eventType) { if (eventType == 0) diff --git a/Assets/Test stuff/TestBallManager.asset b/Assets/Test stuff/TestBallManager.asset new file mode 100644 index 0000000..03f3bb0 --- /dev/null +++ b/Assets/Test stuff/TestBallManager.asset @@ -0,0 +1,52 @@ +%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: TestBallManager + m_EditorClassIdentifier: + serializedUdonProgramAsset: {fileID: 11400000, guid: 007782662b6528e4a855cc8fb5cca273, type: 2} + udonAssembly: + assemblyError: + sourceCsScript: {fileID: 11500000, guid: 40fc654db4dfd4f4c9cdf45903f134a3, type: 3} + scriptVersion: 2 + compiledVersion: 2 + behaviourSyncMode: 0 + hasInteractEvent: 0 + scriptID: 8109348476653380640 + 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: 0 + - Name: + Entry: 13 + Data: + - Name: + Entry: 8 + Data: diff --git a/Assets/Test stuff/TestBallManager.asset.meta b/Assets/Test stuff/TestBallManager.asset.meta new file mode 100644 index 0000000..c6174ae --- /dev/null +++ b/Assets/Test stuff/TestBallManager.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 366d931a37811ce47be572127126c17b +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Test stuff/TestBallManager.cs b/Assets/Test stuff/TestBallManager.cs new file mode 100644 index 0000000..b1c4bfa --- /dev/null +++ b/Assets/Test stuff/TestBallManager.cs @@ -0,0 +1,43 @@ + +using Marro.PacManUdon; +using UdonSharp; +using UnityEngine; +using VRC.SDKBase; +using VRC.Udon; + +public class TestBallManager : UdonSharpBehaviour +{ + [SerializeField] TestBall[] testBalls; + [SerializeField] NetworkManager networkManager; + void Start() + { + networkManager.Initialize(); + foreach (var testBall in testBalls) + { + testBall.Initialize(networkManager); + } + } + + public void UpButtonPressed() + { + foreach (var testBall in testBalls) + { + testBall.UpButtonPressed(); + } + + networkManager.SendEvent((NetworkEventType)1); + } + + public void SyncButtonPressed() + { + if (VRCPlayerApi.GetPlayerCount() == 1) + { + networkManager.SimulateSyncToTimestamp(NetworkManager.TimeToTimestamp(networkManager.SyncedTime - 0.5f)); + } + else + { + networkManager.SendEvent((NetworkEventType)0); + } + Debug.Log($"({nameof(TestBall)}) Sync button pressed, synced at progress {GetProgress()} and amountUp {amountUp}."); + } +} diff --git a/Assets/Test stuff/TestBallManager.cs.meta b/Assets/Test stuff/TestBallManager.cs.meta new file mode 100644 index 0000000..beccb05 --- /dev/null +++ b/Assets/Test stuff/TestBallManager.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 40fc654db4dfd4f4c9cdf45903f134a3 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: