From ecad12e194f39072d844f4d5030a5f4b19e7a81a Mon Sep 17 00:00:00 2001 From: Carleton DiLeo Date: Sun, 2 Apr 2017 15:16:06 -0700 Subject: [PATCH 1/2] Move and multiply now works and shows double spawn issue --- .../csharp_framework.cache.json | 2 +- .../csharp_framework.cache.json | 2 +- workers/unity/.vscode/settings.json | 56 +++++++++++++++++++ workers/unity/Assets/Editor/SnapshotMenu.cs | 3 +- .../unity/Assets/EntityPrefabs/Crate.prefab | 14 +++++ .../unity/Assets/EntityPrefabs/Terrain.prefab | 42 +++++++------- .../EntityTemplates/CrateEntityTemplate.cs | 4 +- .../Pirates/Behaviours/CreateMoreCrates.cs | 46 +++++++++++++++ .../Behaviours/CreateMoreCrates.cs.meta | 12 ++++ .../Gamelogic/Pirates/Behaviours/Mover.cs | 2 +- workers/unity/Assets/HandleCrates.cs | 1 + workers/unity/Assets/Plugins.meta | 6 +- .../unity/Assets/Resources/EntityPrefabs.meta | 6 +- workers/unity/Assets/ToggleControl.cs | 1 + .../ProjectSettings/ProjectSettings.asset | 8 +++ .../unity/ProjectSettings/ProjectVersion.txt | 2 +- .../ProjectSettings/QualitySettings.asset | 2 +- .../unity/ProjectSettings/TagManager.asset | 1 + 18 files changed, 176 insertions(+), 34 deletions(-) create mode 100644 workers/unity/.vscode/settings.json create mode 100644 workers/unity/Assets/Gamelogic/Pirates/Behaviours/CreateMoreCrates.cs create mode 100644 workers/unity/Assets/Gamelogic/Pirates/Behaviours/CreateMoreCrates.cs.meta diff --git a/workers/unity/.spatialos/schema_codegen_cache_std/csharp_framework/csharp_framework.cache.json b/workers/unity/.spatialos/schema_codegen_cache_std/csharp_framework/csharp_framework.cache.json index 3ce9b86..3defacd 100644 --- a/workers/unity/.spatialos/schema_codegen_cache_std/csharp_framework/csharp_framework.cache.json +++ b/workers/unity/.spatialos/schema_codegen_cache_std/csharp_framework/csharp_framework.cache.json @@ -1 +1 @@ -{"InputFilesLastModified":[{"InputPath":"D:\\Projects\\SpatialProjects\\PiratesTutorial\\build\\dependencies\\schema\\WorkerSdkSchema\\improbable\\standard_library.schema","LastModified":1488470764}],"MiscData":["csharp_framework","D:\\Projects\\SpatialProjects\\PiratesTutorial\\build\\unity\\Generated\\Std",".spatialos/schema_codegen_proto_std","9.1.0"]} \ No newline at end of file +{"InputFilesLastModified":[{"InputPath":"C:\\Dev\\control_example2\\build\\dependencies\\schema\\WorkerSdkSchema\\improbable\\standard_library.schema","LastModified":1491087801}],"MiscData":["csharp_framework","C:\\Dev\\control_example2\\build\\unity\\Generated\\Std",".spatialos/schema_codegen_proto_std","9.1.0"]} \ No newline at end of file diff --git a/workers/unity/.spatialos/schema_codegen_cache_usr/csharp_framework/csharp_framework.cache.json b/workers/unity/.spatialos/schema_codegen_cache_usr/csharp_framework/csharp_framework.cache.json index ae09a49..bc9dc27 100644 --- a/workers/unity/.spatialos/schema_codegen_cache_usr/csharp_framework/csharp_framework.cache.json +++ b/workers/unity/.spatialos/schema_codegen_cache_usr/csharp_framework/csharp_framework.cache.json @@ -1 +1 @@ -{"InputFilesLastModified":[{"InputPath":"D:\\Projects\\SpatialProjects\\PiratesTutorial\\build\\dependencies\\schema\\WorkerSdkSchema\\improbable\\standard_library.schema","LastModified":1488470764},{"InputPath":"D:\\Projects\\SpatialProjects\\PiratesTutorial\\schema\\improbable\\core\\Nothing.schema","LastModified":1488470761},{"InputPath":"D:\\Projects\\SpatialProjects\\PiratesTutorial\\schema\\improbable\\crate\\Controllable.schema","LastModified":1488470761},{"InputPath":"D:\\Projects\\SpatialProjects\\PiratesTutorial\\schema\\improbable\\crate\\Crate.schema","LastModified":1488470761},{"InputPath":"D:\\Projects\\SpatialProjects\\PiratesTutorial\\schema\\improbable\\general\\WorldTransform.schema","LastModified":1488470761},{"InputPath":"D:\\Projects\\SpatialProjects\\PiratesTutorial\\schema\\improbable\\player\\Handling.schema","LastModified":1488470761},{"InputPath":"D:\\Projects\\SpatialProjects\\PiratesTutorial\\schema\\improbable\\player\\PlayerLifecycle.schema","LastModified":1488470305},{"InputPath":"D:\\Projects\\SpatialProjects\\PiratesTutorial\\schema\\improbable\\player\\Spawner.schema","LastModified":1488470305},{"InputPath":"D:\\Projects\\SpatialProjects\\PiratesTutorial\\schema\\improbable\\ship\\ShipControls.schema","LastModified":1488470305},{"InputPath":"D:\\Projects\\SpatialProjects\\PiratesTutorial\\schema\\improbable\\terrain\\Terrain.schema","LastModified":1488470305}],"MiscData":["csharp_framework","D:\\Projects\\SpatialProjects\\PiratesTutorial\\build\\unity\\Generated\\Usr",".spatialos/schema_codegen_proto_usr","9.1.0"]} \ No newline at end of file +{"InputFilesLastModified":[{"InputPath":"C:\\Dev\\control_example2\\build\\dependencies\\schema\\WorkerSdkSchema\\improbable\\standard_library.schema","LastModified":1491087801},{"InputPath":"C:\\Dev\\control_example2\\schema\\improbable\\core\\Nothing.schema","LastModified":1490074621},{"InputPath":"C:\\Dev\\control_example2\\schema\\improbable\\crate\\Controllable.schema","LastModified":1490074621},{"InputPath":"C:\\Dev\\control_example2\\schema\\improbable\\crate\\Crate.schema","LastModified":1490074621},{"InputPath":"C:\\Dev\\control_example2\\schema\\improbable\\general\\WorldTransform.schema","LastModified":1490074621},{"InputPath":"C:\\Dev\\control_example2\\schema\\improbable\\player\\Handling.schema","LastModified":1490074621},{"InputPath":"C:\\Dev\\control_example2\\schema\\improbable\\player\\PlayerLifecycle.schema","LastModified":1490074621},{"InputPath":"C:\\Dev\\control_example2\\schema\\improbable\\player\\Spawner.schema","LastModified":1490074621},{"InputPath":"C:\\Dev\\control_example2\\schema\\improbable\\ship\\ShipControls.schema","LastModified":1490074621},{"InputPath":"C:\\Dev\\control_example2\\schema\\improbable\\terrain\\Terrain.schema","LastModified":1490074621}],"MiscData":["csharp_framework","C:\\Dev\\control_example2\\build\\unity\\Generated\\Usr",".spatialos/schema_codegen_proto_usr","9.1.0"]} \ No newline at end of file diff --git a/workers/unity/.vscode/settings.json b/workers/unity/.vscode/settings.json new file mode 100644 index 0000000..4edd970 --- /dev/null +++ b/workers/unity/.vscode/settings.json @@ -0,0 +1,56 @@ +{ + "files.exclude": + { + "**/.DS_Store":true, + "**/.git":true, + "**/.gitignore":true, + "**/.gitmodules":true, + "**/*.booproj":true, + "**/*.pidb":true, + "**/*.suo":true, + "**/*.user":true, + "**/*.userprefs":true, + "**/*.unityproj":true, + "**/*.dll":true, + "**/*.exe":true, + "**/*.pdf":true, + "**/*.mid":true, + "**/*.midi":true, + "**/*.wav":true, + "**/*.gif":true, + "**/*.ico":true, + "**/*.jpg":true, + "**/*.jpeg":true, + "**/*.png":true, + "**/*.psd":true, + "**/*.tga":true, + "**/*.tif":true, + "**/*.tiff":true, + "**/*.3ds":true, + "**/*.3DS":true, + "**/*.fbx":true, + "**/*.FBX":true, + "**/*.lxo":true, + "**/*.LXO":true, + "**/*.ma":true, + "**/*.MA":true, + "**/*.obj":true, + "**/*.OBJ":true, + "**/*.asset":true, + "**/*.cubemap":true, + "**/*.flare":true, + "**/*.mat":true, + "**/*.meta":true, + "**/*.prefab":true, + "**/*.unity":true, + "build/":true, + "Build/":true, + "Library/":true, + "library/":true, + "obj/":true, + "Obj/":true, + "ProjectSettings/":true, + "temp/":true, + "Temp/":true + } +} \ No newline at end of file diff --git a/workers/unity/Assets/Editor/SnapshotMenu.cs b/workers/unity/Assets/Editor/SnapshotMenu.cs index 9485851..243529a 100644 --- a/workers/unity/Assets/Editor/SnapshotMenu.cs +++ b/workers/unity/Assets/Editor/SnapshotMenu.cs @@ -6,6 +6,7 @@ using UnityEngine; using JetBrains.Annotations; using UnityEditor; +using Improbable.Math; public class SnapshotMenu : MonoBehaviour { @@ -21,7 +22,7 @@ private static void GenerateSnapshotProgrammatically() snapshotEntities.Add(new EntityId(currentEntityId++), TerrainEntityTemplate.GenerateTerrainSnapshotEntityTemplate()); snapshotEntities.Add(new EntityId(currentEntityId++), PlayerSpawnerEntityTemplate.GeneratePlayerSpawnerSnapshotEntityTemplate()); - snapshotEntities.Add(new EntityId(currentEntityId++), CrateEntityTemplate.GenerateCrateEntityTemplate()); + snapshotEntities.Add(new EntityId(currentEntityId++), CrateEntityTemplate.GenerateCrateEntityTemplate(new Coordinates(1, 6, 9))); SaveSnapshot(snapshotEntities); } diff --git a/workers/unity/Assets/EntityPrefabs/Crate.prefab b/workers/unity/Assets/EntityPrefabs/Crate.prefab index b1da2c4..b67cc39 100644 --- a/workers/unity/Assets/EntityPrefabs/Crate.prefab +++ b/workers/unity/Assets/EntityPrefabs/Crate.prefab @@ -27,6 +27,7 @@ GameObject: - component: {fileID: 54539613770995770} - component: {fileID: 114032553465742246} - component: {fileID: 114813398424348330} + - component: {fileID: 135199603471701406} m_Layer: 0 m_Name: Model m_TagString: Crate @@ -152,6 +153,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 4b094fc48b870a0479d86321e9877ce5, type: 3} m_Name: m_EditorClassIdentifier: + crateCreator: {fileID: 0} trackTo: {fileID: 0} --- !u!114 &114325701331400612 MonoBehaviour: @@ -186,3 +188,15 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 744b97f5bfb680545a9b5d8b97e2b0aa, type: 3} m_Name: m_EditorClassIdentifier: +--- !u!135 &135199603471701406 +SphereCollider: + m_ObjectHideFlags: 1 + m_PrefabParentObject: {fileID: 0} + m_PrefabInternal: {fileID: 100100000} + m_GameObject: {fileID: 1599764083337772} + m_Material: {fileID: 0} + m_IsTrigger: 1 + m_Enabled: 1 + serializedVersion: 2 + m_Radius: 0.5 + m_Center: {x: 0, y: 0, z: 0} diff --git a/workers/unity/Assets/EntityPrefabs/Terrain.prefab b/workers/unity/Assets/EntityPrefabs/Terrain.prefab index ed195c5..10261fa 100644 --- a/workers/unity/Assets/EntityPrefabs/Terrain.prefab +++ b/workers/unity/Assets/EntityPrefabs/Terrain.prefab @@ -5,14 +5,14 @@ GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} - serializedVersion: 4 + serializedVersion: 5 m_Component: - - 4: {fileID: 478140} - - 218: {fileID: 21869460} - - 154: {fileID: 15469210} + - component: {fileID: 478140} + - component: {fileID: 21869460} + - component: {fileID: 15469210} m_Layer: 0 m_Name: Ground - m_TagString: Untagged + m_TagString: Ground m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 @@ -22,13 +22,13 @@ GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} - serializedVersion: 4 + serializedVersion: 5 m_Component: - - 4: {fileID: 488478} - - 33: {fileID: 3363968} - - 23: {fileID: 2389048} - - 114: {fileID: 11413158} - - 114: {fileID: 11455074} + - component: {fileID: 488478} + - component: {fileID: 3363968} + - component: {fileID: 2389048} + - component: {fileID: 11413158} + - component: {fileID: 11455074} m_Layer: 4 m_Name: Water m_TagString: Untagged @@ -41,11 +41,11 @@ GameObject: m_ObjectHideFlags: 0 m_PrefabParentObject: {fileID: 0} m_PrefabInternal: {fileID: 100100000} - serializedVersion: 4 + serializedVersion: 5 m_Component: - - 4: {fileID: 486684} - - 114: {fileID: 11495542} - - 114: {fileID: 114000011513353296} + - component: {fileID: 486684} + - component: {fileID: 11495542} + - component: {fileID: 114000011513353296} m_Layer: 0 m_Name: Terrain m_TagString: Untagged @@ -62,10 +62,10 @@ Transform: m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -250, y: -1, z: -250} m_LocalScale: {x: 1, y: 1, z: 1} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 486684} m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &486684 Transform: m_ObjectHideFlags: 1 @@ -75,12 +75,12 @@ Transform: m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: - {fileID: 478140} - {fileID: 488478} m_Father: {fileID: 0} m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &488478 Transform: m_ObjectHideFlags: 1 @@ -90,10 +90,10 @@ Transform: m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 203, y: 1, z: 227} m_LocalScale: {x: 450, y: 2, z: 450} - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_Children: [] m_Father: {fileID: 486684} m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!23 &2389048 MeshRenderer: m_ObjectHideFlags: 1 @@ -108,7 +108,9 @@ MeshRenderer: m_ReflectionProbeUsage: 1 m_Materials: - {fileID: 2100000, guid: 7350b65a6431f604a8496c39db1ac9c5, type: 2} - m_SubsetIndices: + m_StaticBatchInfo: + firstSubMesh: 0 + subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} @@ -116,7 +118,7 @@ MeshRenderer: m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 - m_SelectedWireframeHidden: 0 + m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 diff --git a/workers/unity/Assets/EntityTemplates/CrateEntityTemplate.cs b/workers/unity/Assets/EntityTemplates/CrateEntityTemplate.cs index a908a7e..15ea84b 100644 --- a/workers/unity/Assets/EntityTemplates/CrateEntityTemplate.cs +++ b/workers/unity/Assets/EntityTemplates/CrateEntityTemplate.cs @@ -11,11 +11,11 @@ public class CrateEntityTemplate : MonoBehaviour { - public static SnapshotEntity GenerateCrateEntityTemplate() + public static SnapshotEntity GenerateCrateEntityTemplate(Coordinates coord) { var crate = new SnapshotEntity { Prefab = "Crate" }; crate.Add(new Crate.Data(new CrateData())); - crate.Add(new WorldTransform.Data(new WorldTransformData(new Coordinates(1, 6, 9), 0))); + crate.Add(new WorldTransform.Data(new WorldTransformData(coord, 0))); crate.Add(new Controllable.Data()); var permissions = Acl.Build() diff --git a/workers/unity/Assets/Gamelogic/Pirates/Behaviours/CreateMoreCrates.cs b/workers/unity/Assets/Gamelogic/Pirates/Behaviours/CreateMoreCrates.cs new file mode 100644 index 0000000..0063cbd --- /dev/null +++ b/workers/unity/Assets/Gamelogic/Pirates/Behaviours/CreateMoreCrates.cs @@ -0,0 +1,46 @@ +using Improbable; +using Improbable.Crate; +using Improbable.Math; +using Improbable.Unity.Core; +using Improbable.Unity.Visualizer; +using Improbable.Worker; +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class CreateMoreCrates : MonoBehaviour { + [Require] + private Crate.Writer CrateWriter; + + bool madePlant = false; + + void Update() { + + } + + void OnTriggerEnter(Collider other) + { + if (other != null && other.tag == "Ground") + { + Vector3 pos = transform.position; + var coord = new Coordinates(pos.x, pos.y, pos.z); + GetComponent().enabled = false; + + var createEntityTemplate = CrateEntityTemplate.GenerateCrateEntityTemplate(coord); + + // I could never get this to work because CrateWriter was always null + //SpatialOS.Commands.CreateEntity(CrateWriter, "Crate", createEntityTemplate, result => + SpatialOS.WorkerCommands.CreateEntity("Crate", createEntityTemplate, result => + { + if (result.StatusCode != StatusCode.Success) + { + Debug.LogError("Failed to create crate: " + result.ErrorMessage); + return; + } + }); + + EntityId id = gameObject.EntityId(); + SpatialOS.WorkerCommands.DeleteEntity(id, _ => { }); + } + } +} diff --git a/workers/unity/Assets/Gamelogic/Pirates/Behaviours/CreateMoreCrates.cs.meta b/workers/unity/Assets/Gamelogic/Pirates/Behaviours/CreateMoreCrates.cs.meta new file mode 100644 index 0000000..3a0ea1d --- /dev/null +++ b/workers/unity/Assets/Gamelogic/Pirates/Behaviours/CreateMoreCrates.cs.meta @@ -0,0 +1,12 @@ +fileFormatVersion: 2 +guid: 958eba054cc62bd4d8d130d1f74d0f70 +timeCreated: 1490075371 +licenseType: Free +MonoImporter: + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/workers/unity/Assets/Gamelogic/Pirates/Behaviours/Mover.cs b/workers/unity/Assets/Gamelogic/Pirates/Behaviours/Mover.cs index 075b89b..11fcd67 100644 --- a/workers/unity/Assets/Gamelogic/Pirates/Behaviours/Mover.cs +++ b/workers/unity/Assets/Gamelogic/Pirates/Behaviours/Mover.cs @@ -2,7 +2,6 @@ using Improbable.General; using Improbable.Unity.Visualizer; using Improbable.Unity; -using UnityEditor; namespace Assets.Gamelogic.Pirates.Behaviours { @@ -11,6 +10,7 @@ public class Mover : MonoBehaviour { [Require] private WorldTransform.Writer WorldTransformWriter; + public CreateMoreCrates crateCreator; public Transform trackTo; private Quaternion newRotation; diff --git a/workers/unity/Assets/HandleCrates.cs b/workers/unity/Assets/HandleCrates.cs index 1ac4e5e..58e41b0 100644 --- a/workers/unity/Assets/HandleCrates.cs +++ b/workers/unity/Assets/HandleCrates.cs @@ -49,6 +49,7 @@ public void GainControl(GameObject entityGameObject) Mover mover = entityGameObject.GetComponent(); mover.trackTo = transform; HandlingWriter.Send(new Handling.Update().SetHeldEntity(entityId)); + entityGameObject.AddComponent(); } }); } diff --git a/workers/unity/Assets/Plugins.meta b/workers/unity/Assets/Plugins.meta index 4cf8673..9414fd8 100644 --- a/workers/unity/Assets/Plugins.meta +++ b/workers/unity/Assets/Plugins.meta @@ -1,8 +1,8 @@ fileFormatVersion: 2 -guid: 95ae256feeb0bca4bbea173d22371051 +guid: 2cd8683f67bf795488d36694c5408372 folderAsset: yes -timeCreated: 1488470854 -licenseType: Pro +timeCreated: 1490075001 +licenseType: Free DefaultImporter: userData: assetBundleName: diff --git a/workers/unity/Assets/Resources/EntityPrefabs.meta b/workers/unity/Assets/Resources/EntityPrefabs.meta index 3e62bf5..fa43037 100644 --- a/workers/unity/Assets/Resources/EntityPrefabs.meta +++ b/workers/unity/Assets/Resources/EntityPrefabs.meta @@ -1,8 +1,8 @@ fileFormatVersion: 2 -guid: 0fd629f797a74254cb2583f1179f2ce5 +guid: 4fe4f879934463a489eacc62811b1d4d folderAsset: yes -timeCreated: 1488470881 -licenseType: Pro +timeCreated: 1490075046 +licenseType: Free DefaultImporter: userData: assetBundleName: diff --git a/workers/unity/Assets/ToggleControl.cs b/workers/unity/Assets/ToggleControl.cs index a6cdf2f..4690633 100644 --- a/workers/unity/Assets/ToggleControl.cs +++ b/workers/unity/Assets/ToggleControl.cs @@ -59,6 +59,7 @@ public void GainControl(EntityId entityId, string workerId) { GetComponent().isKinematic = true; } + GetComponent().enabled = true; } public void ReleaseControl(EntityId entityId) diff --git a/workers/unity/ProjectSettings/ProjectSettings.asset b/workers/unity/ProjectSettings/ProjectSettings.asset index 03de62a..f3947f9 100644 --- a/workers/unity/ProjectSettings/ProjectSettings.asset +++ b/workers/unity/ProjectSettings/ProjectSettings.asset @@ -191,6 +191,9 @@ PlayerSettings: iOSBackgroundModes: 0 iOSMetalForceHardShadows: 0 appleDeveloperTeamID: + iOSManualSigningProvisioningProfileID: + tvOSManualSigningProvisioningProfileID: + appleEnableAutomaticSigning: 0 AndroidTargetDevice: 0 AndroidSplashScreenScale: 0 androidSplashScreen: {fileID: 0} @@ -320,6 +323,7 @@ PlayerSettings: ps4ParamSfxPath: ps4VideoOutPixelFormat: 0 ps4VideoOutInitialWidth: 1920 + ps4VideoOutBaseModeInitialWidth: 1920 ps4VideoOutReprojectionRate: 120 ps4PronunciationXMLPath: ps4PronunciationSIGPath: @@ -342,6 +346,7 @@ PlayerSettings: ps4ApplicationParam4: 0 ps4DownloadDataSize: 0 ps4GarlicHeapSize: 2048 + ps4ProGarlicHeapSize: 2560 ps4Passcode: frAQBc8Wsa1xVPfvJcrgRYwTiizs2trQ ps4UseDebugIl2cppLibs: 0 ps4pnSessions: 1 @@ -367,6 +372,9 @@ PlayerSettings: ps4attribShareSupport: 0 ps4attribExclusiveVR: 0 ps4disableAutoHideSplash: 0 + ps4videoRecordingFeaturesUsed: 0 + ps4contentSearchFeaturesUsed: 0 + ps4attribEyeToEyeDistanceSettingVR: 0 ps4IncludedModules: [] monoEnv: psp2Splashimage: {fileID: 0} diff --git a/workers/unity/ProjectSettings/ProjectVersion.txt b/workers/unity/ProjectSettings/ProjectVersion.txt index 66e05aa..86d1b1e 100644 --- a/workers/unity/ProjectSettings/ProjectVersion.txt +++ b/workers/unity/ProjectSettings/ProjectVersion.txt @@ -1 +1 @@ -m_EditorVersion: 5.5.0f3 +m_EditorVersion: 5.5.1f1 diff --git a/workers/unity/ProjectSettings/QualitySettings.asset b/workers/unity/ProjectSettings/QualitySettings.asset index e46dfed..dbe1ce5 100644 --- a/workers/unity/ProjectSettings/QualitySettings.asset +++ b/workers/unity/ProjectSettings/QualitySettings.asset @@ -4,7 +4,7 @@ QualitySettings: m_ObjectHideFlags: 0 serializedVersion: 5 - m_CurrentQuality: 3 + m_CurrentQuality: 0 m_QualitySettings: - serializedVersion: 2 name: Fastest diff --git a/workers/unity/ProjectSettings/TagManager.asset b/workers/unity/ProjectSettings/TagManager.asset index 571e4ac..47509d2 100644 --- a/workers/unity/ProjectSettings/TagManager.asset +++ b/workers/unity/ProjectSettings/TagManager.asset @@ -7,6 +7,7 @@ TagManager: - Spawner - Cannonball - Crate + - Ground layers: - Default - TransparentFX From d571251469d8aa9fa3e7899b70174f0044cb109c Mon Sep 17 00:00:00 2001 From: Carleton DiLeo Date: Tue, 4 Apr 2017 15:24:31 -0700 Subject: [PATCH 2/2] Fixed double spawn issue --- .../Pirates/Behaviours/CreateMoreCrates.cs | 17 +++++++++---- .../Gamelogic/Pirates/Behaviours/Mover.cs | 24 +++++++++---------- workers/unity/Assets/HandleCrates.cs | 5 +++- 3 files changed, 28 insertions(+), 18 deletions(-) diff --git a/workers/unity/Assets/Gamelogic/Pirates/Behaviours/CreateMoreCrates.cs b/workers/unity/Assets/Gamelogic/Pirates/Behaviours/CreateMoreCrates.cs index 0063cbd..240aafa 100644 --- a/workers/unity/Assets/Gamelogic/Pirates/Behaviours/CreateMoreCrates.cs +++ b/workers/unity/Assets/Gamelogic/Pirates/Behaviours/CreateMoreCrates.cs @@ -1,6 +1,7 @@ using Improbable; using Improbable.Crate; using Improbable.Math; +using Improbable.Unity; using Improbable.Unity.Core; using Improbable.Unity.Visualizer; using Improbable.Worker; @@ -8,18 +9,23 @@ using System.Collections.Generic; using UnityEngine; +[EngineType(EnginePlatform.FSim)] public class CreateMoreCrates : MonoBehaviour { + [Require] private Crate.Writer CrateWriter; - bool madePlant = false; - void Update() { } void OnTriggerEnter(Collider other) { + if (CrateWriter == null) + { + Debug.Log("Writer Null"); + return; + } if (other != null && other.tag == "Ground") { Vector3 pos = transform.position; @@ -29,8 +35,8 @@ void OnTriggerEnter(Collider other) var createEntityTemplate = CrateEntityTemplate.GenerateCrateEntityTemplate(coord); // I could never get this to work because CrateWriter was always null - //SpatialOS.Commands.CreateEntity(CrateWriter, "Crate", createEntityTemplate, result => - SpatialOS.WorkerCommands.CreateEntity("Crate", createEntityTemplate, result => + SpatialOS.Commands.CreateEntity(CrateWriter, "Crate", createEntityTemplate, result => + //SpatialOS.WorkerCommands.CreateEntity("Crate", createEntityTemplate, result => { if (result.StatusCode != StatusCode.Success) { @@ -40,7 +46,8 @@ void OnTriggerEnter(Collider other) }); EntityId id = gameObject.EntityId(); - SpatialOS.WorkerCommands.DeleteEntity(id, _ => { }); + //SpatialOS.WorkerCommands.DeleteEntity(id, _ => { }); + SpatialOS.Commands.DeleteEntity(CrateWriter, id, _ => { }); } } } diff --git a/workers/unity/Assets/Gamelogic/Pirates/Behaviours/Mover.cs b/workers/unity/Assets/Gamelogic/Pirates/Behaviours/Mover.cs index 11fcd67..e0fb7fb 100644 --- a/workers/unity/Assets/Gamelogic/Pirates/Behaviours/Mover.cs +++ b/workers/unity/Assets/Gamelogic/Pirates/Behaviours/Mover.cs @@ -15,20 +15,20 @@ public class Mover : MonoBehaviour public Transform trackTo; private Quaternion newRotation; - void OnEnable() - { - WorldTransformWriter.ComponentUpdated += WorldTransformWriter_ComponentUpdated; - } + //void OnEnable() + //{ + // WorldTransformWriter.ComponentUpdated += WorldTransformWriter_ComponentUpdated; + //} - void OnDisable() - { - WorldTransformWriter.ComponentUpdated -= WorldTransformWriter_ComponentUpdated; - } + //void OnDisable() + //{ + // WorldTransformWriter.ComponentUpdated -= WorldTransformWriter_ComponentUpdated; + //} - private void WorldTransformWriter_ComponentUpdated(WorldTransform.Update obj) - { - Debug.Log("WorldTransformWriter_ComponentUpdated!!"); - } + //private void WorldTransformWriter_ComponentUpdated(WorldTransform.Update obj) + //{ + // Debug.Log("WorldTransformWriter_ComponentUpdated!!"); + //} void Update() { diff --git a/workers/unity/Assets/HandleCrates.cs b/workers/unity/Assets/HandleCrates.cs index 58e41b0..e96cac3 100644 --- a/workers/unity/Assets/HandleCrates.cs +++ b/workers/unity/Assets/HandleCrates.cs @@ -49,7 +49,10 @@ public void GainControl(GameObject entityGameObject) Mover mover = entityGameObject.GetComponent(); mover.trackTo = transform; HandlingWriter.Send(new Handling.Update().SetHeldEntity(entityId)); - entityGameObject.AddComponent(); + if (entityGameObject.GetComponent() == null) + { + entityGameObject.AddComponent(); + } } }); }