diff --git a/.idea/.idea.Aetheria-Economy/.idea/contentModel.xml b/.idea/.idea.Aetheria-Economy/.idea/contentModel.xml
index 9787b9950..3c39e5787 100644
--- a/.idea/.idea.Aetheria-Economy/.idea/contentModel.xml
+++ b/.idea/.idea.Aetheria-Economy/.idea/contentModel.xml
@@ -1417,7 +1417,6 @@
-
@@ -2031,6 +2030,7 @@
+
diff --git a/Assembly-CSharp.csproj b/Assembly-CSharp.csproj
index c2a4c0ae9..f550b157d 100644
--- a/Assembly-CSharp.csproj
+++ b/Assembly-CSharp.csproj
@@ -539,6 +539,7 @@
+
@@ -684,7 +685,7 @@
-
+
diff --git a/Assets/InventoryCell.cs b/Assets/InventoryCell.cs
index 7c94ea1a8..9f10bc6d6 100644
--- a/Assets/InventoryCell.cs
+++ b/Assets/InventoryCell.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using UniRx.Triggers;
using UnityEngine;
diff --git a/Assets/InventoryMenu.cs b/Assets/InventoryMenu.cs
index dbe78114b..eee71fa42 100644
--- a/Assets/InventoryMenu.cs
+++ b/Assets/InventoryMenu.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
@@ -15,7 +19,7 @@ public class InventoryMenu : MonoBehaviour
public ActionGameManager GameManager;
public RectTransform DragParent;
- private int _currentPanel;
+ private int _currentPanel = -1;
private int2 _selectedPosition;
private InventoryPanel _selectedPanel;
@@ -105,9 +109,6 @@ public class InventoryMenu : MonoBehaviour
panel.OnDragAsObservable().Subscribe(data =>
{
if (_dragItem == null) return;
- var scroll = data.PointerEventData.scrollDelta.y;
- if(scroll != 0)
- Debug.Log($"Scrolling {scroll}!");
for (var i = 0; i < _dragCells.Length; i++)
_dragCells[i].position = new Vector3(
data.PointerEventData.position.x + _dragOffsets[i].x,
@@ -155,7 +156,7 @@ public class InventoryMenu : MonoBehaviour
{
if (_dragItem == null) return;
- Debug.Log($"Pointer entered {data.Position}");
+ // Debug.Log($"Pointer entered {data.Position}");
// if(panel != _originalPanel)
// _originalPanel.RefreshCells();
diff --git a/Assets/MapMenuInput.cs b/Assets/MapMenuInput.cs
index 9d30073bf..a59c2fbca 100644
--- a/Assets/MapMenuInput.cs
+++ b/Assets/MapMenuInput.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using Unity.Mathematics;
using UnityEngine;
diff --git a/Assets/MapRenderer.cs b/Assets/MapRenderer.cs
index 4e3dc0764..add3c734a 100644
--- a/Assets/MapRenderer.cs
+++ b/Assets/MapRenderer.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
diff --git a/Assets/Materials/Dithered Particle Trail.mat b/Assets/Materials/Dithered Particle Trail.mat
new file mode 100644
index 000000000..13c53b813
--- /dev/null
+++ b/Assets/Materials/Dithered Particle Trail.mat
@@ -0,0 +1,78 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+ serializedVersion: 6
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Dithered Particle Trail
+ m_Shader: {fileID: 4800000, guid: 46776b9fa35a437448f683f31b04d68d, type: 3}
+ m_ShaderKeywords:
+ m_LightmapFlags: 4
+ m_EnableInstancingVariants: 0
+ m_DoubleSidedGI: 0
+ m_CustomRenderQueue: -1
+ stringTagMap: {}
+ disabledShaderPasses: []
+ m_SavedProperties:
+ serializedVersion: 3
+ m_TexEnvs:
+ - _BumpMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DetailAlbedoMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DetailMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DetailNormalMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainTex:
+ m_Texture: {fileID: 2800000, guid: 1d6eba2a167939a468c00fda35723dd0, type: 3}
+ m_Scale: {x: 0, y: 1}
+ m_Offset: {x: 0.5, y: 0}
+ - _MetallicGlossMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _OcclusionMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Floats:
+ - _BumpScale: 1
+ - _Cutoff: 0.5
+ - _DetailNormalMapScale: 1
+ - _DstBlend: 0
+ - _GlossMapScale: 1
+ - _Glossiness: 0.5
+ - _GlossyReflections: 1
+ - _Metallic: 0
+ - _Mode: 0
+ - _OcclusionStrength: 1
+ - _Parallax: 0.02
+ - _SmoothnessTextureChannel: 0
+ - _SpecularHighlights: 1
+ - _SrcBlend: 1
+ - _UVSec: 0
+ - _ZWrite: 1
+ m_Colors:
+ - _Color: {r: 31.999996, g: 31.999996, b: 31.999996, a: 1}
+ - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
+ m_BuildTextureStacks: []
diff --git a/Assets/Materials/Dithered Particle Trail.mat.meta b/Assets/Materials/Dithered Particle Trail.mat.meta
new file mode 100644
index 000000000..e153ef20a
--- /dev/null
+++ b/Assets/Materials/Dithered Particle Trail.mat.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 9c20b9ccbbbb1b14cb5729e0c8460cd9
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Materials/Dithered Particle.mat b/Assets/Materials/Dithered Particle.mat
new file mode 100644
index 000000000..60ba2ea0d
--- /dev/null
+++ b/Assets/Materials/Dithered Particle.mat
@@ -0,0 +1,78 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!21 &2100000
+Material:
+ serializedVersion: 6
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_Name: Dithered Particle
+ m_Shader: {fileID: 4800000, guid: 46776b9fa35a437448f683f31b04d68d, type: 3}
+ m_ShaderKeywords:
+ m_LightmapFlags: 4
+ m_EnableInstancingVariants: 0
+ m_DoubleSidedGI: 0
+ m_CustomRenderQueue: -1
+ stringTagMap: {}
+ disabledShaderPasses: []
+ m_SavedProperties:
+ serializedVersion: 3
+ m_TexEnvs:
+ - _BumpMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DetailAlbedoMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DetailMask:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _DetailNormalMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _EmissionMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MainTex:
+ m_Texture: {fileID: 2800000, guid: 1d6eba2a167939a468c00fda35723dd0, type: 3}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _MetallicGlossMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _OcclusionMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ - _ParallaxMap:
+ m_Texture: {fileID: 0}
+ m_Scale: {x: 1, y: 1}
+ m_Offset: {x: 0, y: 0}
+ m_Floats:
+ - _BumpScale: 1
+ - _Cutoff: 0.5
+ - _DetailNormalMapScale: 1
+ - _DstBlend: 0
+ - _GlossMapScale: 1
+ - _Glossiness: 0.5
+ - _GlossyReflections: 1
+ - _Metallic: 0
+ - _Mode: 0
+ - _OcclusionStrength: 1
+ - _Parallax: 0.02
+ - _SmoothnessTextureChannel: 0
+ - _SpecularHighlights: 1
+ - _SrcBlend: 1
+ - _UVSec: 0
+ - _ZWrite: 1
+ m_Colors:
+ - _Color: {r: 191.74902, g: 191.74902, b: 191.74902, a: 1}
+ - _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
+ m_BuildTextureStacks: []
diff --git a/Assets/Materials/Dithered Particle.mat.meta b/Assets/Materials/Dithered Particle.mat.meta
new file mode 100644
index 000000000..32db399f0
--- /dev/null
+++ b/Assets/Materials/Dithered Particle.mat.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 6af0f423a2567be43b16d152d2b60e0c
+NativeFormatImporter:
+ externalObjects: {}
+ mainObjectFileID: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Materials/Radiators.mat b/Assets/Materials/Radiators.mat
index 05763d06d..5c4c6fed6 100644
--- a/Assets/Materials/Radiators.mat
+++ b/Assets/Materials/Radiators.mat
@@ -22,7 +22,7 @@ Material:
- _BumpMap:
m_Texture: {fileID: -812895718602229137, guid: b7e648471e9dfc44490bd41973711541,
type: 3}
- m_Scale: {x: 8, y: 8}
+ m_Scale: {x: 2, y: 2}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
@@ -43,7 +43,7 @@ Material:
- _MainTex:
m_Texture: {fileID: -6057190860509678031, guid: 2b42584452fe0cc4fa4e8a115230b156,
type: 3}
- m_Scale: {x: 8, y: 8}
+ m_Scale: {x: 2, y: 2}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: -894214952450941493, guid: 2b42584452fe0cc4fa4e8a115230b156,
diff --git a/Assets/Materials/Thrusters.mat b/Assets/Materials/Thrusters.mat
index 035ffb7eb..f9b21ae83 100644
--- a/Assets/Materials/Thrusters.mat
+++ b/Assets/Materials/Thrusters.mat
@@ -64,7 +64,7 @@ Material:
- _Cutoff: 0.5
- _DetailNormalMapScale: 1
- _DstBlend: 0
- - _Emission: 15
+ - _Emission: 0
- _EmissionFresnel: 1
- _EmissionRoughnessFresnelPower: 0.5
- _GlossMapScale: 1
diff --git a/Assets/Materials/UI/Map Gravity Lines.mat b/Assets/Materials/UI/Map Gravity Lines.mat
index 8a87e4199..c5ed6b463 100644
--- a/Assets/Materials/UI/Map Gravity Lines.mat
+++ b/Assets/Materials/UI/Map Gravity Lines.mat
@@ -82,7 +82,7 @@ Material:
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.02
- - _Scale: 1
+ - _Scale: 4.652392
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
diff --git a/Assets/MenuPanel.cs b/Assets/MenuPanel.cs
index 46f551501..cd0a71d57 100644
--- a/Assets/MenuPanel.cs
+++ b/Assets/MenuPanel.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
@@ -37,7 +41,7 @@ public class MenuPanel : MonoBehaviour
TabChanged?.Invoke(tab);
}
- void Start()
+ void Awake()
{
foreach (var tabButton in TabButtons.GetComponentsInChildren())
{
diff --git a/Assets/MenuTabButton.cs b/Assets/MenuTabButton.cs
index 44fd831ed..3e9120a3d 100644
--- a/Assets/MenuTabButton.cs
+++ b/Assets/MenuTabButton.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using TMPro;
diff --git a/Assets/Models/Djinni.fbx b/Assets/Models/Djinni.fbx
index b96f8e113..fa9a0dcc1 100644
--- a/Assets/Models/Djinni.fbx
+++ b/Assets/Models/Djinni.fbx
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:03979aaf613935caa73e27c9de36d09000e14a3c8f900a60f9c37591f83847ae
-size 1858588
+oid sha256:60911eac9f1c5ce6e50ad4290dba6f98838228e36e7fa24dfd35ce91511e4036
+size 1899436
diff --git a/Assets/Models/Djinni.fbx.meta b/Assets/Models/Djinni.fbx.meta
index 9314394e5..fd889e672 100644
--- a/Assets/Models/Djinni.fbx.meta
+++ b/Assets/Models/Djinni.fbx.meta
@@ -63,7 +63,7 @@ ModelImporter:
secondaryUVMinLightmapResolution: 40
secondaryUVMinObjectScale: 1
secondaryUVPackMargin: 4
- useFileScale: 1
+ useFileScale: 0
tangentSpace:
normalSmoothAngle: 60
normalImportMode: 1
diff --git a/Assets/Prefabs/RPG/Planets/Sun.prefab b/Assets/Prefabs/RPG/Planets/Sun.prefab
index cbbac7eb1..373f479f5 100644
--- a/Assets/Prefabs/RPG/Planets/Sun.prefab
+++ b/Assets/Prefabs/RPG/Planets/Sun.prefab
@@ -51,6 +51,7 @@ MonoBehaviour:
Body: {fileID: 7852221720971737229}
GravityWell: {fileID: 7852221720969441484}
Icon: {fileID: 7852221720964551246}
+ Generator: {fileID: 0}
SunMaterial: {fileID: 7852221720971737234}
GravityWaves: {fileID: 7852221720741322894}
FogTint: {fileID: 7852221720816817929}
@@ -507,7 +508,7 @@ Light:
m_Type: 2
m_Shape: 0
m_Color: {r: 1, g: 1, b: 1, a: 1}
- m_Intensity: 1
+ m_Intensity: 0.333
m_Range: 10
m_SpotAngle: 30
m_InnerSpotAngle: 21.80208
diff --git a/Assets/Resources/Aetheria.inputactions b/Assets/Resources/Aetheria.inputactions
index 466cefa0a..34ef786f4 100644
--- a/Assets/Resources/Aetheria.inputactions
+++ b/Assets/Resources/Aetheria.inputactions
@@ -177,7 +177,7 @@
"path": "/delta",
"interactions": "",
"processors": "",
- "groups": ";Keyboard&Mouse;Touch",
+ "groups": ";Keyboard&Mouse",
"action": "Look",
"isComposite": false,
"isPartOfComposite": false
@@ -221,7 +221,7 @@
"path": "/primaryTouch/tap",
"interactions": "",
"processors": "",
- "groups": ";Touch",
+ "groups": "",
"action": "Fire",
"isComposite": false,
"isPartOfComposite": false
@@ -318,22 +318,6 @@
"processors": "",
"interactions": ""
},
- {
- "name": "TrackedDevicePosition",
- "type": "PassThrough",
- "id": "b297afa0-f417-4a48-aaa1-36a6efd36190",
- "expectedControlType": "Vector3",
- "processors": "",
- "interactions": ""
- },
- {
- "name": "TrackedDeviceOrientation",
- "type": "PassThrough",
- "id": "1a877e6d-221e-4815-a289-aa93412c8d87",
- "expectedControlType": "Quaternion",
- "processors": "",
- "interactions": ""
- },
{
"name": "Drag",
"type": "Value",
@@ -652,17 +636,6 @@
"isComposite": false,
"isPartOfComposite": false
},
- {
- "name": "",
- "id": "5693e57a-238a-46ed-b5ae-e64e6e574302",
- "path": "/touch*/position",
- "interactions": "",
- "processors": "",
- "groups": "Touch",
- "action": "Point",
- "isComposite": false,
- "isPartOfComposite": false
- },
{
"name": "",
"id": "4faf7dc9-b979-4210-aa8c-e808e1ef89f5",
@@ -685,28 +658,6 @@
"isComposite": false,
"isPartOfComposite": false
},
- {
- "name": "",
- "id": "47c2a644-3ebc-4dae-a106-589b7ca75b59",
- "path": "/touch*/press",
- "interactions": "",
- "processors": "",
- "groups": "Touch",
- "action": "Click",
- "isComposite": false,
- "isPartOfComposite": false
- },
- {
- "name": "",
- "id": "bb9e6b34-44bf-4381-ac63-5aa15d19f677",
- "path": "/trigger",
- "interactions": "",
- "processors": "",
- "groups": "XR",
- "action": "Click",
- "isComposite": false,
- "isPartOfComposite": false
- },
{
"name": "",
"id": "38c99815-14ea-4617-8627-164d27641299",
@@ -740,28 +691,6 @@
"isComposite": false,
"isPartOfComposite": false
},
- {
- "name": "",
- "id": "7236c0d9-6ca3-47cf-a6ee-a97f5b59ea77",
- "path": "/devicePosition",
- "interactions": "",
- "processors": "",
- "groups": "XR",
- "action": "TrackedDevicePosition",
- "isComposite": false,
- "isPartOfComposite": false
- },
- {
- "name": "",
- "id": "23e01e3a-f935-4948-8d8b-9bcac77714fb",
- "path": "/deviceRotation",
- "interactions": "",
- "processors": "",
- "groups": "XR",
- "action": "TrackedDeviceOrientation",
- "isComposite": false,
- "isPartOfComposite": false
- },
{
"name": "",
"id": "618fb60f-5dc7-47ec-8dbf-fdc3d4c515a1",
@@ -794,6 +723,14 @@
"expectedControlType": "Button",
"processors": "",
"interactions": ""
+ },
+ {
+ "name": "Dock",
+ "type": "Button",
+ "id": "d6e65ce8-149c-4009-ac38-66144cca311a",
+ "expectedControlType": "Button",
+ "processors": "",
+ "interactions": ""
}
],
"bindings": [
@@ -818,6 +755,17 @@
"action": "Inventory",
"isComposite": false,
"isPartOfComposite": false
+ },
+ {
+ "name": "",
+ "id": "3279cef8-8bd1-49f2-984a-637d1f8522f6",
+ "path": "/#(C)",
+ "interactions": "",
+ "processors": "",
+ "groups": "Keyboard&Mouse",
+ "action": "Dock",
+ "isComposite": false,
+ "isPartOfComposite": false
}
]
}
@@ -850,17 +798,6 @@
}
]
},
- {
- "name": "Touch",
- "bindingGroup": "Touch",
- "devices": [
- {
- "devicePath": "",
- "isOptional": false,
- "isOR": false
- }
- ]
- },
{
"name": "Joystick",
"bindingGroup": "Joystick",
@@ -871,17 +808,6 @@
"isOR": false
}
]
- },
- {
- "name": "XR",
- "bindingGroup": "XR",
- "devices": [
- {
- "devicePath": "",
- "isOptional": false,
- "isOR": false
- }
- ]
}
]
}
\ No newline at end of file
diff --git a/Assets/Resources/Prefabs/Djinni Variant.prefab b/Assets/Resources/Prefabs/Djinni Variant.prefab
index bfd7e59e9..9d40d8b89 100644
--- a/Assets/Resources/Prefabs/Djinni Variant.prefab
+++ b/Assets/Resources/Prefabs/Djinni Variant.prefab
@@ -370,17 +370,17 @@ PrefabInstance:
- target: {fileID: -8679921383154817045, guid: caefaa8e0cbce524f97eb0db4be80a98,
type: 3}
propertyPath: m_LocalPosition.x
- value: 1547.9908
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: caefaa8e0cbce524f97eb0db4be80a98,
type: 3}
propertyPath: m_LocalPosition.y
- value: 799.0965
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: caefaa8e0cbce524f97eb0db4be80a98,
type: 3}
propertyPath: m_LocalPosition.z
- value: -2571.4744
+ value: 0
objectReference: {fileID: 0}
- target: {fileID: -8679921383154817045, guid: caefaa8e0cbce524f97eb0db4be80a98,
type: 3}
@@ -422,11 +422,161 @@ PrefabInstance:
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
+ - target: {fileID: -8679921383154817045, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_LocalScale.x
+ value: 0.01
+ objectReference: {fileID: 0}
+ - target: {fileID: -8679921383154817045, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_LocalScale.y
+ value: 0.01
+ objectReference: {fileID: 0}
+ - target: {fileID: -8679921383154817045, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_LocalScale.z
+ value: 0.01
+ objectReference: {fileID: 0}
+ - target: {fileID: -7872498167539782088, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_IsActive
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: -7524481783092393800, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_LocalPosition.z
+ value: -877.3
+ objectReference: {fileID: 0}
+ - target: {fileID: -7524481783092393800, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_RootOrder
+ value: 29
+ objectReference: {fileID: 0}
+ - target: {fileID: -6625146999956858958, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_RootOrder
+ value: 18
+ objectReference: {fileID: 0}
+ - target: {fileID: -5992302138083467718, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_LocalPosition.x
+ value: -315.1107
+ objectReference: {fileID: 0}
+ - target: {fileID: -5992302138083467718, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_RootOrder
+ value: 26
+ objectReference: {fileID: 0}
+ - target: {fileID: -5603237755662813462, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_IsActive
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: -5109641318820812241, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_LocalPosition.x
+ value: 208
+ objectReference: {fileID: 0}
+ - target: {fileID: -5109641318820812241, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_RootOrder
+ value: 23
+ objectReference: {fileID: 0}
+ - target: {fileID: -4599178800458827326, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_IsActive
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: -3773429692478549711, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_IsActive
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: -3760179345625366292, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_IsActive
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: -3660698809900281034, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_RootOrder
+ value: 20
+ objectReference: {fileID: 0}
+ - target: {fileID: -3189018373145680014, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_IsActive
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: -2722337163479603264, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_IsActive
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: -2433966980311775918, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_IsActive
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: -1282338954517755048, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_RootOrder
+ value: 19
+ objectReference: {fileID: 0}
+ - target: {fileID: -932530484554465105, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_RootOrder
+ value: 17
+ objectReference: {fileID: 0}
+ - target: {fileID: 29156028926690448, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_IsActive
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 484028901997670921, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_LocalPosition.z
+ value: -877.2999
+ objectReference: {fileID: 0}
+ - target: {fileID: 484028901997670921, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_RootOrder
+ value: 28
+ objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: caefaa8e0cbce524f97eb0db4be80a98,
type: 3}
propertyPath: m_Name
value: Djinni
objectReference: {fileID: 0}
+ - target: {fileID: 1165945915133145555, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_RootOrder
+ value: 21
+ objectReference: {fileID: 0}
+ - target: {fileID: 1386762414290949414, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_LocalPosition.x
+ value: -237.9511
+ objectReference: {fileID: 0}
+ - target: {fileID: 1386762414290949414, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_RootOrder
+ value: 25
+ objectReference: {fileID: 0}
+ - target: {fileID: 1425118031933698329, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_IsActive
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 1529174336690980893, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_LocalPosition.z
+ value: -877.3001
+ objectReference: {fileID: 0}
+ - target: {fileID: 1529174336690980893, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_RootOrder
+ value: 27
+ objectReference: {fileID: 0}
- target: {fileID: 2115218557376454651, guid: caefaa8e0cbce524f97eb0db4be80a98,
type: 3}
propertyPath: m_Materials.Array.data[0]
@@ -437,7 +587,7 @@ PrefabInstance:
type: 3}
propertyPath: m_Materials.Array.data[1]
value:
- objectReference: {fileID: 3720744386649352057, guid: 1c858fec5b74c7c46b1712494192b6b5,
+ objectReference: {fileID: 3720744386649352057, guid: b2bec4b400153d745b2915f1c43e5c96,
type: 3}
- target: {fileID: 2115218557376454651, guid: caefaa8e0cbce524f97eb0db4be80a98,
type: 3}
@@ -477,6 +627,36 @@ PrefabInstance:
propertyPath: m_Materials.Array.data[8]
value:
objectReference: {fileID: 2100000, guid: b9036e605cc538943a8c7bec97257e87, type: 2}
+ - target: {fileID: 3513264515266565276, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_IsActive
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 3530730053176866719, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_IsActive
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 5341322951705801481, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_IsActive
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 5520988019811293425, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_RootOrder
+ value: 16
+ objectReference: {fileID: 0}
+ - target: {fileID: 5810462305269633799, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_LocalPosition.z
+ value: 554.7372
+ objectReference: {fileID: 0}
+ - target: {fileID: 5810462305269633799, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_RootOrder
+ value: 24
+ objectReference: {fileID: 0}
- target: {fileID: 6947464325843983966, guid: caefaa8e0cbce524f97eb0db4be80a98,
type: 3}
propertyPath: m_Materials.Array.data[0]
@@ -488,6 +668,41 @@ PrefabInstance:
propertyPath: m_Materials.Array.data[1]
value:
objectReference: {fileID: 2100000, guid: 616adaf59c64a444f8249cc7cf13c527, type: 2}
+ - target: {fileID: 7420549073466142295, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_IsActive
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 7728892125702877259, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_IsActive
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 7996040519124296810, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_LocalPosition.x
+ value: 315
+ objectReference: {fileID: 0}
+ - target: {fileID: 7996040519124296810, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_RootOrder
+ value: 22
+ objectReference: {fileID: 0}
+ - target: {fileID: 8736633465395181397, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_IsActive
+ value: 0
+ objectReference: {fileID: 0}
+ - target: {fileID: 8984464628394765956, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_RootOrder
+ value: 15
+ objectReference: {fileID: 0}
+ - target: {fileID: 9104515542559788959, guid: caefaa8e0cbce524f97eb0db4be80a98,
+ type: 3}
+ propertyPath: m_RootOrder
+ value: 14
+ objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: caefaa8e0cbce524f97eb0db4be80a98, type: 3}
--- !u!4 &9106854767781449910 stripped
diff --git a/Assets/Resources/Prefabs/Thruster 1.prefab b/Assets/Resources/Prefabs/Thruster 1.prefab
new file mode 100644
index 000000000..ba91bf7ed
--- /dev/null
+++ b/Assets/Resources/Prefabs/Thruster 1.prefab
@@ -0,0 +1,4815 @@
+%YAML 1.1
+%TAG !u! tag:unity3d.com,2011:
+--- !u!1 &7847908271862099961
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 434691370613433342}
+ - component: {fileID: 4210795439511044087}
+ - component: {fileID: 4396918519991313108}
+ m_Layer: 0
+ m_Name: Particle System
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &434691370613433342
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 7847908271862099961}
+ m_LocalRotation: {x: -0.7071068, y: 0, z: 0, w: 0.7071068}
+ m_LocalPosition: {x: 0, y: 0, z: 0}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_Children: []
+ m_Father: {fileID: 0}
+ m_RootOrder: 0
+ m_LocalEulerAnglesHint: {x: -90, y: 0, z: 0}
+--- !u!198 &4210795439511044087
+ParticleSystem:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 7847908271862099961}
+ serializedVersion: 6
+ lengthInSec: 5
+ simulationSpeed: 1
+ stopAction: 0
+ cullingMode: 0
+ ringBufferMode: 0
+ ringBufferLoopRange: {x: 0, y: 1}
+ looping: 1
+ prewarm: 0
+ playOnAwake: 1
+ useUnscaledTime: 0
+ autoRandomSeed: 1
+ useRigidbodyForVelocity: 1
+ startDelay:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ moveWithTransform: 0
+ moveWithCustomTransform: {fileID: 0}
+ scalingMode: 1
+ randomSeed: 0
+ InitialModule:
+ serializedVersion: 3
+ enabled: 1
+ startLifetime:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0.25
+ minScalar: 5
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ startSpeed:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 15
+ minScalar: 5
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ startColor:
+ serializedVersion: 2
+ minMaxState: 0
+ minColor: {r: 1, g: 1, b: 1, a: 1}
+ maxColor: {r: 1, g: 1, b: 1, a: 1}
+ maxGradient:
+ serializedVersion: 2
+ key0: {r: 1, g: 1, b: 1, a: 1}
+ key1: {r: 1, g: 1, b: 1, a: 1}
+ key2: {r: 0, g: 0, b: 0, a: 0}
+ key3: {r: 0, g: 0, b: 0, a: 0}
+ key4: {r: 0, g: 0, b: 0, a: 0}
+ key5: {r: 0, g: 0, b: 0, a: 0}
+ key6: {r: 0, g: 0, b: 0, a: 0}
+ key7: {r: 0, g: 0, b: 0, a: 0}
+ ctime0: 0
+ ctime1: 65535
+ ctime2: 0
+ ctime3: 0
+ ctime4: 0
+ ctime5: 0
+ ctime6: 0
+ ctime7: 0
+ atime0: 0
+ atime1: 65535
+ atime2: 0
+ atime3: 0
+ atime4: 0
+ atime5: 0
+ atime6: 0
+ atime7: 0
+ m_Mode: 0
+ m_NumColorKeys: 2
+ m_NumAlphaKeys: 2
+ minGradient:
+ serializedVersion: 2
+ key0: {r: 1, g: 1, b: 1, a: 1}
+ key1: {r: 1, g: 1, b: 1, a: 1}
+ key2: {r: 0, g: 0, b: 0, a: 0}
+ key3: {r: 0, g: 0, b: 0, a: 0}
+ key4: {r: 0, g: 0, b: 0, a: 0}
+ key5: {r: 0, g: 0, b: 0, a: 0}
+ key6: {r: 0, g: 0, b: 0, a: 0}
+ key7: {r: 0, g: 0, b: 0, a: 0}
+ ctime0: 0
+ ctime1: 65535
+ ctime2: 0
+ ctime3: 0
+ ctime4: 0
+ ctime5: 0
+ ctime6: 0
+ ctime7: 0
+ atime0: 0
+ atime1: 65535
+ atime2: 0
+ atime3: 0
+ atime4: 0
+ atime5: 0
+ atime6: 0
+ atime7: 0
+ m_Mode: 0
+ m_NumColorKeys: 2
+ m_NumAlphaKeys: 2
+ startSize:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0.25
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ startSizeY:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ startSizeZ:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ startRotationX:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ startRotationY:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ startRotation:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ randomizeRotationDirection: 0
+ maxNumParticles: 1000
+ size3D: 0
+ rotation3D: 0
+ gravityModifier:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ ShapeModule:
+ serializedVersion: 6
+ enabled: 1
+ type: 13
+ angle: 25
+ length: 5
+ boxThickness: {x: 0, y: 0, z: 0}
+ radiusThickness: 1
+ donutRadius: 0.2
+ m_Position: {x: 0, y: 0, z: 0}
+ m_Rotation: {x: 0, y: 0, z: 0}
+ m_Scale: {x: 1, y: 1, z: 1}
+ placementMode: 2
+ m_MeshMaterialIndex: 0
+ m_MeshNormalOffset: 0
+ m_MeshSpawn:
+ mode: 0
+ spread: 0
+ speed:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ m_Mesh: {fileID: 0}
+ m_MeshRenderer: {fileID: 0}
+ m_SkinnedMeshRenderer: {fileID: 0}
+ m_Sprite: {fileID: 0}
+ m_SpriteRenderer: {fileID: 0}
+ m_UseMeshMaterialIndex: 0
+ m_UseMeshColors: 0
+ alignToDirection: 0
+ m_Texture: {fileID: 0}
+ m_TextureClipChannel: 3
+ m_TextureClipThreshold: 0
+ m_TextureUVChannel: 0
+ m_TextureColorAffectsParticles: 1
+ m_TextureAlphaAffectsParticles: 1
+ m_TextureBilinearFiltering: 0
+ randomDirectionAmount: 0
+ sphericalDirectionAmount: 0
+ randomPositionAmount: 0
+ radius:
+ value: 1
+ mode: 0
+ spread: 0
+ speed:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ arc:
+ value: 360
+ mode: 0
+ spread: 0
+ speed:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ EmissionModule:
+ enabled: 1
+ serializedVersion: 4
+ rateOverTime:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 1000
+ minScalar: 10
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ rateOverDistance:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ m_BurstCount: 0
+ m_Bursts: []
+ SizeModule:
+ enabled: 1
+ curve:
+ serializedVersion: 2
+ minMaxState: 1
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 1
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 1
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ y:
+ serializedVersion: 2
+ minMaxState: 1
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 1
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 1
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ z:
+ serializedVersion: 2
+ minMaxState: 1
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 1
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 1
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ separateAxes: 0
+ RotationModule:
+ enabled: 0
+ x:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ y:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ curve:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0.7853982
+ minScalar: 0.7853982
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ separateAxes: 0
+ ColorModule:
+ enabled: 1
+ gradient:
+ serializedVersion: 2
+ minMaxState: 1
+ minColor: {r: 1, g: 1, b: 1, a: 1}
+ maxColor: {r: 1, g: 1, b: 1, a: 1}
+ maxGradient:
+ serializedVersion: 2
+ key0: {r: 0, g: 0.54509807, b: 1, a: 1}
+ key1: {r: 0.29799998, g: 0, b: 0.29249284, a: 0}
+ key2: {r: 0, g: 0, b: 0, a: 0}
+ key3: {r: 0, g: 0, b: 0, a: 0}
+ key4: {r: 0, g: 0, b: 0, a: 0}
+ key5: {r: 0, g: 0, b: 0, a: 0}
+ key6: {r: 0, g: 0, b: 0, a: 0}
+ key7: {r: 0, g: 0, b: 0, a: 0}
+ ctime0: 0
+ ctime1: 65535
+ ctime2: 0
+ ctime3: 0
+ ctime4: 0
+ ctime5: 0
+ ctime6: 0
+ ctime7: 0
+ atime0: 0
+ atime1: 65535
+ atime2: 0
+ atime3: 0
+ atime4: 0
+ atime5: 0
+ atime6: 0
+ atime7: 0
+ m_Mode: 0
+ m_NumColorKeys: 2
+ m_NumAlphaKeys: 2
+ minGradient:
+ serializedVersion: 2
+ key0: {r: 1, g: 1, b: 1, a: 1}
+ key1: {r: 1, g: 1, b: 1, a: 1}
+ key2: {r: 0, g: 0, b: 0, a: 0}
+ key3: {r: 0, g: 0, b: 0, a: 0}
+ key4: {r: 0, g: 0, b: 0, a: 0}
+ key5: {r: 0, g: 0, b: 0, a: 0}
+ key6: {r: 0, g: 0, b: 0, a: 0}
+ key7: {r: 0, g: 0, b: 0, a: 0}
+ ctime0: 0
+ ctime1: 65535
+ ctime2: 0
+ ctime3: 0
+ ctime4: 0
+ ctime5: 0
+ ctime6: 0
+ ctime7: 0
+ atime0: 0
+ atime1: 65535
+ atime2: 0
+ atime3: 0
+ atime4: 0
+ atime5: 0
+ atime6: 0
+ atime7: 0
+ m_Mode: 0
+ m_NumColorKeys: 2
+ m_NumAlphaKeys: 2
+ UVModule:
+ serializedVersion: 2
+ enabled: 0
+ mode: 0
+ timeMode: 0
+ fps: 30
+ frameOverTime:
+ serializedVersion: 2
+ minMaxState: 1
+ scalar: 0.9999
+ minScalar: 0.9999
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 1
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 1
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ startFrame:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ speedRange: {x: 0, y: 1}
+ tilesX: 1
+ tilesY: 1
+ animationType: 0
+ rowIndex: 0
+ cycles: 1
+ uvChannelMask: -1
+ rowMode: 1
+ sprites:
+ - sprite: {fileID: 0}
+ flipU: 0
+ flipV: 0
+ VelocityModule:
+ enabled: 0
+ x:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ y:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ z:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ orbitalX:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ orbitalY:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ orbitalZ:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ orbitalOffsetX:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ orbitalOffsetY:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ orbitalOffsetZ:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ radial:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ speedModifier:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ inWorldSpace: 0
+ InheritVelocityModule:
+ enabled: 0
+ m_Mode: 0
+ m_Curve:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ LifetimeByEmitterSpeedModule:
+ enabled: 0
+ m_Curve:
+ serializedVersion: 2
+ minMaxState: 1
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: -0.8
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0.2
+ inSlope: -0.8
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ m_Range: {x: 0, y: 1}
+ ForceModule:
+ enabled: 0
+ x:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ y:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ z:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ inWorldSpace: 0
+ randomizePerFrame: 0
+ ExternalForcesModule:
+ serializedVersion: 2
+ enabled: 0
+ multiplierCurve:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ influenceFilter: 0
+ influenceMask:
+ serializedVersion: 2
+ m_Bits: 4294967295
+ influenceList: []
+ ClampVelocityModule:
+ enabled: 0
+ x:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ y:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ z:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ magnitude:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ separateAxis: 0
+ inWorldSpace: 0
+ multiplyDragByParticleSize: 1
+ multiplyDragByParticleVelocity: 1
+ dampen: 0
+ drag:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ NoiseModule:
+ enabled: 1
+ strength:
+ serializedVersion: 2
+ minMaxState: 1
+ scalar: 4
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 2
+ outSlope: 2
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0
+ outWeight: 0
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0
+ outWeight: 0
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ strengthY:
+ serializedVersion: 2
+ minMaxState: 1
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ strengthZ:
+ serializedVersion: 2
+ minMaxState: 1
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ separateAxes: 0
+ frequency: 1
+ damping: 0
+ octaves: 1
+ octaveMultiplier: 0.5
+ octaveScale: 2
+ quality: 2
+ scrollSpeed:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 8
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ remap:
+ serializedVersion: 2
+ minMaxState: 1
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: -1
+ inSlope: 0
+ outSlope: 2
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 2
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ remapY:
+ serializedVersion: 2
+ minMaxState: 1
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: -1
+ inSlope: 0
+ outSlope: 2
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 2
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ remapZ:
+ serializedVersion: 2
+ minMaxState: 1
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: -1
+ inSlope: 0
+ outSlope: 2
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 2
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ remapEnabled: 0
+ positionAmount:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ rotationAmount:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ sizeAmount:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ SizeBySpeedModule:
+ enabled: 0
+ curve:
+ serializedVersion: 2
+ minMaxState: 1
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 1
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 1
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ y:
+ serializedVersion: 2
+ minMaxState: 1
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 1
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 1
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ z:
+ serializedVersion: 2
+ minMaxState: 1
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 1
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 1
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ range: {x: 0, y: 1}
+ separateAxes: 0
+ RotationBySpeedModule:
+ enabled: 0
+ x:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ y:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ curve:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0.7853982
+ minScalar: 0.7853982
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ separateAxes: 0
+ range: {x: 0, y: 1}
+ ColorBySpeedModule:
+ enabled: 0
+ gradient:
+ serializedVersion: 2
+ minMaxState: 1
+ minColor: {r: 1, g: 1, b: 1, a: 1}
+ maxColor: {r: 1, g: 1, b: 1, a: 1}
+ maxGradient:
+ serializedVersion: 2
+ key0: {r: 1, g: 1, b: 1, a: 1}
+ key1: {r: 1, g: 1, b: 1, a: 1}
+ key2: {r: 0, g: 0, b: 0, a: 0}
+ key3: {r: 0, g: 0, b: 0, a: 0}
+ key4: {r: 0, g: 0, b: 0, a: 0}
+ key5: {r: 0, g: 0, b: 0, a: 0}
+ key6: {r: 0, g: 0, b: 0, a: 0}
+ key7: {r: 0, g: 0, b: 0, a: 0}
+ ctime0: 0
+ ctime1: 65535
+ ctime2: 0
+ ctime3: 0
+ ctime4: 0
+ ctime5: 0
+ ctime6: 0
+ ctime7: 0
+ atime0: 0
+ atime1: 65535
+ atime2: 0
+ atime3: 0
+ atime4: 0
+ atime5: 0
+ atime6: 0
+ atime7: 0
+ m_Mode: 0
+ m_NumColorKeys: 2
+ m_NumAlphaKeys: 2
+ minGradient:
+ serializedVersion: 2
+ key0: {r: 1, g: 1, b: 1, a: 1}
+ key1: {r: 1, g: 1, b: 1, a: 1}
+ key2: {r: 0, g: 0, b: 0, a: 0}
+ key3: {r: 0, g: 0, b: 0, a: 0}
+ key4: {r: 0, g: 0, b: 0, a: 0}
+ key5: {r: 0, g: 0, b: 0, a: 0}
+ key6: {r: 0, g: 0, b: 0, a: 0}
+ key7: {r: 0, g: 0, b: 0, a: 0}
+ ctime0: 0
+ ctime1: 65535
+ ctime2: 0
+ ctime3: 0
+ ctime4: 0
+ ctime5: 0
+ ctime6: 0
+ ctime7: 0
+ atime0: 0
+ atime1: 65535
+ atime2: 0
+ atime3: 0
+ atime4: 0
+ atime5: 0
+ atime6: 0
+ atime7: 0
+ m_Mode: 0
+ m_NumColorKeys: 2
+ m_NumAlphaKeys: 2
+ range: {x: 0, y: 1}
+ CollisionModule:
+ enabled: 0
+ serializedVersion: 3
+ type: 0
+ collisionMode: 0
+ colliderForce: 0
+ multiplyColliderForceByParticleSize: 0
+ multiplyColliderForceByParticleSpeed: 0
+ multiplyColliderForceByCollisionAngle: 1
+ plane0: {fileID: 0}
+ plane1: {fileID: 0}
+ plane2: {fileID: 0}
+ plane3: {fileID: 0}
+ plane4: {fileID: 0}
+ plane5: {fileID: 0}
+ m_Dampen:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ m_Bounce:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ m_EnergyLossOnCollision:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minKillSpeed: 0
+ maxKillSpeed: 10000
+ radiusScale: 1
+ collidesWith:
+ serializedVersion: 2
+ m_Bits: 4294967295
+ maxCollisionShapes: 256
+ quality: 0
+ voxelSize: 0.5
+ collisionMessages: 0
+ collidesWithDynamic: 1
+ interiorCollisions: 0
+ TriggerModule:
+ enabled: 0
+ collisionShape0: {fileID: 0}
+ collisionShape1: {fileID: 0}
+ collisionShape2: {fileID: 0}
+ collisionShape3: {fileID: 0}
+ collisionShape4: {fileID: 0}
+ collisionShape5: {fileID: 0}
+ inside: 1
+ outside: 0
+ enter: 0
+ exit: 0
+ radiusScale: 1
+ SubModule:
+ serializedVersion: 2
+ enabled: 0
+ subEmitters:
+ - serializedVersion: 3
+ emitter: {fileID: 0}
+ type: 0
+ properties: 0
+ emitProbability: 1
+ LightsModule:
+ enabled: 0
+ ratio: 0
+ light: {fileID: 0}
+ randomDistribution: 1
+ color: 1
+ range: 1
+ intensity: 1
+ rangeCurve:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ intensityCurve:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ maxLights: 20
+ TrailModule:
+ enabled: 1
+ mode: 0
+ ratio: 1
+ lifetime:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 1
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minVertexDistance: 0.2
+ textureMode: 0
+ ribbonCount: 1
+ shadowBias: 0.5
+ worldSpace: 0
+ dieWithParticles: 1
+ sizeAffectsWidth: 1
+ sizeAffectsLifetime: 0
+ inheritParticleColor: 1
+ generateLightingData: 0
+ splitSubEmitterRibbons: 0
+ attachRibbonsToTransform: 0
+ colorOverLifetime:
+ serializedVersion: 2
+ minMaxState: 0
+ minColor: {r: 1, g: 1, b: 1, a: 1}
+ maxColor: {r: 1, g: 1, b: 1, a: 1}
+ maxGradient:
+ serializedVersion: 2
+ key0: {r: 1, g: 1, b: 1, a: 1}
+ key1: {r: 1, g: 1, b: 1, a: 1}
+ key2: {r: 0, g: 0, b: 0, a: 0}
+ key3: {r: 0, g: 0, b: 0, a: 0}
+ key4: {r: 0, g: 0, b: 0, a: 0}
+ key5: {r: 0, g: 0, b: 0, a: 0}
+ key6: {r: 0, g: 0, b: 0, a: 0}
+ key7: {r: 0, g: 0, b: 0, a: 0}
+ ctime0: 0
+ ctime1: 65535
+ ctime2: 0
+ ctime3: 0
+ ctime4: 0
+ ctime5: 0
+ ctime6: 0
+ ctime7: 0
+ atime0: 0
+ atime1: 65535
+ atime2: 0
+ atime3: 0
+ atime4: 0
+ atime5: 0
+ atime6: 0
+ atime7: 0
+ m_Mode: 0
+ m_NumColorKeys: 2
+ m_NumAlphaKeys: 2
+ minGradient:
+ serializedVersion: 2
+ key0: {r: 1, g: 1, b: 1, a: 1}
+ key1: {r: 1, g: 1, b: 1, a: 1}
+ key2: {r: 0, g: 0, b: 0, a: 0}
+ key3: {r: 0, g: 0, b: 0, a: 0}
+ key4: {r: 0, g: 0, b: 0, a: 0}
+ key5: {r: 0, g: 0, b: 0, a: 0}
+ key6: {r: 0, g: 0, b: 0, a: 0}
+ key7: {r: 0, g: 0, b: 0, a: 0}
+ ctime0: 0
+ ctime1: 65535
+ ctime2: 0
+ ctime3: 0
+ ctime4: 0
+ ctime5: 0
+ ctime6: 0
+ ctime7: 0
+ atime0: 0
+ atime1: 65535
+ atime2: 0
+ atime3: 0
+ atime4: 0
+ atime5: 0
+ atime6: 0
+ atime7: 0
+ m_Mode: 0
+ m_NumColorKeys: 2
+ m_NumAlphaKeys: 2
+ widthOverTrail:
+ serializedVersion: 2
+ minMaxState: 1
+ scalar: 4
+ minScalar: 1
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0
+ outWeight: 0
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 2
+ outSlope: 2
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0
+ outWeight: 0
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 1
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ colorOverTrail:
+ serializedVersion: 2
+ minMaxState: 0
+ minColor: {r: 1, g: 1, b: 1, a: 1}
+ maxColor: {r: 1, g: 1, b: 1, a: 1}
+ maxGradient:
+ serializedVersion: 2
+ key0: {r: 1, g: 1, b: 1, a: 1}
+ key1: {r: 1, g: 1, b: 1, a: 1}
+ key2: {r: 0, g: 0, b: 0, a: 0}
+ key3: {r: 0, g: 0, b: 0, a: 0}
+ key4: {r: 0, g: 0, b: 0, a: 0}
+ key5: {r: 0, g: 0, b: 0, a: 0}
+ key6: {r: 0, g: 0, b: 0, a: 0}
+ key7: {r: 0, g: 0, b: 0, a: 0}
+ ctime0: 0
+ ctime1: 65535
+ ctime2: 0
+ ctime3: 0
+ ctime4: 0
+ ctime5: 0
+ ctime6: 0
+ ctime7: 0
+ atime0: 0
+ atime1: 65535
+ atime2: 0
+ atime3: 0
+ atime4: 0
+ atime5: 0
+ atime6: 0
+ atime7: 0
+ m_Mode: 0
+ m_NumColorKeys: 2
+ m_NumAlphaKeys: 2
+ minGradient:
+ serializedVersion: 2
+ key0: {r: 1, g: 1, b: 1, a: 1}
+ key1: {r: 1, g: 1, b: 1, a: 1}
+ key2: {r: 0, g: 0, b: 0, a: 0}
+ key3: {r: 0, g: 0, b: 0, a: 0}
+ key4: {r: 0, g: 0, b: 0, a: 0}
+ key5: {r: 0, g: 0, b: 0, a: 0}
+ key6: {r: 0, g: 0, b: 0, a: 0}
+ key7: {r: 0, g: 0, b: 0, a: 0}
+ ctime0: 0
+ ctime1: 65535
+ ctime2: 0
+ ctime3: 0
+ ctime4: 0
+ ctime5: 0
+ ctime6: 0
+ ctime7: 0
+ atime0: 0
+ atime1: 65535
+ atime2: 0
+ atime3: 0
+ atime4: 0
+ atime5: 0
+ atime6: 0
+ atime7: 0
+ m_Mode: 0
+ m_NumColorKeys: 2
+ m_NumAlphaKeys: 2
+ CustomDataModule:
+ enabled: 0
+ mode0: 0
+ vectorComponentCount0: 4
+ color0:
+ serializedVersion: 2
+ minMaxState: 0
+ minColor: {r: 1, g: 1, b: 1, a: 1}
+ maxColor: {r: 1, g: 1, b: 1, a: 1}
+ maxGradient:
+ serializedVersion: 2
+ key0: {r: 1, g: 1, b: 1, a: 1}
+ key1: {r: 1, g: 1, b: 1, a: 1}
+ key2: {r: 0, g: 0, b: 0, a: 0}
+ key3: {r: 0, g: 0, b: 0, a: 0}
+ key4: {r: 0, g: 0, b: 0, a: 0}
+ key5: {r: 0, g: 0, b: 0, a: 0}
+ key6: {r: 0, g: 0, b: 0, a: 0}
+ key7: {r: 0, g: 0, b: 0, a: 0}
+ ctime0: 0
+ ctime1: 65535
+ ctime2: 0
+ ctime3: 0
+ ctime4: 0
+ ctime5: 0
+ ctime6: 0
+ ctime7: 0
+ atime0: 0
+ atime1: 65535
+ atime2: 0
+ atime3: 0
+ atime4: 0
+ atime5: 0
+ atime6: 0
+ atime7: 0
+ m_Mode: 0
+ m_NumColorKeys: 2
+ m_NumAlphaKeys: 2
+ minGradient:
+ serializedVersion: 2
+ key0: {r: 1, g: 1, b: 1, a: 1}
+ key1: {r: 1, g: 1, b: 1, a: 1}
+ key2: {r: 0, g: 0, b: 0, a: 0}
+ key3: {r: 0, g: 0, b: 0, a: 0}
+ key4: {r: 0, g: 0, b: 0, a: 0}
+ key5: {r: 0, g: 0, b: 0, a: 0}
+ key6: {r: 0, g: 0, b: 0, a: 0}
+ key7: {r: 0, g: 0, b: 0, a: 0}
+ ctime0: 0
+ ctime1: 65535
+ ctime2: 0
+ ctime3: 0
+ ctime4: 0
+ ctime5: 0
+ ctime6: 0
+ ctime7: 0
+ atime0: 0
+ atime1: 65535
+ atime2: 0
+ atime3: 0
+ atime4: 0
+ atime5: 0
+ atime6: 0
+ atime7: 0
+ m_Mode: 0
+ m_NumColorKeys: 2
+ m_NumAlphaKeys: 2
+ colorLabel0: Color
+ vector0_0:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ vectorLabel0_0: X
+ vector0_1:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ vectorLabel0_1: Y
+ vector0_2:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ vectorLabel0_2: Z
+ vector0_3:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ vectorLabel0_3: W
+ mode1: 0
+ vectorComponentCount1: 4
+ color1:
+ serializedVersion: 2
+ minMaxState: 0
+ minColor: {r: 1, g: 1, b: 1, a: 1}
+ maxColor: {r: 1, g: 1, b: 1, a: 1}
+ maxGradient:
+ serializedVersion: 2
+ key0: {r: 1, g: 1, b: 1, a: 1}
+ key1: {r: 1, g: 1, b: 1, a: 1}
+ key2: {r: 0, g: 0, b: 0, a: 0}
+ key3: {r: 0, g: 0, b: 0, a: 0}
+ key4: {r: 0, g: 0, b: 0, a: 0}
+ key5: {r: 0, g: 0, b: 0, a: 0}
+ key6: {r: 0, g: 0, b: 0, a: 0}
+ key7: {r: 0, g: 0, b: 0, a: 0}
+ ctime0: 0
+ ctime1: 65535
+ ctime2: 0
+ ctime3: 0
+ ctime4: 0
+ ctime5: 0
+ ctime6: 0
+ ctime7: 0
+ atime0: 0
+ atime1: 65535
+ atime2: 0
+ atime3: 0
+ atime4: 0
+ atime5: 0
+ atime6: 0
+ atime7: 0
+ m_Mode: 0
+ m_NumColorKeys: 2
+ m_NumAlphaKeys: 2
+ minGradient:
+ serializedVersion: 2
+ key0: {r: 1, g: 1, b: 1, a: 1}
+ key1: {r: 1, g: 1, b: 1, a: 1}
+ key2: {r: 0, g: 0, b: 0, a: 0}
+ key3: {r: 0, g: 0, b: 0, a: 0}
+ key4: {r: 0, g: 0, b: 0, a: 0}
+ key5: {r: 0, g: 0, b: 0, a: 0}
+ key6: {r: 0, g: 0, b: 0, a: 0}
+ key7: {r: 0, g: 0, b: 0, a: 0}
+ ctime0: 0
+ ctime1: 65535
+ ctime2: 0
+ ctime3: 0
+ ctime4: 0
+ ctime5: 0
+ ctime6: 0
+ ctime7: 0
+ atime0: 0
+ atime1: 65535
+ atime2: 0
+ atime3: 0
+ atime4: 0
+ atime5: 0
+ atime6: 0
+ atime7: 0
+ m_Mode: 0
+ m_NumColorKeys: 2
+ m_NumAlphaKeys: 2
+ colorLabel1: Color
+ vector1_0:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ vectorLabel1_0: X
+ vector1_1:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ vectorLabel1_1: Y
+ vector1_2:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ vectorLabel1_2: Z
+ vector1_3:
+ serializedVersion: 2
+ minMaxState: 0
+ scalar: 0
+ minScalar: 0
+ maxCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ minCurve:
+ serializedVersion: 2
+ m_Curve:
+ - serializedVersion: 3
+ time: 0
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ - serializedVersion: 3
+ time: 1
+ value: 0
+ inSlope: 0
+ outSlope: 0
+ tangentMode: 0
+ weightedMode: 0
+ inWeight: 0.33333334
+ outWeight: 0.33333334
+ m_PreInfinity: 2
+ m_PostInfinity: 2
+ m_RotationOrder: 4
+ vectorLabel1_3: W
+--- !u!199 &4396918519991313108
+ParticleSystemRenderer:
+ serializedVersion: 6
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 7847908271862099961}
+ m_Enabled: 1
+ m_CastShadows: 0
+ m_ReceiveShadows: 0
+ m_DynamicOccludee: 1
+ m_MotionVectors: 1
+ m_LightProbeUsage: 0
+ m_ReflectionProbeUsage: 0
+ m_RayTracingMode: 0
+ m_RayTraceProcedural: 0
+ m_RenderingLayerMask: 1
+ m_RendererPriority: 0
+ m_Materials:
+ - {fileID: 2100000, guid: 6af0f423a2567be43b16d152d2b60e0c, type: 2}
+ - {fileID: 2100000, guid: 9c20b9ccbbbb1b14cb5729e0c8460cd9, 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_RenderMode: 5
+ m_SortMode: 0
+ m_MinParticleSize: 0
+ m_MaxParticleSize: 0.5
+ m_CameraVelocityScale: 0
+ m_VelocityScale: 0
+ m_LengthScale: 2
+ m_SortingFudge: 0
+ m_NormalDirection: 1
+ m_ShadowBias: 0
+ m_RenderAlignment: 0
+ m_Pivot: {x: 0, y: 0, z: 0}
+ m_Flip: {x: 0, y: 0, z: 0}
+ m_UseCustomVertexStreams: 0
+ m_EnableGPUInstancing: 1
+ m_ApplyActiveColorSpace: 1
+ m_AllowRoll: 1
+ m_FreeformStretching: 0
+ m_RotateWithStretchDirection: 1
+ m_VertexStreams: 00010304
+ m_Mesh: {fileID: 0}
+ m_Mesh1: {fileID: 0}
+ m_Mesh2: {fileID: 0}
+ m_Mesh3: {fileID: 0}
+ m_MaskInteraction: 0
diff --git a/Assets/Resources/Prefabs/Thruster 1.prefab.meta b/Assets/Resources/Prefabs/Thruster 1.prefab.meta
new file mode 100644
index 000000000..b4ebd24d1
--- /dev/null
+++ b/Assets/Resources/Prefabs/Thruster 1.prefab.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 016516404b2bc1649bdf789bfc96d1cb
+PrefabImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Resources/Prefabs/Zenith.prefab b/Assets/Resources/Prefabs/Zenith.prefab
index 90cb3acc2..236d714d4 100644
--- a/Assets/Resources/Prefabs/Zenith.prefab
+++ b/Assets/Resources/Prefabs/Zenith.prefab
@@ -23,7 +23,7 @@ Transform:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5347824108838409208}
- m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
+ 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_Children:
@@ -93,6 +93,21 @@ PrefabInstance:
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
+ - target: {fileID: -8679921383154817045, guid: 7b7796ac88cf0724ca09bddf817828f1,
+ type: 3}
+ propertyPath: m_LocalScale.x
+ value: 3
+ objectReference: {fileID: 0}
+ - target: {fileID: -8679921383154817045, guid: 7b7796ac88cf0724ca09bddf817828f1,
+ type: 3}
+ propertyPath: m_LocalScale.y
+ value: 3
+ objectReference: {fileID: 0}
+ - target: {fileID: -8679921383154817045, guid: 7b7796ac88cf0724ca09bddf817828f1,
+ type: 3}
+ propertyPath: m_LocalScale.z
+ value: 3
+ objectReference: {fileID: 0}
- target: {fileID: 919132149155446097, guid: 7b7796ac88cf0724ca09bddf817828f1,
type: 3}
propertyPath: m_Name
diff --git a/Assets/Resources/Settings.asset b/Assets/Resources/Settings.asset
index 35272bc02..885fa96ff 100644
--- a/Assets/Resources/Settings.asset
+++ b/Assets/Resources/Settings.asset
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:5a9207b5fc79923f8827bf3ea28c208d0a0306a6b484d9e86f6e3d224103b16b
-size 4339
+oid sha256:f6ba1f78966afdf289deba32366876e6eabcc13568b4aaf7c9c582bd6fd1142e
+size 4337
diff --git a/Assets/Resources/Sprites/Mote.png b/Assets/Resources/Sprites/Mote.png
new file mode 100644
index 000000000..20ccbe463
--- /dev/null
+++ b/Assets/Resources/Sprites/Mote.png
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:0c8920ccdfad23bf8523693ade65bb9c2e0d94b5669693bf839977e0059c94ee
+size 3343
diff --git a/Assets/Resources/Sprites/Mote.png.meta b/Assets/Resources/Sprites/Mote.png.meta
new file mode 100644
index 000000000..597a81c84
--- /dev/null
+++ b/Assets/Resources/Sprites/Mote.png.meta
@@ -0,0 +1,118 @@
+fileFormatVersion: 2
+guid: 1d6eba2a167939a468c00fda35723dd0
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 11
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 1
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: -1
+ aniso: -1
+ mipBias: -100
+ wrapU: -1
+ wrapV: -1
+ wrapW: -1
+ nPOTScale: 1
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 1
+ spriteTessellationDetail: -1
+ textureType: 0
+ textureShape: 1
+ singleChannelComponent: 0
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: WebGL
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ spritePackingTag:
+ pSDRemoveMatte: 0
+ pSDShowRemoveMatteOption: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/Scenes/ARPG.unity b/Assets/Scenes/ARPG.unity
index eb5516888..d3789b392 100644
--- a/Assets/Scenes/ARPG.unity
+++ b/Assets/Scenes/ARPG.unity
@@ -408,10 +408,10 @@ RectTransform:
m_Father: {fileID: 1783772015}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
- m_AnchorMin: {x: 0, y: 0}
- m_AnchorMax: {x: 0, y: 0}
- m_AnchoredPosition: {x: 0, y: 0}
- m_SizeDelta: {x: 0, y: 0}
+ m_AnchorMin: {x: 0, y: 1}
+ m_AnchorMax: {x: 0, y: 1}
+ m_AnchoredPosition: {x: 736.58, y: -40}
+ m_SizeDelta: {x: 329.91, y: 56}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &101395091
MonoBehaviour:
@@ -929,7 +929,7 @@ Transform:
- {fileID: 488792361}
- {fileID: 970624070}
m_Father: {fileID: 1665127616}
- m_RootOrder: 4
+ m_RootOrder: 5
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &218215087
GameObject:
@@ -1561,6 +1561,139 @@ RectTransform:
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 100, y: 100}
m_Pivot: {x: 0.5, y: 0.5}
+--- !u!1 &359038938
+GameObject:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 359038939}
+ - component: {fileID: 359038943}
+ - component: {fileID: 359038942}
+ - component: {fileID: 359038941}
+ - component: {fileID: 359038940}
+ m_Layer: 0
+ m_Name: cm
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &359038939
+Transform:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 359038938}
+ m_LocalRotation: {x: -0.2677866, y: 0.37796336, z: -0.115197934, w: 0.87872833}
+ m_LocalPosition: {x: 0.27700424, y: 0.74153686, z: 4.1357794}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_Children: []
+ m_Father: {fileID: 393266592}
+ m_RootOrder: 0
+ m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
+--- !u!114 &359038940
+MonoBehaviour:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 359038938}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 6ad980451443d70438faac0bc6c235a0, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_TrackedObjectOffset: {x: 0, y: 0, z: 0}
+ m_LookaheadTime: 0
+ m_LookaheadSmoothing: 0
+ m_LookaheadIgnoreY: 0
+ m_XDamping: 2
+ m_YDamping: 2
+ m_ZDamping: 2
+ m_TargetMovementOnly: 1
+ m_ScreenX: 0.66
+ m_ScreenY: 0.55
+ m_CameraDistance: 70
+ m_DeadZoneWidth: 0
+ m_DeadZoneHeight: 0
+ m_DeadZoneDepth: 0
+ m_UnlimitedSoftZone: 0
+ m_SoftZoneWidth: 0.8
+ m_SoftZoneHeight: 0.8
+ m_BiasX: 0
+ m_BiasY: 0
+ m_CenterOnActivate: 1
+ m_GroupFramingMode: 2
+ m_AdjustmentMode: 0
+ m_GroupFramingSize: 0.8
+ m_MaxDollyIn: 5000
+ m_MaxDollyOut: 5000
+ m_MinimumDistance: 1
+ m_MaximumDistance: 5000
+ m_MinimumFOV: 3
+ m_MaximumFOV: 60
+ m_MinimumOrthoSize: 1
+ m_MaximumOrthoSize: 5000
+--- !u!114 &359038941
+MonoBehaviour:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 359038938}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: f4044717213e31446939f7bd49c896ea, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_TrackedObjectOffset: {x: 0, y: 0, z: 0}
+ m_LookaheadTime: 1
+ m_LookaheadSmoothing: 3
+ m_LookaheadIgnoreY: 0
+ m_HorizontalDamping: 5
+ m_VerticalDamping: 5
+ m_ScreenX: 0.33
+ m_ScreenY: 0.33
+ m_DeadZoneWidth: 0
+ m_DeadZoneHeight: 0
+ m_SoftZoneWidth: 0.8
+ m_SoftZoneHeight: 0.8
+ m_BiasX: 0
+ m_BiasY: -0.000000037252903
+ m_CenterOnActivate: 1
+--- !u!114 &359038942
+MonoBehaviour:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 359038938}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 68bb026fafb42b14791938953eaace77, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_NoiseProfile: {fileID: 11400000, guid: 46965f9cbaf525742a6da4c2172a99cd, type: 2}
+ m_PivotOffset: {x: 0, y: 0, z: 0}
+ m_AmplitudeGain: 0.25
+ m_FrequencyGain: 0.5
+ mNoiseOffsets: {x: 0, y: 0, z: 0}
+--- !u!114 &359038943
+MonoBehaviour:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 359038938}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: ac0b09e7857660247b1477e93731de29, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
--- !u!1001 &375660864
PrefabInstance:
m_ObjectHideFlags: 0
@@ -1751,6 +1884,73 @@ RectTransform:
type: 3}
m_PrefabInstance: {fileID: 375660864}
m_PrefabAsset: {fileID: 0}
+--- !u!1 &393266591
+GameObject:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ serializedVersion: 6
+ m_Component:
+ - component: {fileID: 393266592}
+ - component: {fileID: 393266593}
+ m_Layer: 0
+ m_Name: Docked Rig
+ m_TagString: Untagged
+ m_Icon: {fileID: 0}
+ m_NavMeshLayer: 0
+ m_StaticEditorFlags: 0
+ m_IsActive: 1
+--- !u!4 &393266592
+Transform:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 393266591}
+ m_LocalRotation: {x: -0, y: -0.9228971, z: -0, w: 0.3850468}
+ m_LocalPosition: {x: 53.6, y: 0, z: 21}
+ m_LocalScale: {x: 1, y: 1, z: 1}
+ m_Children:
+ - {fileID: 359038939}
+ m_Father: {fileID: 1665127616}
+ m_RootOrder: 1
+ m_LocalEulerAnglesHint: {x: 0, y: -134.707, z: 0}
+--- !u!114 &393266593
+MonoBehaviour:
+ m_ObjectHideFlags: 0
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 393266591}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: 45e653bab7fb20e499bda25e1b646fea, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_ExcludedPropertiesInInspector:
+ - m_Script
+ m_LockStageInInspector:
+ m_StreamingVersion: 20170927
+ m_Priority: 10
+ m_StandbyUpdate: 2
+ m_LookAt: {fileID: 0}
+ m_Follow: {fileID: 0}
+ m_Lens:
+ FieldOfView: 60
+ OrthographicSize: 5
+ NearClipPlane: 0.3
+ FarClipPlane: 1000
+ Dutch: 0
+ LensShift: {x: 0, y: 0}
+ m_Transitions:
+ m_BlendHint: 0
+ m_InheritPosition: 0
+ m_OnCameraLive:
+ m_PersistentCalls:
+ m_Calls: []
+ m_LegacyBlendHint: 0
+ m_ComponentOwner: {fileID: 359038939}
--- !u!1 &460484048
GameObject:
m_ObjectHideFlags: 0
@@ -3602,7 +3802,7 @@ Transform:
- {fileID: 1075335641}
- {fileID: 166261017}
m_Father: {fileID: 1665127616}
- m_RootOrder: 5
+ m_RootOrder: 6
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &861158450
GameObject:
@@ -3943,7 +4143,7 @@ MonoBehaviour:
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 887677621}
- m_Enabled: 1
+ m_Enabled: 0
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 45e653bab7fb20e499bda25e1b646fea, type: 3}
m_Name:
@@ -3960,7 +4160,7 @@ MonoBehaviour:
FieldOfView: 60
OrthographicSize: 5
NearClipPlane: 0.3
- FarClipPlane: 1000
+ FarClipPlane: 8192
Dutch: 0
LensShift: {x: 0, y: 0}
m_Transitions:
@@ -3979,7 +4179,7 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 887677621}
m_LocalRotation: {x: -0, y: -0.9228971, z: -0, w: 0.3850468}
- m_LocalPosition: {x: 0, y: 0, z: -2.5}
+ m_LocalPosition: {x: 53.6, y: 0, z: 21}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 1319157835}
@@ -4020,10 +4220,10 @@ RectTransform:
m_Father: {fileID: 1783772015}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
- m_AnchorMin: {x: 0, y: 0}
- m_AnchorMax: {x: 0, y: 0}
- m_AnchoredPosition: {x: 0, y: 0}
- m_SizeDelta: {x: 0, y: 0}
+ m_AnchorMin: {x: 0, y: 1}
+ m_AnchorMax: {x: 0, y: 1}
+ m_AnchoredPosition: {x: 974.955, y: -40}
+ m_SizeDelta: {x: 146.84, y: 56}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &931657852
MonoBehaviour:
@@ -4210,7 +4410,7 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 1665127616}
- m_RootOrder: 2
+ m_RootOrder: 3
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &937280109
MonoBehaviour:
@@ -4524,11 +4724,14 @@ MonoBehaviour:
m_EditorClassIdentifier:
Settings: {fileID: 11400000, guid: cd2344e2001a37544aab0960c164d4ff, type: 2}
SectorRenderer: {fileID: 1009503731}
- TopDownCamera: {fileID: 887677622}
+ DockCamera: {fileID: 393266593}
FollowCamera: {fileID: 887677622}
GameplayUI: {fileID: 346000246}
Menu: {fileID: 1726632268}
Inventory: {fileID: 1997243495}
+ Sensitivity:
+ x: -0.005
+ y: 0.0025
--- !u!4 &1009503730
Transform:
m_ObjectHideFlags: 0
@@ -4541,7 +4744,7 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
- m_RootOrder: 3
+ m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1009503731
MonoBehaviour:
@@ -4851,7 +5054,7 @@ Transform:
- {fileID: 1108843909}
- {fileID: 1647230682}
m_Father: {fileID: 0}
- m_RootOrder: 4
+ m_RootOrder: 3
m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0}
--- !u!1 &1075335640
GameObject:
@@ -5345,8 +5548,8 @@ GameObject:
- component: {fileID: 1319157835}
- component: {fileID: 1319157839}
- component: {fileID: 1319157836}
- - component: {fileID: 1319157838}
- component: {fileID: 1319157837}
+ - component: {fileID: 1319157838}
m_Layer: 0
m_Name: cm
m_TagString: Untagged
@@ -5386,6 +5589,33 @@ MonoBehaviour:
m_FrequencyGain: 0.5
mNoiseOffsets: {x: 0, y: 0, z: 0}
--- !u!114 &1319157837
+MonoBehaviour:
+ m_ObjectHideFlags: 3
+ m_CorrespondingSourceObject: {fileID: 0}
+ m_PrefabInstance: {fileID: 0}
+ m_PrefabAsset: {fileID: 0}
+ m_GameObject: {fileID: 1319157834}
+ m_Enabled: 1
+ m_EditorHideFlags: 0
+ m_Script: {fileID: 11500000, guid: f4044717213e31446939f7bd49c896ea, type: 3}
+ m_Name:
+ m_EditorClassIdentifier:
+ m_TrackedObjectOffset: {x: 0, y: 0, z: 0}
+ m_LookaheadTime: 0
+ m_LookaheadSmoothing: 0
+ m_LookaheadIgnoreY: 0
+ m_HorizontalDamping: 0.5
+ m_VerticalDamping: 0.5
+ m_ScreenX: 0.5
+ m_ScreenY: 0.5
+ m_DeadZoneWidth: 0
+ m_DeadZoneHeight: 0
+ m_SoftZoneWidth: 0.8
+ m_SoftZoneHeight: 0.8
+ m_BiasX: 0
+ m_BiasY: 0
+ m_CenterOnActivate: 1
+--- !u!114 &1319157838
MonoBehaviour:
m_ObjectHideFlags: 3
m_CorrespondingSourceObject: {fileID: 0}
@@ -5401,13 +5631,13 @@ MonoBehaviour:
m_LookaheadTime: 0
m_LookaheadSmoothing: 0
m_LookaheadIgnoreY: 0
- m_XDamping: 1
- m_YDamping: 1
- m_ZDamping: 1
+ m_XDamping: 0
+ m_YDamping: 0
+ m_ZDamping: 0
m_TargetMovementOnly: 1
- m_ScreenX: 0.666
- m_ScreenY: 0.666
- m_CameraDistance: 70
+ m_ScreenX: 0.64
+ m_ScreenY: 0.81
+ m_CameraDistance: 30
m_DeadZoneWidth: 0
m_DeadZoneHeight: 0
m_DeadZoneDepth: 0
@@ -5415,7 +5645,7 @@ MonoBehaviour:
m_SoftZoneWidth: 0.8
m_SoftZoneHeight: 0.8
m_BiasX: 0
- m_BiasY: 0
+ m_BiasY: -0.000000074505806
m_CenterOnActivate: 1
m_GroupFramingMode: 2
m_AdjustmentMode: 0
@@ -5428,33 +5658,6 @@ MonoBehaviour:
m_MaximumFOV: 60
m_MinimumOrthoSize: 1
m_MaximumOrthoSize: 5000
---- !u!114 &1319157838
-MonoBehaviour:
- m_ObjectHideFlags: 3
- m_CorrespondingSourceObject: {fileID: 0}
- m_PrefabInstance: {fileID: 0}
- m_PrefabAsset: {fileID: 0}
- m_GameObject: {fileID: 1319157834}
- m_Enabled: 1
- m_EditorHideFlags: 0
- m_Script: {fileID: 11500000, guid: f4044717213e31446939f7bd49c896ea, type: 3}
- m_Name:
- m_EditorClassIdentifier:
- m_TrackedObjectOffset: {x: 0, y: 0, z: 0}
- m_LookaheadTime: 1
- m_LookaheadSmoothing: 3
- m_LookaheadIgnoreY: 0
- m_HorizontalDamping: 5
- m_VerticalDamping: 5
- m_ScreenX: 0.33
- m_ScreenY: 0.33
- m_DeadZoneWidth: 0
- m_DeadZoneHeight: 0
- m_SoftZoneWidth: 0.8
- m_SoftZoneHeight: 0.8
- m_BiasX: 0
- m_BiasY: -0.000000037252903
- m_CenterOnActivate: 1
--- !u!114 &1319157839
MonoBehaviour:
m_ObjectHideFlags: 3
@@ -6226,7 +6429,7 @@ Transform:
- {fileID: 1537342002}
- {fileID: 39508928}
m_Father: {fileID: 1665127616}
- m_RootOrder: 3
+ m_RootOrder: 4
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1547889400
MonoBehaviour:
@@ -7193,13 +7396,14 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children:
- {fileID: 887677623}
+ - {fileID: 393266592}
- {fileID: 2115559090}
- {fileID: 937280108}
- {fileID: 1547889399}
- {fileID: 199435031}
- {fileID: 826773974}
m_Father: {fileID: 0}
- m_RootOrder: 2
+ m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1698810627
GameObject:
@@ -7431,7 +7635,7 @@ GameObject:
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
- m_IsActive: 1
+ m_IsActive: 0
--- !u!224 &1726632265
RectTransform:
m_ObjectHideFlags: 0
@@ -8491,7 +8695,7 @@ Transform:
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
- m_RootOrder: 5
+ m_RootOrder: 4
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1001 &2107503125
PrefabInstance:
@@ -8964,11 +9168,11 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2115559087}
m_LocalRotation: {x: -0, y: -0.9228971, z: -0, w: 0.3850468}
- m_LocalPosition: {x: 0, y: 0, z: -2.5}
+ m_LocalPosition: {x: 53.6, y: 0, z: 21}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 1665127616}
- m_RootOrder: 1
+ m_RootOrder: 2
m_LocalEulerAnglesHint: {x: 10.742, y: -15.218, z: 0}
--- !u!114 &2115559091
MonoBehaviour:
@@ -12716,95 +12920,6 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2352149241950064197}
m_CullTransparentMesh: 0
---- !u!1001 &2820167578929834581
-PrefabInstance:
- m_ObjectHideFlags: 0
- serializedVersion: 2
- m_Modification:
- m_TransformParent: {fileID: 0}
- m_Modifications:
- - target: {fileID: 2353559640203777757, guid: cc23690c99435cc4db51e05d523d273d,
- type: 3}
- propertyPath: m_LocalScale.x
- value: 2
- objectReference: {fileID: 0}
- - target: {fileID: 2353559640203777757, guid: cc23690c99435cc4db51e05d523d273d,
- type: 3}
- propertyPath: m_LocalScale.y
- value: 2
- objectReference: {fileID: 0}
- - target: {fileID: 2353559640203777757, guid: cc23690c99435cc4db51e05d523d273d,
- type: 3}
- propertyPath: m_LocalScale.z
- value: 2
- objectReference: {fileID: 0}
- - target: {fileID: 5347824108838409208, guid: cc23690c99435cc4db51e05d523d273d,
- type: 3}
- propertyPath: m_Name
- value: Zenith
- objectReference: {fileID: 0}
- - target: {fileID: 5347824108838409208, guid: cc23690c99435cc4db51e05d523d273d,
- type: 3}
- propertyPath: m_IsActive
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 7719100217559641643, guid: cc23690c99435cc4db51e05d523d273d,
- type: 3}
- propertyPath: m_LocalPosition.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 7719100217559641643, guid: cc23690c99435cc4db51e05d523d273d,
- type: 3}
- propertyPath: m_LocalPosition.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 7719100217559641643, guid: cc23690c99435cc4db51e05d523d273d,
- type: 3}
- propertyPath: m_LocalPosition.z
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 7719100217559641643, guid: cc23690c99435cc4db51e05d523d273d,
- type: 3}
- propertyPath: m_LocalRotation.x
- value: -0
- objectReference: {fileID: 0}
- - target: {fileID: 7719100217559641643, guid: cc23690c99435cc4db51e05d523d273d,
- type: 3}
- propertyPath: m_LocalRotation.y
- value: -0
- objectReference: {fileID: 0}
- - target: {fileID: 7719100217559641643, guid: cc23690c99435cc4db51e05d523d273d,
- type: 3}
- propertyPath: m_LocalRotation.z
- value: -0
- objectReference: {fileID: 0}
- - target: {fileID: 7719100217559641643, guid: cc23690c99435cc4db51e05d523d273d,
- type: 3}
- propertyPath: m_LocalRotation.w
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 7719100217559641643, guid: cc23690c99435cc4db51e05d523d273d,
- type: 3}
- propertyPath: m_RootOrder
- value: 6
- objectReference: {fileID: 0}
- - target: {fileID: 7719100217559641643, guid: cc23690c99435cc4db51e05d523d273d,
- type: 3}
- propertyPath: m_LocalEulerAnglesHint.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 7719100217559641643, guid: cc23690c99435cc4db51e05d523d273d,
- type: 3}
- propertyPath: m_LocalEulerAnglesHint.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 7719100217559641643, guid: cc23690c99435cc4db51e05d523d273d,
- type: 3}
- propertyPath: m_LocalEulerAnglesHint.z
- value: 0
- objectReference: {fileID: 0}
- m_RemovedComponents: []
- m_SourcePrefab: {fileID: 100100000, guid: cc23690c99435cc4db51e05d523d273d, type: 3}
--- !u!114 &7399108072567155888
MonoBehaviour:
m_ObjectHideFlags: 0
@@ -13176,77 +13291,3 @@ MonoBehaviour:
m_FlexibleWidth: 9999
m_FlexibleHeight: -1
m_LayoutPriority: 1
---- !u!1001 &8784470447332018199
-PrefabInstance:
- m_ObjectHideFlags: 0
- serializedVersion: 2
- m_Modification:
- m_TransformParent: {fileID: 0}
- m_Modifications:
- - target: {fileID: 8442521443025013260, guid: 79024f635e46f5546b670b58b07fa037,
- type: 3}
- propertyPath: m_Name
- value: Djinni
- objectReference: {fileID: 0}
- - target: {fileID: 8442521443025013260, guid: 79024f635e46f5546b670b58b07fa037,
- type: 3}
- propertyPath: m_IsActive
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 9106854767781449910, guid: 79024f635e46f5546b670b58b07fa037,
- type: 3}
- propertyPath: m_LocalPosition.x
- value: 1547.9908
- objectReference: {fileID: 0}
- - target: {fileID: 9106854767781449910, guid: 79024f635e46f5546b670b58b07fa037,
- type: 3}
- propertyPath: m_LocalPosition.y
- value: 799.0965
- objectReference: {fileID: 0}
- - target: {fileID: 9106854767781449910, guid: 79024f635e46f5546b670b58b07fa037,
- type: 3}
- propertyPath: m_LocalPosition.z
- value: -2571.4744
- objectReference: {fileID: 0}
- - target: {fileID: 9106854767781449910, guid: 79024f635e46f5546b670b58b07fa037,
- type: 3}
- propertyPath: m_LocalRotation.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 9106854767781449910, guid: 79024f635e46f5546b670b58b07fa037,
- type: 3}
- propertyPath: m_LocalRotation.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 9106854767781449910, guid: 79024f635e46f5546b670b58b07fa037,
- type: 3}
- propertyPath: m_LocalRotation.z
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 9106854767781449910, guid: 79024f635e46f5546b670b58b07fa037,
- type: 3}
- propertyPath: m_LocalRotation.w
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 9106854767781449910, guid: 79024f635e46f5546b670b58b07fa037,
- type: 3}
- propertyPath: m_RootOrder
- value: 1
- objectReference: {fileID: 0}
- - target: {fileID: 9106854767781449910, guid: 79024f635e46f5546b670b58b07fa037,
- type: 3}
- propertyPath: m_LocalEulerAnglesHint.x
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 9106854767781449910, guid: 79024f635e46f5546b670b58b07fa037,
- type: 3}
- propertyPath: m_LocalEulerAnglesHint.y
- value: 0
- objectReference: {fileID: 0}
- - target: {fileID: 9106854767781449910, guid: 79024f635e46f5546b670b58b07fa037,
- type: 3}
- propertyPath: m_LocalEulerAnglesHint.z
- value: 0
- objectReference: {fileID: 0}
- m_RemovedComponents: []
- m_SourcePrefab: {fileID: 100100000, guid: 79024f635e46f5546b670b58b07fa037, type: 3}
diff --git a/Assets/Scenes/ARPG_Profiles/Postprocessing Profile.asset b/Assets/Scenes/ARPG_Profiles/Postprocessing Profile.asset
index ae5aebef7..77ed0213c 100644
--- a/Assets/Scenes/ARPG_Profiles/Postprocessing Profile.asset
+++ b/Assets/Scenes/ARPG_Profiles/Postprocessing Profile.asset
@@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
-oid sha256:21522891ca5699f6edc78bba9d3d23153e2e2efcc783b5ab2644b1475efdbfe1
-size 25038
+oid sha256:b083972fbaaaf785869935ee1fc820ca87e08d4c99263118f85d49bd31c8d387
+size 25032
diff --git a/Assets/Scripts/ActionGameManager.cs b/Assets/Scripts/ActionGameManager.cs
index e4d2d604c..6a4439898 100644
--- a/Assets/Scripts/ActionGameManager.cs
+++ b/Assets/Scripts/ActionGameManager.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
@@ -19,20 +23,27 @@ public class ActionGameManager : MonoBehaviour
public GameSettings Settings;
public SectorRenderer SectorRenderer;
// public MapView MapView;
- public CinemachineVirtualCamera TopDownCamera;
+ public CinemachineVirtualCamera DockCamera;
public CinemachineVirtualCamera FollowCamera;
public GameObject GameplayUI;
public MenuPanel Menu;
public InventoryMenu Inventory;
+ public float2 Sensitivity;
//public PlayerInput Input;
+ // private CinemachineFramingTransposer _transposer;
+ // private CinemachineComposer _composer;
private DirectoryInfo _filePath;
private bool _editMode;
private float _time;
private AetheriaInput _input;
private int _zoomLevelIndex;
private Ship _currentShip;
+ private ShipInput _shipInput;
+ private float2 _shipYawPitch;
+ private float3 _viewDirection;
+ private Transform _lookAt;
public List PlayerShips { get; } = new List();
public DatabaseCache ItemData { get; private set; }
@@ -42,6 +53,10 @@ public class ActionGameManager : MonoBehaviour
void Start()
{
+ // _transposer = DockCamera.GetCinemachineComponent();
+ // _composer = DockCamera.GetCinemachineComponent();
+ _lookAt = new GameObject().transform;
+
ConsoleController.MessageReceiver = this;
_filePath = new DirectoryInfo(Application.dataPath).Parent.CreateSubdirectory("GameData");
ItemData = new DatabaseCache();
@@ -62,6 +77,7 @@ public class ActionGameManager : MonoBehaviour
);
Zone = new Zone(Settings.PlanetSettings, zonePack);
+ SectorRenderer.ItemManager = ItemManager;
SectorRenderer.LoadZone(Zone);
_input = new AetheriaInput();
@@ -80,10 +96,14 @@ public class ActionGameManager : MonoBehaviour
{
if (Menu.gameObject.activeSelf && Menu.CurrentTab == MenuTab.Map)
{
+ Cursor.lockState = CursorLockMode.Locked;
+ _input.Player.Enable();
Menu.gameObject.SetActive(false);
return;
}
+ Cursor.lockState = CursorLockMode.None;
+ _input.Player.Disable();
Menu.ShowTab(MenuTab.Map);
};
@@ -91,14 +111,24 @@ public class ActionGameManager : MonoBehaviour
{
if (Menu.gameObject.activeSelf && Menu.CurrentTab == MenuTab.Inventory)
{
+ Cursor.lockState = CursorLockMode.Locked;
+ _input.Player.Enable();
Menu.gameObject.SetActive(false);
return;
}
+ Cursor.lockState = CursorLockMode.None;
+ _input.Player.Disable();
Menu.ShowTab(MenuTab.Inventory);
};
- ConsoleController.AddCommand("editmode", _ => ToggleEditMode());
+ _input.Global.Dock.performed += context =>
+ {
+ if (_currentShip.Parent == null) Dock();
+ else Undock();
+ };
+
+ // ConsoleController.AddCommand("editmode", _ => ToggleEditMode());
ConsoleController.AddCommand("savezone", args =>
{
if (args.Length > 0)
@@ -118,23 +148,27 @@ public class ActionGameManager : MonoBehaviour
var dockingBayData = ItemData.GetAll().First();
var dockingBay = ItemManager.CreateInstance(dockingBayData, 1, 1) as EquippableItem;
station.TryEquip(dockingBay);
-
- var dockingCargo = station.DockingBays.First();
-
- var thrusterData = ItemData.GetAll().First(x => x.HardpointType == HardpointType.Thruster && x.Shape.Height == 1);
- for (int i = 0; i < 8; i++)
- {
- dockingCargo.TryStore(ItemManager.CreateInstance(thrusterData, .5f, 1));
- }
-
- var reactorData = ItemData.GetAll().First(x => x.HardpointType == HardpointType.Reactor && x.Shape.Height == 2);
- dockingCargo.TryStore(ItemManager.CreateInstance(reactorData, .5f, 1));
+ station.Active = true;
var hullType = ItemData.GetAll().First(x=>x.HullType==HullType.Ship);
var shipHull = ItemManager.CreateInstance(hullType, 0, 1) as EquippableItem;
var ship = new Ship(ItemManager, Zone, shipHull);
PlayerShips.Add(ship);
_currentShip = ship;
+
+ var dockingCargo = station.DockingBays.First();
+
+ var thrusterData = ItemData.GetAll().First(x => x.HardpointType == HardpointType.Thruster && x.Shape.Height == 1);
+ for (int i = 0; i < 8; i++)
+ {
+ ship.TryEquip(ItemManager.CreateInstance(thrusterData, .5f, 1) as EquippableItem);
+ //dockingCargo.TryStore(ItemManager.CreateInstance(thrusterData, .5f, 1));
+ }
+
+ var reactorData = ItemData.GetAll().First(x => x.HardpointType == HardpointType.Reactor && x.Shape.Height == 2);
+ ship.TryEquip(ItemManager.CreateInstance(reactorData, .5f, 1) as EquippableItem);
+ //dockingCargo.TryStore(ItemManager.CreateInstance(reactorData, .5f, 1));
+
Dock();
// MapButton.onClick.AddListener(() =>
@@ -150,7 +184,8 @@ public class ActionGameManager : MonoBehaviour
public void Dock()
{
- foreach (var entity in Zone.Entities)
+ if (_currentShip.Parent != null) return;
+ foreach (var entity in Zone.Entities.ToArray())
{
if (lengthsq(entity.Position - _currentShip.Position) <
Settings.GameplaySettings.DockingDistance * Settings.GameplaySettings.DockingDistance)
@@ -158,22 +193,51 @@ public class ActionGameManager : MonoBehaviour
var bay = entity.TryDock(_currentShip);
if (bay != null)
{
+ DockCamera.enabled = true;
+ FollowCamera.enabled = false;
+ _currentShip.Active = false;
+ var orbital = (OrbitalEntity) entity;
+ DockCamera.Follow = SectorRenderer.Orbitals[orbital];
+ var parentOrbit = Zone.Orbits[orbital.OrbitData].Data.Parent;
+ var parentPlanet = SectorRenderer.Planets[Zone.Planets.FirstOrDefault(p => p.Value.Orbit == parentOrbit).Key];
+ DockCamera.LookAt = parentPlanet.Body.transform;
+ Menu.ShowTab(MenuTab.Inventory);
Inventory.GetPanel.Display(bay);
Inventory.GetPanel.Display(_currentShip);
+ _shipInput = null;
+ Cursor.lockState = CursorLockMode.None;
+ _input.Player.Disable();
}
}
}
}
+ public void Undock()
+ {
+ if (_currentShip.Parent == null) return;
+ if (_currentShip.Parent.TryUndock(_currentShip))
+ {
+ Menu.gameObject.SetActive(false);
+ _currentShip.Active = true;
+ _shipInput = new ShipInput(_input.Player, _currentShip);
+ DockCamera.enabled = false;
+ FollowCamera.enabled = true;
+ FollowCamera.LookAt = _lookAt;
+ FollowCamera.Follow = SectorRenderer.Ships[_currentShip].Transform;
+ Cursor.lockState = CursorLockMode.Locked;
+ _input.Player.Enable();
+ }
+ }
+
public void SaveZone() => File.WriteAllBytes(
Path.Combine(_filePath.FullName, $"{Zone.Data.Name}.zone"), MessagePackSerializer.Serialize(Zone.Pack()));
- public void ToggleEditMode()
- {
- _editMode = !_editMode;
- FollowCamera.gameObject.SetActive(!_editMode);
- TopDownCamera.gameObject.SetActive(_editMode);
- }
+ // public void ToggleEditMode()
+ // {
+ // _editMode = !_editMode;
+ // FollowCamera.gameObject.SetActive(!_editMode);
+ // TopDownCamera.gameObject.SetActive(_editMode);
+ // }
public IEnumerable AvailableCargoBays()
{
@@ -205,8 +269,64 @@ public class ActionGameManager : MonoBehaviour
{
_time += Time.deltaTime;
ItemManager.Time = Time.time;
+ if(_shipInput!=null)
+ {
+ var look = _input.Player.Look.ReadValue();
+ _shipYawPitch = float2(_shipYawPitch.x + look.x * Sensitivity.x, clamp(_shipYawPitch.y + look.y * Sensitivity.y, -.45f * PI, .45f * PI));
+ _viewDirection = mul(float3(0, 0, 1), Unity.Mathematics.float3x3.Euler(float3(_shipYawPitch.yx, 0), RotationOrder.YXZ));
+ _lookAt.position = SectorRenderer.Ships[_currentShip].Transform.position + (Vector3) _viewDirection * 100;
+ _shipInput.DesiredOrientation = _viewDirection.xz;
+ _shipInput.Update();
+ }
}
Zone.Update(_time, Time.deltaTime);
SectorRenderer.Time = _time;
}
}
+
+public class ShipInput
+{
+ private AetheriaInput.PlayerActions _input;
+ private Ship _ship;
+ private Thruster[] _allThrusters;
+ private Thruster[] _forwardThrusters;
+ private Thruster[] _reverseThrusters;
+ private Thruster[] _rightThrusters;
+ private Thruster[] _leftThrusters;
+ private Thruster[] _clockwiseThrusters;
+ private Thruster[] _counterClockwiseThrusters;
+
+ public float2 DesiredOrientation { get; set; }
+ public float DesiredPitch { get; set; }
+
+ public ShipInput(AetheriaInput.PlayerActions input, Ship ship)
+ {
+ _input = input;
+ _ship = ship;
+ _allThrusters = ship.GetBehaviors().ToArray();
+ _forwardThrusters = _allThrusters.Where(x => x.Item.EquippableItem.Rotation == ItemRotation.Reversed).ToArray();
+ _reverseThrusters = _allThrusters.Where(x => x.Item.EquippableItem.Rotation == ItemRotation.None).ToArray();
+ _rightThrusters = _allThrusters.Where(x => x.Item.EquippableItem.Rotation == ItemRotation.CounterClockwise).ToArray();
+ _leftThrusters = _allThrusters.Where(x => x.Item.EquippableItem.Rotation == ItemRotation.Clockwise).ToArray();
+ _counterClockwiseThrusters = _allThrusters.Where(x => x.Torque < -.05f).ToArray();
+ _clockwiseThrusters = _allThrusters.Where(x => x.Torque > .05f).ToArray();
+ }
+
+ public void Update()
+ {
+ var move = _input.Move.ReadValue();
+
+ foreach (var thruster in _allThrusters) thruster.Axis = 0;
+ foreach (var thruster in _rightThrusters) thruster.Axis += move.x;
+ foreach (var thruster in _leftThrusters) thruster.Axis += -move.x;
+ foreach (var thruster in _forwardThrusters) thruster.Axis += move.y;
+ foreach (var thruster in _reverseThrusters) thruster.Axis += -move.y;
+
+ var deltaRot = dot(normalize(DesiredOrientation), normalize(_ship.Direction).Rotate(ItemRotation.Clockwise));
+ if (abs(deltaRot) < .01) deltaRot = 0;
+ deltaRot = pow(abs(deltaRot), .5f) * sign(deltaRot);
+
+ foreach (var thruster in _clockwiseThrusters) thruster.Axis += deltaRot;
+ foreach (var thruster in _counterClockwiseThrusters) thruster.Axis += -deltaRot;
+ }
+}
\ No newline at end of file
diff --git a/Assets/Scripts/AetheriaInput.cs b/Assets/Scripts/AetheriaInput.cs
index 7f8c75f63..a43405caf 100644
--- a/Assets/Scripts/AetheriaInput.cs
+++ b/Assets/Scripts/AetheriaInput.cs
@@ -190,7 +190,7 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
""path"": ""/delta"",
""interactions"": """",
""processors"": """",
- ""groups"": "";Keyboard&Mouse;Touch"",
+ ""groups"": "";Keyboard&Mouse"",
""action"": ""Look"",
""isComposite"": false,
""isPartOfComposite"": false
@@ -234,7 +234,7 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
""path"": ""/primaryTouch/tap"",
""interactions"": """",
""processors"": """",
- ""groups"": "";Touch"",
+ ""groups"": """",
""action"": ""Fire"",
""isComposite"": false,
""isPartOfComposite"": false
@@ -331,22 +331,6 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
""processors"": """",
""interactions"": """"
},
- {
- ""name"": ""TrackedDevicePosition"",
- ""type"": ""PassThrough"",
- ""id"": ""b297afa0-f417-4a48-aaa1-36a6efd36190"",
- ""expectedControlType"": ""Vector3"",
- ""processors"": """",
- ""interactions"": """"
- },
- {
- ""name"": ""TrackedDeviceOrientation"",
- ""type"": ""PassThrough"",
- ""id"": ""1a877e6d-221e-4815-a289-aa93412c8d87"",
- ""expectedControlType"": ""Quaternion"",
- ""processors"": """",
- ""interactions"": """"
- },
{
""name"": ""Drag"",
""type"": ""Value"",
@@ -665,17 +649,6 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
""isComposite"": false,
""isPartOfComposite"": false
},
- {
- ""name"": """",
- ""id"": ""5693e57a-238a-46ed-b5ae-e64e6e574302"",
- ""path"": ""/touch*/position"",
- ""interactions"": """",
- ""processors"": """",
- ""groups"": ""Touch"",
- ""action"": ""Point"",
- ""isComposite"": false,
- ""isPartOfComposite"": false
- },
{
""name"": """",
""id"": ""4faf7dc9-b979-4210-aa8c-e808e1ef89f5"",
@@ -698,28 +671,6 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
""isComposite"": false,
""isPartOfComposite"": false
},
- {
- ""name"": """",
- ""id"": ""47c2a644-3ebc-4dae-a106-589b7ca75b59"",
- ""path"": ""/touch*/press"",
- ""interactions"": """",
- ""processors"": """",
- ""groups"": ""Touch"",
- ""action"": ""Click"",
- ""isComposite"": false,
- ""isPartOfComposite"": false
- },
- {
- ""name"": """",
- ""id"": ""bb9e6b34-44bf-4381-ac63-5aa15d19f677"",
- ""path"": ""/trigger"",
- ""interactions"": """",
- ""processors"": """",
- ""groups"": ""XR"",
- ""action"": ""Click"",
- ""isComposite"": false,
- ""isPartOfComposite"": false
- },
{
""name"": """",
""id"": ""38c99815-14ea-4617-8627-164d27641299"",
@@ -753,28 +704,6 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
""isComposite"": false,
""isPartOfComposite"": false
},
- {
- ""name"": """",
- ""id"": ""7236c0d9-6ca3-47cf-a6ee-a97f5b59ea77"",
- ""path"": ""/devicePosition"",
- ""interactions"": """",
- ""processors"": """",
- ""groups"": ""XR"",
- ""action"": ""TrackedDevicePosition"",
- ""isComposite"": false,
- ""isPartOfComposite"": false
- },
- {
- ""name"": """",
- ""id"": ""23e01e3a-f935-4948-8d8b-9bcac77714fb"",
- ""path"": ""/deviceRotation"",
- ""interactions"": """",
- ""processors"": """",
- ""groups"": ""XR"",
- ""action"": ""TrackedDeviceOrientation"",
- ""isComposite"": false,
- ""isPartOfComposite"": false
- },
{
""name"": """",
""id"": ""618fb60f-5dc7-47ec-8dbf-fdc3d4c515a1"",
@@ -807,6 +736,14 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
""expectedControlType"": ""Button"",
""processors"": """",
""interactions"": """"
+ },
+ {
+ ""name"": ""Dock"",
+ ""type"": ""Button"",
+ ""id"": ""d6e65ce8-149c-4009-ac38-66144cca311a"",
+ ""expectedControlType"": ""Button"",
+ ""processors"": """",
+ ""interactions"": """"
}
],
""bindings"": [
@@ -831,6 +768,17 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
""action"": ""Inventory"",
""isComposite"": false,
""isPartOfComposite"": false
+ },
+ {
+ ""name"": """",
+ ""id"": ""3279cef8-8bd1-49f2-984a-637d1f8522f6"",
+ ""path"": ""/#(C)"",
+ ""interactions"": """",
+ ""processors"": """",
+ ""groups"": ""Keyboard&Mouse"",
+ ""action"": ""Dock"",
+ ""isComposite"": false,
+ ""isPartOfComposite"": false
}
]
}
@@ -863,17 +811,6 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
}
]
},
- {
- ""name"": ""Touch"",
- ""bindingGroup"": ""Touch"",
- ""devices"": [
- {
- ""devicePath"": """",
- ""isOptional"": false,
- ""isOR"": false
- }
- ]
- },
{
""name"": ""Joystick"",
""bindingGroup"": ""Joystick"",
@@ -884,17 +821,6 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
""isOR"": false
}
]
- },
- {
- ""name"": ""XR"",
- ""bindingGroup"": ""XR"",
- ""devices"": [
- {
- ""devicePath"": """",
- ""isOptional"": false,
- ""isOR"": false
- }
- ]
}
]
}");
@@ -914,13 +840,12 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
m_UI_ScrollWheel = m_UI.FindAction("ScrollWheel", throwIfNotFound: true);
m_UI_MiddleClick = m_UI.FindAction("MiddleClick", throwIfNotFound: true);
m_UI_RightClick = m_UI.FindAction("RightClick", throwIfNotFound: true);
- m_UI_TrackedDevicePosition = m_UI.FindAction("TrackedDevicePosition", throwIfNotFound: true);
- m_UI_TrackedDeviceOrientation = m_UI.FindAction("TrackedDeviceOrientation", throwIfNotFound: true);
m_UI_Drag = m_UI.FindAction("Drag", throwIfNotFound: true);
// Global
m_Global = asset.FindActionMap("Global", throwIfNotFound: true);
m_Global_MapToggle = m_Global.FindAction("Map Toggle", throwIfNotFound: true);
m_Global_Inventory = m_Global.FindAction("Inventory", throwIfNotFound: true);
+ m_Global_Dock = m_Global.FindAction("Dock", throwIfNotFound: true);
}
public void Dispose()
@@ -1035,8 +960,6 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
private readonly InputAction m_UI_ScrollWheel;
private readonly InputAction m_UI_MiddleClick;
private readonly InputAction m_UI_RightClick;
- private readonly InputAction m_UI_TrackedDevicePosition;
- private readonly InputAction m_UI_TrackedDeviceOrientation;
private readonly InputAction m_UI_Drag;
public struct UIActions
{
@@ -1050,8 +973,6 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
public InputAction @ScrollWheel => m_Wrapper.m_UI_ScrollWheel;
public InputAction @MiddleClick => m_Wrapper.m_UI_MiddleClick;
public InputAction @RightClick => m_Wrapper.m_UI_RightClick;
- public InputAction @TrackedDevicePosition => m_Wrapper.m_UI_TrackedDevicePosition;
- public InputAction @TrackedDeviceOrientation => m_Wrapper.m_UI_TrackedDeviceOrientation;
public InputAction @Drag => m_Wrapper.m_UI_Drag;
public InputActionMap Get() { return m_Wrapper.m_UI; }
public void Enable() { Get().Enable(); }
@@ -1086,12 +1007,6 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
@RightClick.started -= m_Wrapper.m_UIActionsCallbackInterface.OnRightClick;
@RightClick.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnRightClick;
@RightClick.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnRightClick;
- @TrackedDevicePosition.started -= m_Wrapper.m_UIActionsCallbackInterface.OnTrackedDevicePosition;
- @TrackedDevicePosition.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnTrackedDevicePosition;
- @TrackedDevicePosition.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnTrackedDevicePosition;
- @TrackedDeviceOrientation.started -= m_Wrapper.m_UIActionsCallbackInterface.OnTrackedDeviceOrientation;
- @TrackedDeviceOrientation.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnTrackedDeviceOrientation;
- @TrackedDeviceOrientation.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnTrackedDeviceOrientation;
@Drag.started -= m_Wrapper.m_UIActionsCallbackInterface.OnDrag;
@Drag.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnDrag;
@Drag.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnDrag;
@@ -1123,12 +1038,6 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
@RightClick.started += instance.OnRightClick;
@RightClick.performed += instance.OnRightClick;
@RightClick.canceled += instance.OnRightClick;
- @TrackedDevicePosition.started += instance.OnTrackedDevicePosition;
- @TrackedDevicePosition.performed += instance.OnTrackedDevicePosition;
- @TrackedDevicePosition.canceled += instance.OnTrackedDevicePosition;
- @TrackedDeviceOrientation.started += instance.OnTrackedDeviceOrientation;
- @TrackedDeviceOrientation.performed += instance.OnTrackedDeviceOrientation;
- @TrackedDeviceOrientation.canceled += instance.OnTrackedDeviceOrientation;
@Drag.started += instance.OnDrag;
@Drag.performed += instance.OnDrag;
@Drag.canceled += instance.OnDrag;
@@ -1142,12 +1051,14 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
private IGlobalActions m_GlobalActionsCallbackInterface;
private readonly InputAction m_Global_MapToggle;
private readonly InputAction m_Global_Inventory;
+ private readonly InputAction m_Global_Dock;
public struct GlobalActions
{
private @AetheriaInput m_Wrapper;
public GlobalActions(@AetheriaInput wrapper) { m_Wrapper = wrapper; }
public InputAction @MapToggle => m_Wrapper.m_Global_MapToggle;
public InputAction @Inventory => m_Wrapper.m_Global_Inventory;
+ public InputAction @Dock => m_Wrapper.m_Global_Dock;
public InputActionMap Get() { return m_Wrapper.m_Global; }
public void Enable() { Get().Enable(); }
public void Disable() { Get().Disable(); }
@@ -1163,6 +1074,9 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
@Inventory.started -= m_Wrapper.m_GlobalActionsCallbackInterface.OnInventory;
@Inventory.performed -= m_Wrapper.m_GlobalActionsCallbackInterface.OnInventory;
@Inventory.canceled -= m_Wrapper.m_GlobalActionsCallbackInterface.OnInventory;
+ @Dock.started -= m_Wrapper.m_GlobalActionsCallbackInterface.OnDock;
+ @Dock.performed -= m_Wrapper.m_GlobalActionsCallbackInterface.OnDock;
+ @Dock.canceled -= m_Wrapper.m_GlobalActionsCallbackInterface.OnDock;
}
m_Wrapper.m_GlobalActionsCallbackInterface = instance;
if (instance != null)
@@ -1173,6 +1087,9 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
@Inventory.started += instance.OnInventory;
@Inventory.performed += instance.OnInventory;
@Inventory.canceled += instance.OnInventory;
+ @Dock.started += instance.OnDock;
+ @Dock.performed += instance.OnDock;
+ @Dock.canceled += instance.OnDock;
}
}
}
@@ -1195,15 +1112,6 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
return asset.controlSchemes[m_GamepadSchemeIndex];
}
}
- private int m_TouchSchemeIndex = -1;
- public InputControlScheme TouchScheme
- {
- get
- {
- if (m_TouchSchemeIndex == -1) m_TouchSchemeIndex = asset.FindControlSchemeIndex("Touch");
- return asset.controlSchemes[m_TouchSchemeIndex];
- }
- }
private int m_JoystickSchemeIndex = -1;
public InputControlScheme JoystickScheme
{
@@ -1213,15 +1121,6 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
return asset.controlSchemes[m_JoystickSchemeIndex];
}
}
- private int m_XRSchemeIndex = -1;
- public InputControlScheme XRScheme
- {
- get
- {
- if (m_XRSchemeIndex == -1) m_XRSchemeIndex = asset.FindControlSchemeIndex("XR");
- return asset.controlSchemes[m_XRSchemeIndex];
- }
- }
public interface IPlayerActions
{
void OnMove(InputAction.CallbackContext context);
@@ -1239,13 +1138,12 @@ public class @AetheriaInput : IInputActionCollection, IDisposable
void OnScrollWheel(InputAction.CallbackContext context);
void OnMiddleClick(InputAction.CallbackContext context);
void OnRightClick(InputAction.CallbackContext context);
- void OnTrackedDevicePosition(InputAction.CallbackContext context);
- void OnTrackedDeviceOrientation(InputAction.CallbackContext context);
void OnDrag(InputAction.CallbackContext context);
}
public interface IGlobalActions
{
void OnMapToggle(InputAction.CallbackContext context);
void OnInventory(InputAction.CallbackContext context);
+ void OnDock(InputAction.CallbackContext context);
}
}
diff --git a/Assets/Scripts/CameraPerlinOrbit.cs b/Assets/Scripts/CameraPerlinOrbit.cs
index 907bac2dc..9e2963e23 100644
--- a/Assets/Scripts/CameraPerlinOrbit.cs
+++ b/Assets/Scripts/CameraPerlinOrbit.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Unity.Mathematics;
diff --git a/Assets/Scripts/CultClient.cs b/Assets/Scripts/CultClient.cs
index 47bb395ca..060eda4a3 100644
--- a/Assets/Scripts/CultClient.cs
+++ b/Assets/Scripts/CultClient.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
diff --git a/Assets/Scripts/Editor/DatabaseInspector.cs b/Assets/Scripts/Editor/DatabaseInspector.cs
index addde57b0..3386623a0 100644
--- a/Assets/Scripts/Editor/DatabaseInspector.cs
+++ b/Assets/Scripts/Editor/DatabaseInspector.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
@@ -165,10 +169,16 @@ public class DatabaseInspector : EditorWindow
else if (type == typeof(bool)) field.SetValue(obj, Inspect(field.Name.SplitCamelCase(), (bool) value));
else if (type == typeof(string))
{
+ if (inspectable is InspectableUnityObjectAttribute unityObjectAttribute)
+ {
+ var inspectMethod = typeof(DatabaseInspector).GetMethod("InspectUnityObject");
+ var generic = inspectMethod.MakeGenericMethod(unityObjectAttribute.ObjectType);
+ field.SetValue(obj, generic.Invoke(this, new[] {value}));
+ }
if(inspectable is InspectablePrefabAttribute)
- field.SetValue(obj, InspectGameObject(field.Name.SplitCamelCase(), (string) value));
+ field.SetValue(obj, InspectUnityObject(field.Name.SplitCamelCase(), (string) value));
else if(inspectable is InspectableTextureAttribute)
- field.SetValue(obj, InspectTexture(field.Name.SplitCamelCase(), (string) value));
+ field.SetValue(obj, InspectUnityObject(field.Name.SplitCamelCase(), (string) value));
else
field.SetValue(obj, Inspect(field.Name.SplitCamelCase(), (string) value, inspectable is InspectableTextAttribute));
}
@@ -660,21 +670,12 @@ public class DatabaseInspector : EditorWindow
return index == 0 ? null : types[index - 1];
}
- public string InspectGameObject(string label, string value)
+ public string InspectUnityObject(string label, string value) where T : Object
{
using (var h = new HorizontalScope())
{
GUILayout.Label(label, GUILayout.Width(width));
- return AssetDatabase.GetAssetPath(ObjectField(AssetDatabase.LoadAssetAtPath(value), typeof(GameObject), false));
- }
- }
-
- public string InspectTexture(string label, string value)
- {
- using (var h = new HorizontalScope())
- {
- GUILayout.Label(label, GUILayout.Width(width));
- return AssetDatabase.GetAssetPath(ObjectField(AssetDatabase.LoadAssetAtPath(value), typeof(Texture2D), false));
+ return AssetDatabase.GetAssetPath(ObjectField(AssetDatabase.LoadAssetAtPath(value), typeof(T), false));
}
}
diff --git a/Assets/Scripts/Editor/DatabaseView.cs b/Assets/Scripts/Editor/DatabaseView.cs
index a4b928758..022df88f6 100644
--- a/Assets/Scripts/Editor/DatabaseView.cs
+++ b/Assets/Scripts/Editor/DatabaseView.cs
@@ -1,4 +1,7 @@
-// TODO: USE THIS EVERYWHERE
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
using System;
using System.Collections.Generic;
using System.IO;
diff --git a/Assets/Scripts/Editor/GalaxyEditor.cs b/Assets/Scripts/Editor/GalaxyEditor.cs
index 89db79baa..c7a481fbc 100644
--- a/Assets/Scripts/Editor/GalaxyEditor.cs
+++ b/Assets/Scripts/Editor/GalaxyEditor.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections.Generic;
using System.Linq;
using MIConvexHull;
diff --git a/Assets/Scripts/Editor/SerializerTestWindow.cs b/Assets/Scripts/Editor/SerializerTestWindow.cs
index 4a4d0ffed..64f0cb7c9 100644
--- a/Assets/Scripts/Editor/SerializerTestWindow.cs
+++ b/Assets/Scripts/Editor/SerializerTestWindow.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
diff --git a/Assets/Scripts/Galaxy.cs b/Assets/Scripts/Galaxy.cs
index d2b61363a..44d153843 100644
--- a/Assets/Scripts/Galaxy.cs
+++ b/Assets/Scripts/Galaxy.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
diff --git a/Assets/Scripts/GameSettings.cs b/Assets/Scripts/GameSettings.cs
index 1488d3833..7d1761358 100644
--- a/Assets/Scripts/GameSettings.cs
+++ b/Assets/Scripts/GameSettings.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
diff --git a/Assets/Scripts/Gravity.cs b/Assets/Scripts/Gravity.cs
index 11c4f22f0..b5f3460ab 100644
--- a/Assets/Scripts/Gravity.cs
+++ b/Assets/Scripts/Gravity.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using System.Linq;
using UnityEngine;
diff --git a/Assets/Scripts/MarkovNameGenerator.cs b/Assets/Scripts/MarkovNameGenerator.cs
index 32d4b467d..312111844 100644
--- a/Assets/Scripts/MarkovNameGenerator.cs
+++ b/Assets/Scripts/MarkovNameGenerator.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections.Generic;
using UnityEngine;
diff --git a/Assets/Scripts/Prototype.cs b/Assets/Scripts/Prototype.cs
index 43107636b..b1d220d46 100644
--- a/Assets/Scripts/Prototype.cs
+++ b/Assets/Scripts/Prototype.cs
@@ -47,6 +47,7 @@ public class Prototype : MonoBehaviour {
var instanceIdx = _instancePool.Count-1;
instance = _instancePool[instanceIdx];
_instancePool.RemoveAt(instanceIdx);
+ instance.transform.SetAsLastSibling();
}
// Instantiate fresh instance
diff --git a/Assets/Scripts/RethinkConnection.cs b/Assets/Scripts/RethinkConnection.cs
index c4e992529..b4b1acf61 100644
--- a/Assets/Scripts/RethinkConnection.cs
+++ b/Assets/Scripts/RethinkConnection.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Reflection;
diff --git a/Assets/Scripts/Sector Display/BlueNoiseProvider.cs b/Assets/Scripts/Sector Display/BlueNoiseProvider.cs
index 377749c2b..4afebfd2d 100644
--- a/Assets/Scripts/Sector Display/BlueNoiseProvider.cs
+++ b/Assets/Scripts/Sector Display/BlueNoiseProvider.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
diff --git a/Assets/Scripts/Sector Display/CopyTransform.cs b/Assets/Scripts/Sector Display/CopyTransform.cs
index 9d53f60cd..98e91cd53 100644
--- a/Assets/Scripts/Sector Display/CopyTransform.cs
+++ b/Assets/Scripts/Sector Display/CopyTransform.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using UnityEngine;
diff --git a/Assets/Scripts/Sector Display/GasGiantObject.cs b/Assets/Scripts/Sector Display/GasGiantObject.cs
index 7f2c46010..81fb45a1d 100644
--- a/Assets/Scripts/Sector Display/GasGiantObject.cs
+++ b/Assets/Scripts/Sector Display/GasGiantObject.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using UnityEngine;
diff --git a/Assets/Scripts/Sector Display/GradientMapper.cs b/Assets/Scripts/Sector Display/GradientMapper.cs
index ac3165b1e..e10920f2b 100644
--- a/Assets/Scripts/Sector Display/GradientMapper.cs
+++ b/Assets/Scripts/Sector Display/GradientMapper.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.IO;
diff --git a/Assets/Scripts/Sector Display/GravityObject.cs b/Assets/Scripts/Sector Display/GravityObject.cs
index de635f3d5..fb3bd5b2e 100644
--- a/Assets/Scripts/Sector Display/GravityObject.cs
+++ b/Assets/Scripts/Sector Display/GravityObject.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using UnityEngine;
diff --git a/Assets/Scripts/Sector Display/MapView.cs b/Assets/Scripts/Sector Display/MapView.cs
index d0ecf38eb..124188940 100644
--- a/Assets/Scripts/Sector Display/MapView.cs
+++ b/Assets/Scripts/Sector Display/MapView.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
diff --git a/Assets/Scripts/Sector Display/PlanetObject.cs b/Assets/Scripts/Sector Display/PlanetObject.cs
index cd423238f..9e4a80358 100644
--- a/Assets/Scripts/Sector Display/PlanetObject.cs
+++ b/Assets/Scripts/Sector Display/PlanetObject.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using UnityEngine;
diff --git a/Assets/Scripts/Sector Display/SectorRenderer.cs b/Assets/Scripts/Sector Display/SectorRenderer.cs
index 7f6eaf8ff..01d58c8b9 100644
--- a/Assets/Scripts/Sector Display/SectorRenderer.cs
+++ b/Assets/Scripts/Sector Display/SectorRenderer.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
@@ -8,6 +12,7 @@ using UnityEngine;
using static Unity.Mathematics.math;
using Unity.Mathematics;
using UnityEngine.Serialization;
+using Object = UnityEngine.Object;
using Random = UnityEngine.Random;
public class SectorRenderer : MonoBehaviour
@@ -27,6 +32,8 @@ public class SectorRenderer : MonoBehaviour
public int AsteroidSpritesheetWidth = 4;
public int AsteroidSpritesheetHeight = 4;
public LODHandler LODHandler;
+
+ [Header("Tour")]
public bool Tour;
public float TourSwitchTime = 5f;
public float TourFollowDistance = 30f;
@@ -46,8 +53,14 @@ public class SectorRenderer : MonoBehaviour
public Texture2D PlanetoidIcon;
public Texture2D PlanetIcon;
+ [HideInInspector]
+ public Dictionary Orbitals = new Dictionary();
+ [HideInInspector]
+ public Dictionary Ships = new Dictionary();
+ [HideInInspector]
+ public Dictionary Planets = new Dictionary();
+
private Dictionary _beltObjects = new Dictionary();
- private Dictionary _planets = new Dictionary();
private Dictionary _beltMeshes = new Dictionary();
private Dictionary _beltMatrices = new Dictionary();
private Dictionary _beltAsteroidPositions = new Dictionary();
@@ -61,6 +74,8 @@ public class SectorRenderer : MonoBehaviour
private CinemachineTransposer _transposer;
private PlanetObject _root;
private bool _rootFound;
+
+ public ItemManager ItemManager { get; set; }
public float Time { get; set; }
@@ -105,7 +120,7 @@ public class SectorRenderer : MonoBehaviour
foreach(var p in zone.Planets.Values)
LoadPlanet(p);
- foreach (var x in _planets)
+ foreach (var x in Planets)
{
if (!(zone.Planets[x.Key] is GasGiantData))
{
@@ -124,7 +139,7 @@ public class SectorRenderer : MonoBehaviour
if (parentPlanetData == null)
parent = _root;
- else if (!_planets.TryGetValue(parentPlanetData.ID, out parent))
+ else if (!Planets.TryGetValue(parentPlanetData.ID, out parent))
{
Debug.Log("WTF!");
}
@@ -132,23 +147,72 @@ public class SectorRenderer : MonoBehaviour
_tourPlanets.Add((x.Value.Body.transform, parent.Body.transform));
}
}
+
+ foreach(var entity in zone.Entities)
+ LoadEntity(entity);
+ zone.Entities.ObserveAdd().Subscribe(e => LoadEntity(e.Value));
+ zone.Entities.ObserveRemove().Subscribe(e => UnloadEntity(e.Value));
}
public void ClearZone()
{
- if (_planets.Count > 0)
+ if (Planets.Count > 0)
{
- foreach (var planet in _planets.Values)
+ foreach (var planet in Planets.Values)
{
DestroyImmediate(planet.gameObject);
}
- _planets.Clear();
+ Planets.Clear();
_beltMeshes.Clear();
_beltMatrices.Clear();
_tourPlanets.Clear();
}
}
+ void LoadEntity(Entity entity)
+ {
+ var hullData = ItemManager.GetData(entity.Hull) as HullData;
+ if (entity is Ship ship)
+ {
+ var shipInstance = new ShipInstance();
+ shipInstance.Ship = ship;
+ shipInstance.Transform = Instantiate(UnityHelpers.LoadAsset(hullData.Prefab)).transform;
+ shipInstance.Thrusters = ship.GetBehaviors().ToArray();
+ shipInstance.ThrusterParticles = shipInstance.Thrusters
+ .Select(x =>
+ {
+ var particles = Instantiate(UnityHelpers.LoadAsset(((ThrusterData) x.Data).ParticlesPrefab));
+ var particlesShape = particles.shape;
+ particlesShape.meshRenderer = shipInstance.Transform.Find(x.Entity.Hardpoints[x.Item.Position.x, x.Item.Position.y].Transform)
+ .GetComponent();
+ return particles;
+ })
+ .ToArray();
+ shipInstance.ThrusterBaseEmission = shipInstance.ThrusterParticles.Select(x => x.emission.rateOverTimeMultiplier).ToArray();
+ Ships.Add(ship, shipInstance);
+ }
+ else if (entity is OrbitalEntity orbital)
+ {
+ Orbitals.Add(orbital,Instantiate(UnityHelpers.LoadAsset(hullData.Prefab)).transform);
+ }
+ }
+
+ void UnloadEntity(Entity entity)
+ {
+ if (entity is Ship ship)
+ {
+ Destroy(Ships[ship].Transform.gameObject);
+ foreach(var p in Ships[ship].ThrusterParticles)
+ Destroy(p.gameObject);
+ Ships.Remove(ship);
+ }
+ else if (entity is OrbitalEntity orbital)
+ {
+ Destroy(Orbitals[orbital].gameObject);
+ Orbitals.Remove(orbital);
+ }
+ }
+
void LoadPlanet(BodyData planetData)
{
if (planetData is AsteroidBeltData beltData)
@@ -226,7 +290,7 @@ public class SectorRenderer : MonoBehaviour
planetInstance.BodyData.Mass.Subscribe(f => planet.Icon.transform.localScale = Settings.IconSize.Evaluate(f) * Vector3.one);
- _planets[planetData.ID] = planet;
+ Planets[planetData.ID] = planet;
if (!_rootFound)
{
_rootFound = true;
@@ -236,32 +300,32 @@ public class SectorRenderer : MonoBehaviour
LODHandler.FindPlanets();
}
- private void Update()
- {
- if (Tour)
- {
- _tourTimer -= UnityEngine.Time.deltaTime;
- if (_tourTimer < 0)
- {
- _tourTimer = TourSwitchTime;
- _tourIndex = (_tourIndex + 1) % _tourPlanets.Count;
- SceneCamera.Follow = _tourPlanets[_tourIndex].Item1;
- SceneCamera.LookAt = _tourPlanets[_tourIndex].Item2;
- if(_tourIndex==0) Debug.Log("Tour Complete!");
- }
- // if(_tourIndex>=0)
- // {
- // var offset = (SceneCamera.Follow.position - SceneCamera.LookAt.position);
- // offset.y = 0;
- // offset = offset.normalized * TourFollowDistance;
- // offset.y = TourHeightOffset;
- // offset = Quaternion.AngleAxis(TourFollowOffsetDegrees, Vector3.up) * offset;
- // _transposer.m_FollowOffset = offset;
- // }
- }
- }
+ // private void Update()
+ // {
+ // if (Tour)
+ // {
+ // _tourTimer -= UnityEngine.Time.deltaTime;
+ // if (_tourTimer < 0)
+ // {
+ // _tourTimer = TourSwitchTime;
+ // _tourIndex = (_tourIndex + 1) % _tourPlanets.Count;
+ // SceneCamera.Follow = _tourPlanets[_tourIndex].Item1;
+ // SceneCamera.LookAt = _tourPlanets[_tourIndex].Item2;
+ // if(_tourIndex==0) Debug.Log("Tour Complete!");
+ // }
+ // // if(_tourIndex>=0)
+ // // {
+ // // var offset = (SceneCamera.Follow.position - SceneCamera.LookAt.position);
+ // // offset.y = 0;
+ // // offset = offset.normalized * TourFollowDistance;
+ // // offset.y = TourHeightOffset;
+ // // offset = Quaternion.AngleAxis(TourFollowOffsetDegrees, Vector3.up) * offset;
+ // // _transposer.m_FollowOffset = offset;
+ // // }
+ // }
+ // }
- void LateUpdate()
+ void Update()
{
foreach(var belt in _zone.AsteroidBelts)
{
@@ -287,7 +351,7 @@ public class SectorRenderer : MonoBehaviour
_beltObjects[belt.Key].Update(_beltAsteroidPositions[belt.Key]);
}
- foreach (var planet in _planets)
+ foreach (var planet in Planets)
{
var planetInstance = _zone.PlanetInstances[planet.Key];
var p = _zone.GetOrbitPosition(planetInstance.BodyData.Orbit);
@@ -305,6 +369,30 @@ public class SectorRenderer : MonoBehaviour
else planet.Value.Body.transform.rotation *= Quaternion.AngleAxis(Settings.PlanetRotationSpeed, Vector3.up);
}
+ foreach (var ship in Ships)
+ {
+ var hullData = ItemManager.GetData(ship.Key.Hull) as HullData;
+ var h = _zone.GetHeight(ship.Key.Position);
+ ship.Value.Transform.position = new Vector3(ship.Key.Position.x,h + hullData.GridOffset,ship.Key.Position.y);
+ var normal = _zone.GetNormal(ship.Key.Position);
+ //Debug.Log($"Normal: {normal}");
+ var shipRight = ship.Key.Direction.Rotate(ItemRotation.Clockwise);
+ var forward = Vector3.Cross(new Vector3(shipRight.x,0,shipRight.y), normal);
+ ship.Value.Transform.rotation = Quaternion.LookRotation(forward, normal);
+ for (int i = 0; i < ship.Value.Thrusters.Length; i++)
+ {
+ var emissionModule = ship.Value.ThrusterParticles[i].emission;
+ emissionModule.rateOverTimeMultiplier = ship.Value.ThrusterBaseEmission[i] * ship.Value.Thrusters[i].Axis;
+ }
+ }
+
+ foreach (var orbital in Orbitals)
+ {
+ var hullData = ItemManager.GetData(orbital.Key.Hull) as HullData;
+ var h = _zone.GetHeight(orbital.Key.Position);
+ orbital.Value.position = new Vector3(orbital.Key.Position.x,h + hullData.GridOffset,orbital.Key.Position.y);
+ }
+
var fogPos = FogCameraParent.position;
SectorBoundaryBrush.material.SetFloat("_Power", Settings.PlanetSettings.ZoneDepthExponent);
SectorBoundaryBrush.material.SetFloat("_Depth", Settings.PlanetSettings.ZoneDepth + Settings.PlanetSettings.ZoneBoundaryFog);
@@ -321,6 +409,15 @@ public class SectorRenderer : MonoBehaviour
}
}
+public class ShipInstance
+{
+ public ParticleSystem[] ThrusterParticles;
+ public Thruster[] Thrusters;
+ public float[] ThrusterBaseEmission;
+ public Ship Ship;
+ public Transform Transform;
+}
+
[Serializable]
public class InstancedMesh
{
diff --git a/Assets/Scripts/Sector Display/SnapToGrid.cs b/Assets/Scripts/Sector Display/SnapToGrid.cs
index c69286b30..b2bf4e979 100644
--- a/Assets/Scripts/Sector Display/SnapToGrid.cs
+++ b/Assets/Scripts/Sector Display/SnapToGrid.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using UnityEngine;
diff --git a/Assets/Scripts/Sector Display/SunMaterial.cs b/Assets/Scripts/Sector Display/SunMaterial.cs
index 6cfccab46..822d1ae44 100644
--- a/Assets/Scripts/Sector Display/SunMaterial.cs
+++ b/Assets/Scripts/Sector Display/SunMaterial.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using static Unity.Mathematics.math;
diff --git a/Assets/Scripts/Sector Display/SunObject.cs b/Assets/Scripts/Sector Display/SunObject.cs
index 1bda774a0..eb99f7149 100644
--- a/Assets/Scripts/Sector Display/SunObject.cs
+++ b/Assets/Scripts/Sector Display/SunObject.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using UnityEngine;
diff --git a/Assets/Scripts/Sector Display/VolumeSampling.cs b/Assets/Scripts/Sector Display/VolumeSampling.cs
index a9d616ca6..6d915b4e7 100644
--- a/Assets/Scripts/Sector Display/VolumeSampling.cs
+++ b/Assets/Scripts/Sector Display/VolumeSampling.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using UnityEngine;
///
diff --git a/Assets/Scripts/Sector Display/WaveScroll.cs b/Assets/Scripts/Sector Display/WaveScroll.cs
index 9bfeb9143..93c9c4ebc 100644
--- a/Assets/Scripts/Sector Display/WaveScroll.cs
+++ b/Assets/Scripts/Sector Display/WaveScroll.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using UnityEngine;
diff --git a/Assets/Scripts/ServerShared/ActionCollection.cs b/Assets/Scripts/ServerShared/ActionCollection.cs
index d0fbf6622..7ee49fb64 100644
--- a/Assets/Scripts/ServerShared/ActionCollection.cs
+++ b/Assets/Scripts/ServerShared/ActionCollection.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
diff --git a/Assets/Scripts/ServerShared/Agents/AgentBehavior.cs b/Assets/Scripts/ServerShared/Agents/AgentBehavior.cs
index 3900b8108..c278a3de2 100644
--- a/Assets/Scripts/ServerShared/Agents/AgentBehavior.cs
+++ b/Assets/Scripts/ServerShared/Agents/AgentBehavior.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using Unity.Mathematics;
using static Unity.Mathematics.math;
diff --git a/Assets/Scripts/ServerShared/Agents/AgentTask.cs b/Assets/Scripts/ServerShared/Agents/AgentTask.cs
index 8948d60b3..7ce487ce3 100644
--- a/Assets/Scripts/ServerShared/Agents/AgentTask.cs
+++ b/Assets/Scripts/ServerShared/Agents/AgentTask.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using JsonKnownTypes;
diff --git a/Assets/Scripts/ServerShared/Agents/Aim.cs b/Assets/Scripts/ServerShared/Agents/Aim.cs
index b9e0f01b1..42b5d9b3a 100644
--- a/Assets/Scripts/ServerShared/Agents/Aim.cs
+++ b/Assets/Scripts/ServerShared/Agents/Aim.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using System.Linq;
using Unity.Mathematics;
diff --git a/Assets/Scripts/ServerShared/Agents/HaulingTask.cs b/Assets/Scripts/ServerShared/Agents/HaulingTask.cs
index 706730ef2..137fca75f 100644
--- a/Assets/Scripts/ServerShared/Agents/HaulingTask.cs
+++ b/Assets/Scripts/ServerShared/Agents/HaulingTask.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using MessagePack;
diff --git a/Assets/Scripts/ServerShared/Agents/Locomotion.cs b/Assets/Scripts/ServerShared/Agents/Locomotion.cs
index c257d6452..a90f26717 100644
--- a/Assets/Scripts/ServerShared/Agents/Locomotion.cs
+++ b/Assets/Scripts/ServerShared/Agents/Locomotion.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
diff --git a/Assets/Scripts/ServerShared/Agents/Mining.cs b/Assets/Scripts/ServerShared/Agents/Mining.cs
index 4138fe92a..d61cf31fa 100644
--- a/Assets/Scripts/ServerShared/Agents/Mining.cs
+++ b/Assets/Scripts/ServerShared/Agents/Mining.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using JsonKnownTypes;
diff --git a/Assets/Scripts/ServerShared/Agents/StationTowing.cs b/Assets/Scripts/ServerShared/Agents/StationTowing.cs
index 381d9fe3b..926fc3cf8 100644
--- a/Assets/Scripts/ServerShared/Agents/StationTowing.cs
+++ b/Assets/Scripts/ServerShared/Agents/StationTowing.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using JsonKnownTypes;
diff --git a/Assets/Scripts/ServerShared/Agents/Survey.cs b/Assets/Scripts/ServerShared/Agents/Survey.cs
index e273b9fd5..5d43dcebc 100644
--- a/Assets/Scripts/ServerShared/Agents/Survey.cs
+++ b/Assets/Scripts/ServerShared/Agents/Survey.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using JsonKnownTypes;
diff --git a/Assets/Scripts/ServerShared/Agents/VelocityMatch.cs b/Assets/Scripts/ServerShared/Agents/VelocityMatch.cs
index bd3e87851..d69a9e82b 100644
--- a/Assets/Scripts/ServerShared/Agents/VelocityMatch.cs
+++ b/Assets/Scripts/ServerShared/Agents/VelocityMatch.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
diff --git a/Assets/Scripts/ServerShared/Agents/WanderTask.cs b/Assets/Scripts/ServerShared/Agents/WanderTask.cs
index 4fc61dd8e..2d445ef8b 100644
--- a/Assets/Scripts/ServerShared/Agents/WanderTask.cs
+++ b/Assets/Scripts/ServerShared/Agents/WanderTask.cs
@@ -1,3 +1,6 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
public class WanderTask : AgentTask
{
diff --git a/Assets/Scripts/ServerShared/Attributes.cs b/Assets/Scripts/ServerShared/Attributes.cs
index e814e400f..be478a8db 100644
--- a/Assets/Scripts/ServerShared/Attributes.cs
+++ b/Assets/Scripts/ServerShared/Attributes.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
public class NameAttribute : Attribute
{
@@ -52,6 +56,17 @@ public class InspectableFieldAttribute : Attribute { }
[AttributeUsage(AttributeTargets.Field)]
public class InspectableTextAttribute : InspectableFieldAttribute { }
+[AttributeUsage(AttributeTargets.Field)]
+public class InspectableUnityObjectAttribute : InspectableFieldAttribute
+{
+ public Type ObjectType;
+
+ public InspectableUnityObjectAttribute(Type type)
+ {
+ ObjectType = type;
+ }
+}
+
[AttributeUsage(AttributeTargets.Field)]
public class InspectablePrefabAttribute : InspectableFieldAttribute { }
diff --git a/Assets/Scripts/ServerShared/Behaviors/Afterburner.cs b/Assets/Scripts/ServerShared/Behaviors/Afterburner.cs
deleted file mode 100644
index 26ec0b6fa..000000000
--- a/Assets/Scripts/ServerShared/Behaviors/Afterburner.cs
+++ /dev/null
@@ -1,91 +0,0 @@
-
-using System.Collections.Generic;
-using System.Linq;
-using MessagePack;
-using Newtonsoft.Json;
-
-// [InspectableField, MessagePackObject, JsonObject(MemberSerialization.OptIn)]
-// public class AfterburnerData : BehaviorData
-// {
-// [InspectableField, JsonProperty("thrust"), Key(1)]
-// public PerformanceStat ThrustModifier = new PerformanceStat();
-//
-// [InspectableField, JsonProperty("speed"), Key(2)]
-// public PerformanceStat SpeedModifier = new PerformanceStat();
-//
-// [InspectableField, JsonProperty("torque"), Key(3)]
-// public PerformanceStat TorqueModifier = new PerformanceStat();
-//
-// public override IBehavior CreateInstance(GameContext context, Entity entity, Gear item)
-// {
-// return new Afterburner(context, this, entity, item);
-// }
-// }
-//
-// public class Afterburner : IActivatedBehavior
-// {
-// private List> _modifiers = new List>();
-// private AfterburnerData _data;
-// private Thruster _thruster;
-// private int _thrustAxis;
-//
-// public Entity Entity { get; }
-// public Gear Item { get; }
-// public GameContext Context { get; }
-//
-// public BehaviorData Data => _data;
-//
-// public Afterburner(GameContext context, AfterburnerData data, Entity entity, Gear item)
-// {
-// Context = context;
-// _data = data;
-// Entity = entity;
-// Item = item;
-// }
-//
-// public void Initialize()
-// {
-// _thruster = Entity.GetBehaviors().FirstOrDefault();
-// _thrustAxis = Entity.GetAxis();
-// }
-//
-// public bool Update(float delta)
-// {
-// return true;
-// }
-//
-// public bool Activate()
-// {
-// if (_thruster == null) return false;
-//
-// var thrustMod = ((ThrusterData) _thruster.Data).Thrust.GetScaleModifiers(Entity);
-// thrustMod.Add(this,Context.Evaluate(_data.ThrustModifier,Item, Entity));
-// _modifiers.Add(thrustMod);
-//
-// Entity.AxisOverrides[_thrustAxis] = 1;
-//
-// return true;
-//
-// // var speedMod = (Ship.Hull.ItemData as HullData).TopSpeed.GetScaleModifiers(Ship);
-// // _modifiers.Add(speedMod);
-// // speedMod.Add(this,Context.Evaluate(_data.SpeedModifier,Item, Ship));
-// //
-// // var torqueMod = (Ship.GetEquipped(HardpointType.Thruster).ItemData as ThrusterData).Torque.GetScaleModifiers(Ship);
-// // _modifiers.Add(torqueMod);
-// // torqueMod.Add(this,Context.Evaluate(_data.TorqueModifier,Item, Ship));
-// }
-//
-// public void Deactivate()
-// {
-// Entity.AxisOverrides.Remove(_thrustAxis);
-// foreach (var mod in _modifiers)
-// {
-// mod.Remove(this);
-// }
-// _modifiers.Clear();
-// }
-//
-// public void Remove()
-// {
-// }
-// }
\ No newline at end of file
diff --git a/Assets/Scripts/ServerShared/Behaviors/Afterburner.cs.meta b/Assets/Scripts/ServerShared/Behaviors/Afterburner.cs.meta
deleted file mode 100644
index 3c165f6d7..000000000
--- a/Assets/Scripts/ServerShared/Behaviors/Afterburner.cs.meta
+++ /dev/null
@@ -1,3 +0,0 @@
-fileFormatVersion: 2
-guid: 967ca96c9f90416887db9a6a0341f58c
-timeCreated: 1584292755
\ No newline at end of file
diff --git a/Assets/Scripts/ServerShared/Behaviors/Behaviors.cs b/Assets/Scripts/ServerShared/Behaviors/Behaviors.cs
index d7ea09e7e..77b777d4d 100644
--- a/Assets/Scripts/ServerShared/Behaviors/Behaviors.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/Behaviors.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
diff --git a/Assets/Scripts/ServerShared/Behaviors/Controller.cs b/Assets/Scripts/ServerShared/Behaviors/Controller.cs
index 5cabb2b80..554362222 100644
--- a/Assets/Scripts/ServerShared/Behaviors/Controller.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/Controller.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using MessagePack;
diff --git a/Assets/Scripts/ServerShared/Behaviors/Cooldown.cs b/Assets/Scripts/ServerShared/Behaviors/Cooldown.cs
index 82554be66..38e771627 100644
--- a/Assets/Scripts/ServerShared/Behaviors/Cooldown.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/Cooldown.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Linq;
using MessagePack;
using Newtonsoft.Json;
diff --git a/Assets/Scripts/ServerShared/Behaviors/EnergyDraw.cs b/Assets/Scripts/ServerShared/Behaviors/EnergyDraw.cs
index af30fbdb6..8d39a5f09 100644
--- a/Assets/Scripts/ServerShared/Behaviors/EnergyDraw.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/EnergyDraw.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Linq;
using MessagePack;
using Newtonsoft.Json;
diff --git a/Assets/Scripts/ServerShared/Behaviors/FactoryBehavior.cs b/Assets/Scripts/ServerShared/Behaviors/FactoryBehavior.cs
index a4ce96464..836d00cab 100644
--- a/Assets/Scripts/ServerShared/Behaviors/FactoryBehavior.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/FactoryBehavior.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections.Generic;
using System.Linq;
using MessagePack;
diff --git a/Assets/Scripts/ServerShared/Behaviors/HaulingController.cs b/Assets/Scripts/ServerShared/Behaviors/HaulingController.cs
index 0b8ea5b69..b5e53679f 100644
--- a/Assets/Scripts/ServerShared/Behaviors/HaulingController.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/HaulingController.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
diff --git a/Assets/Scripts/ServerShared/Behaviors/Heat.cs b/Assets/Scripts/ServerShared/Behaviors/Heat.cs
index 40ffd8cc8..5c6690bec 100644
--- a/Assets/Scripts/ServerShared/Behaviors/Heat.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/Heat.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Linq;
using MessagePack;
using Newtonsoft.Json;
diff --git a/Assets/Scripts/ServerShared/Behaviors/Hitscan.cs b/Assets/Scripts/ServerShared/Behaviors/Hitscan.cs
index 8a95c7781..e96002b67 100644
--- a/Assets/Scripts/ServerShared/Behaviors/Hitscan.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/Hitscan.cs
@@ -1,4 +1,8 @@
-using MessagePack;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using MessagePack;
using Newtonsoft.Json;
[InspectableField, MessagePackObject, JsonObject(MemberSerialization.OptIn)]
diff --git a/Assets/Scripts/ServerShared/Behaviors/ItemUsage.cs b/Assets/Scripts/ServerShared/Behaviors/ItemUsage.cs
index dea6a6733..7762eac33 100644
--- a/Assets/Scripts/ServerShared/Behaviors/ItemUsage.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/ItemUsage.cs
@@ -1,4 +1,7 @@
-
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
using System;
using System.Linq;
using MessagePack;
diff --git a/Assets/Scripts/ServerShared/Behaviors/Launcher.cs b/Assets/Scripts/ServerShared/Behaviors/Launcher.cs
index 25ddbd320..6cae92ec8 100644
--- a/Assets/Scripts/ServerShared/Behaviors/Launcher.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/Launcher.cs
@@ -1,4 +1,6 @@
-
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
using MessagePack;
using Newtonsoft.Json;
diff --git a/Assets/Scripts/ServerShared/Behaviors/MiningController.cs b/Assets/Scripts/ServerShared/Behaviors/MiningController.cs
index 7539e32d8..be4af8b81 100644
--- a/Assets/Scripts/ServerShared/Behaviors/MiningController.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/MiningController.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
diff --git a/Assets/Scripts/ServerShared/Behaviors/MiningTool.cs b/Assets/Scripts/ServerShared/Behaviors/MiningTool.cs
index 92f276f94..36f031b8f 100644
--- a/Assets/Scripts/ServerShared/Behaviors/MiningTool.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/MiningTool.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Linq;
using MessagePack;
using Newtonsoft.Json;
diff --git a/Assets/Scripts/ServerShared/Behaviors/PatrolController.cs b/Assets/Scripts/ServerShared/Behaviors/PatrolController.cs
index bcf441b5c..f7b04af1a 100644
--- a/Assets/Scripts/ServerShared/Behaviors/PatrolController.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/PatrolController.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
diff --git a/Assets/Scripts/ServerShared/Behaviors/ProjectileWeapon.cs b/Assets/Scripts/ServerShared/Behaviors/ProjectileWeapon.cs
index fa54a2e1e..70ffbf030 100644
--- a/Assets/Scripts/ServerShared/Behaviors/ProjectileWeapon.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/ProjectileWeapon.cs
@@ -1,3 +1,7 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
using MessagePack;
using Newtonsoft.Json;
diff --git a/Assets/Scripts/ServerShared/Behaviors/Radiance.cs b/Assets/Scripts/ServerShared/Behaviors/Radiance.cs
index a0cc277f8..be06876a3 100644
--- a/Assets/Scripts/ServerShared/Behaviors/Radiance.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/Radiance.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Linq;
using MessagePack;
using Newtonsoft.Json;
diff --git a/Assets/Scripts/ServerShared/Behaviors/Radiator.cs b/Assets/Scripts/ServerShared/Behaviors/Radiator.cs
index 2c729eb93..4f4b0df9e 100644
--- a/Assets/Scripts/ServerShared/Behaviors/Radiator.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/Radiator.cs
@@ -1,3 +1,7 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
using MessagePack;
using Newtonsoft.Json;
using Unity.Mathematics;
diff --git a/Assets/Scripts/ServerShared/Behaviors/Reactor.cs b/Assets/Scripts/ServerShared/Behaviors/Reactor.cs
index 26197f66c..e01d858ce 100644
--- a/Assets/Scripts/ServerShared/Behaviors/Reactor.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/Reactor.cs
@@ -1,3 +1,7 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
using MessagePack;
using Newtonsoft.Json;
diff --git a/Assets/Scripts/ServerShared/Behaviors/Reflector.cs b/Assets/Scripts/ServerShared/Behaviors/Reflector.cs
index 78cd3efb5..12f439226 100644
--- a/Assets/Scripts/ServerShared/Behaviors/Reflector.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/Reflector.cs
@@ -1,3 +1,7 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
using MessagePack;
using Newtonsoft.Json;
using Unity.Mathematics;
diff --git a/Assets/Scripts/ServerShared/Behaviors/ResourceScanner.cs b/Assets/Scripts/ServerShared/Behaviors/ResourceScanner.cs
index 2ef7eb72e..657bd14a0 100644
--- a/Assets/Scripts/ServerShared/Behaviors/ResourceScanner.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/ResourceScanner.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Linq;
using MessagePack;
using Newtonsoft.Json;
diff --git a/Assets/Scripts/ServerShared/Behaviors/Sensor.cs b/Assets/Scripts/ServerShared/Behaviors/Sensor.cs
index c6d2a0da1..39fa22247 100644
--- a/Assets/Scripts/ServerShared/Behaviors/Sensor.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/Sensor.cs
@@ -1,3 +1,6 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
using MessagePack;
using Newtonsoft.Json;
diff --git a/Assets/Scripts/ServerShared/Behaviors/Shield.cs b/Assets/Scripts/ServerShared/Behaviors/Shield.cs
index 8468e6241..02e89454f 100644
--- a/Assets/Scripts/ServerShared/Behaviors/Shield.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/Shield.cs
@@ -1,3 +1,7 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
using MessagePack;
using Newtonsoft.Json;
using Unity.Mathematics;
diff --git a/Assets/Scripts/ServerShared/Behaviors/StatModifier.cs b/Assets/Scripts/ServerShared/Behaviors/StatModifier.cs
index 4ec387043..8110c40da 100644
--- a/Assets/Scripts/ServerShared/Behaviors/StatModifier.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/StatModifier.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Linq;
using MessagePack;
using Newtonsoft.Json;
diff --git a/Assets/Scripts/ServerShared/Behaviors/SurveyController.cs b/Assets/Scripts/ServerShared/Behaviors/SurveyController.cs
index d510942b9..b6e413391 100644
--- a/Assets/Scripts/ServerShared/Behaviors/SurveyController.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/SurveyController.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
diff --git a/Assets/Scripts/ServerShared/Behaviors/Switch.cs b/Assets/Scripts/ServerShared/Behaviors/Switch.cs
index b02b87a50..aa43e8c3b 100644
--- a/Assets/Scripts/ServerShared/Behaviors/Switch.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/Switch.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Linq;
using MessagePack;
using Newtonsoft.Json;
diff --git a/Assets/Scripts/ServerShared/Behaviors/Thermotoggle.cs b/Assets/Scripts/ServerShared/Behaviors/Thermotoggle.cs
index d7d46bcc8..0973052ed 100644
--- a/Assets/Scripts/ServerShared/Behaviors/Thermotoggle.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/Thermotoggle.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Linq;
using MessagePack;
using Newtonsoft.Json;
diff --git a/Assets/Scripts/ServerShared/Behaviors/Thruster.cs b/Assets/Scripts/ServerShared/Behaviors/Thruster.cs
index 3a9f64b07..a3170513a 100644
--- a/Assets/Scripts/ServerShared/Behaviors/Thruster.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/Thruster.cs
@@ -1,3 +1,7 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
using MessagePack;
using Newtonsoft.Json;
using Unity.Mathematics;
@@ -14,6 +18,9 @@ public class ThrusterData : BehaviorData
[InspectableField, JsonProperty("heat"), Key(3)]
public PerformanceStat Heat = new PerformanceStat();
+
+ [InspectablePrefab, JsonProperty("Particles"), Key(4)]
+ public string ParticlesPrefab;
public override IBehavior CreateInstance(ItemManager context, Entity entity, EquippedItem item)
{
@@ -28,6 +35,7 @@ public class Thruster : IAnalogBehavior
public ItemManager Context { get; }
public float Thrust { get; private set; }
+ public float Torque { get; }
public float Axis
{
@@ -47,12 +55,19 @@ public class Thruster : IAnalogBehavior
_data = data;
Entity = entity;
Item = item;
+ var hullData = context.GetData(entity.Hull) as HullData;
+ var hullCenter = hullData.Shape.CenterOfMass;
+ var itemData = context.GetData(item.EquippableItem);
+ var itemCenter = hullData.Shape.Inset(itemData.Shape, item.Position, item.EquippableItem.Rotation).CenterOfMass;
+ var toCenter = hullCenter - itemCenter;
+ Torque = -dot(toCenter, float2(1, 0).Rotate(item.EquippableItem.Rotation));
}
public bool Update(float delta)
{
Thrust = Context.Evaluate(_data.Thrust, Item.EquippableItem, Entity);
- Entity.Velocity += Entity.Direction * _input * Thrust / Entity.Mass * delta;
+ Entity.Velocity -= Entity.Direction.Rotate(Item.EquippableItem.Rotation) * _input * Thrust / Entity.Mass * delta;
+ Entity.Direction = mul(Entity.Direction, Unity.Mathematics.float2x2.Rotate(_input * Torque * Thrust / Entity.Mass / 100 * delta));
Item.Temperature += (_input * Context.Evaluate(_data.Heat, Item.EquippableItem, Entity) * delta) / Context.GetThermalMass(Item.EquippableItem);
Entity.VisibilitySources[this] = _input * Context.Evaluate(_data.Visibility, Item.EquippableItem, Entity);
return true;
diff --git a/Assets/Scripts/ServerShared/Behaviors/TowingController.cs b/Assets/Scripts/ServerShared/Behaviors/TowingController.cs
index 34ac3ab76..07e9e4b02 100644
--- a/Assets/Scripts/ServerShared/Behaviors/TowingController.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/TowingController.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
diff --git a/Assets/Scripts/ServerShared/Behaviors/Trigger.cs b/Assets/Scripts/ServerShared/Behaviors/Trigger.cs
index 724dc9059..66e04a2a2 100644
--- a/Assets/Scripts/ServerShared/Behaviors/Trigger.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/Trigger.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Linq;
using MessagePack;
using Newtonsoft.Json;
diff --git a/Assets/Scripts/ServerShared/Behaviors/Turning.cs b/Assets/Scripts/ServerShared/Behaviors/Turning.cs
index c17b0e3b5..70d0a0bee 100644
--- a/Assets/Scripts/ServerShared/Behaviors/Turning.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/Turning.cs
@@ -1,3 +1,7 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
using MessagePack;
using Newtonsoft.Json;
using Unity.Mathematics;
diff --git a/Assets/Scripts/ServerShared/Behaviors/VelocityConversion.cs b/Assets/Scripts/ServerShared/Behaviors/VelocityConversion.cs
index 39f2e5c73..44a44426c 100644
--- a/Assets/Scripts/ServerShared/Behaviors/VelocityConversion.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/VelocityConversion.cs
@@ -1,3 +1,7 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
using MessagePack;
using Newtonsoft.Json;
using Unity.Mathematics;
diff --git a/Assets/Scripts/ServerShared/Behaviors/VelocityLimit.cs b/Assets/Scripts/ServerShared/Behaviors/VelocityLimit.cs
index 7dc11d655..dc2ac6429 100644
--- a/Assets/Scripts/ServerShared/Behaviors/VelocityLimit.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/VelocityLimit.cs
@@ -1,3 +1,7 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
using MessagePack;
using Newtonsoft.Json;
using Unity.Mathematics;
diff --git a/Assets/Scripts/ServerShared/Behaviors/Visibility.cs b/Assets/Scripts/ServerShared/Behaviors/Visibility.cs
index 2924efd07..f2ed00749 100644
--- a/Assets/Scripts/ServerShared/Behaviors/Visibility.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/Visibility.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Linq;
using MessagePack;
using Newtonsoft.Json;
diff --git a/Assets/Scripts/ServerShared/Behaviors/WanderController.cs b/Assets/Scripts/ServerShared/Behaviors/WanderController.cs
index fcb7d2180..ec633c8e3 100644
--- a/Assets/Scripts/ServerShared/Behaviors/WanderController.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/WanderController.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
diff --git a/Assets/Scripts/ServerShared/Behaviors/Weapon.cs b/Assets/Scripts/ServerShared/Behaviors/Weapon.cs
index 610219151..943641c53 100644
--- a/Assets/Scripts/ServerShared/Behaviors/Weapon.cs
+++ b/Assets/Scripts/ServerShared/Behaviors/Weapon.cs
@@ -1,3 +1,7 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
using MessagePack;
using Newtonsoft.Json;
diff --git a/Assets/Scripts/ServerShared/BlueprintData.cs b/Assets/Scripts/ServerShared/BlueprintData.cs
index 5d941b785..5e0b5e721 100644
--- a/Assets/Scripts/ServerShared/BlueprintData.cs
+++ b/Assets/Scripts/ServerShared/BlueprintData.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using MessagePack;
diff --git a/Assets/Scripts/ServerShared/ColorMath.cs b/Assets/Scripts/ServerShared/ColorMath.cs
index ab5fc87ec..d1616d5be 100644
--- a/Assets/Scripts/ServerShared/ColorMath.cs
+++ b/Assets/Scripts/ServerShared/ColorMath.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using Unity.Mathematics;
using static Unity.Mathematics.math;
diff --git a/Assets/Scripts/ServerShared/Corporations.cs b/Assets/Scripts/ServerShared/Corporations.cs
index 5c5f76b54..2b95cae11 100644
--- a/Assets/Scripts/ServerShared/Corporations.cs
+++ b/Assets/Scripts/ServerShared/Corporations.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using MessagePack;
diff --git a/Assets/Scripts/ServerShared/DatabaseCache.cs b/Assets/Scripts/ServerShared/DatabaseCache.cs
index 707548c1b..87d175f94 100644
--- a/Assets/Scripts/ServerShared/DatabaseCache.cs
+++ b/Assets/Scripts/ServerShared/DatabaseCache.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
diff --git a/Assets/Scripts/ServerShared/DatabaseEntry.cs b/Assets/Scripts/ServerShared/DatabaseEntry.cs
index a69475e59..535601d47 100644
--- a/Assets/Scripts/ServerShared/DatabaseEntry.cs
+++ b/Assets/Scripts/ServerShared/DatabaseEntry.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Linq;
using JsonKnownTypes;
using MessagePack;
diff --git a/Assets/Scripts/ServerShared/Entity.cs b/Assets/Scripts/ServerShared/Entity.cs
index 609137438..b82b1ca15 100644
--- a/Assets/Scripts/ServerShared/Entity.cs
+++ b/Assets/Scripts/ServerShared/Entity.cs
@@ -1,3 +1,7 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
using System;
using System.Collections.Generic;
using System.Linq;
@@ -61,13 +65,12 @@ public abstract class Entity
_active = value;
if (_active)
{
- foreach (var hardpoint in Equipment)
- if(hardpoint.EquippableItem!=null)
- foreach (var behavior in hardpoint.Behaviors)
- {
- if(behavior is IInitializableBehavior initializableBehavior)
- initializableBehavior.Initialize();
- }
+ foreach (var item in Equipment)
+ foreach (var behavior in item.Behaviors)
+ {
+ if(behavior is IInitializableBehavior initializableBehavior)
+ initializableBehavior.Initialize();
+ }
}
}
}
@@ -84,6 +87,10 @@ public abstract class Entity
private void MapShip()
{
var hullData = ItemManager.GetData(Hull) as HullData;
+ var hull = new EquippedItem(ItemManager, Hull, int2.zero);
+ Equipment.Add(hull);
+ Hydrate(hull);
+ Mass = hullData.Mass;
GearOccupancy = new EquippedItem[hullData.Shape.Width, hullData.Shape.Height];
ThermalOccupancy = new EquippedItem[hullData.Shape.Width, hullData.Shape.Height];
Hardpoints = new HardpointData[hullData.Shape.Width, hullData.Shape.Height];
@@ -197,6 +204,7 @@ public abstract class Entity
foreach (var i in hullData.Shape.Coordinates)
if (itemLayer[i.x, i.y] == item)
itemLayer[i.x, i.y] = null;
+ Mass -= itemData.Mass;
return item.EquippableItem;
}
@@ -340,7 +348,8 @@ public abstract class Entity
var occupiedCoord = hullCoord + itemData.Shape.Rotate(i, item.Rotation);
(itemData.HardpointType == HardpointType.Thermal ? ThermalOccupancy : GearOccupancy)[occupiedCoord.x, occupiedCoord.y] = equippedItem;
}
-
+
+ Mass += itemData.Mass;
Hydrate(equippedItem);
return true;
}
@@ -355,6 +364,7 @@ public abstract class Entity
(itemData.HardpointType == HardpointType.Thermal ? ThermalOccupancy : GearOccupancy)[occupiedCoord.x, occupiedCoord.y] = equippedItem;
}
+ Mass += itemData.Mass;
Hydrate(equippedItem);
return true;
}
@@ -480,6 +490,8 @@ public abstract class Entity
Messages.Remove(message);
}
}
+ foreach(var child in Children)
+ child.Update(delta);
if (Parent != null)
{
@@ -551,11 +563,11 @@ public class EquippedItem
public void Update(float delta)
{
- if(Temperature < _data.MinimumTemperature || Temperature > _data.MaximumTemperature)
- {
- EquippableItem.Durability -= delta;
- return;
- }
+ // if(Temperature < _data.MinimumTemperature || Temperature > _data.MaximumTemperature)
+ // {
+ // EquippableItem.Durability -= delta;
+ // return;
+ // }
foreach (var group in BehaviorGroups)
{
diff --git a/Assets/Scripts/ServerShared/Enums.cs b/Assets/Scripts/ServerShared/Enums.cs
index 7d94dc79f..f78b2f55f 100644
--- a/Assets/Scripts/ServerShared/Enums.cs
+++ b/Assets/Scripts/ServerShared/Enums.cs
@@ -1,11 +1,15 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
using System;
public enum ItemRotation
{
None = 0,
- Clockwise = 1,
+ CounterClockwise = 1,
Reversed = 2,
- CounterClockwise = 3
+ Clockwise = 3
}
public enum LauncherCaliber
diff --git a/Assets/Scripts/ServerShared/ExponentialCurve.cs b/Assets/Scripts/ServerShared/ExponentialCurve.cs
index 9af5b1a0f..c51ac1175 100644
--- a/Assets/Scripts/ServerShared/ExponentialCurve.cs
+++ b/Assets/Scripts/ServerShared/ExponentialCurve.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using MessagePack;
diff --git a/Assets/Scripts/ServerShared/Extensions.cs b/Assets/Scripts/ServerShared/Extensions.cs
index 79a5357b8..9afa3933e 100644
--- a/Assets/Scripts/ServerShared/Extensions.cs
+++ b/Assets/Scripts/ServerShared/Extensions.cs
@@ -5,12 +5,14 @@ using System.Linq;
using System.Numerics;
using System.Reflection;
using System.Text.RegularExpressions;
+using Grpc.Core;
using LiteNetLib;
using MessagePack;
using Unity.Mathematics;
using static Unity.Mathematics.math;
using Random = Unity.Mathematics.Random;
using Unity.Tiny;
+using float2 = Unity.Mathematics.float2;
public static class Extensions
{
@@ -60,6 +62,40 @@ public static class Extensions
throw new ArgumentOutOfRangeException(nameof(rot), rot, null);
}
}
+
+ public static float2 Direction(this ItemRotation rotation)
+ {
+ switch (rotation)
+ {
+ case ItemRotation.None:
+ return float2(0, 1);
+ case ItemRotation.CounterClockwise:
+ return float2(-1, 0);
+ case ItemRotation.Reversed:
+ return float2(0, -1);
+ case ItemRotation.Clockwise:
+ return float2(1, 0);
+ default:
+ throw new ArgumentOutOfRangeException(nameof(rotation), rotation, null);
+ }
+ }
+
+ public static float2 Rotate(this float2 v, ItemRotation rotation)
+ {
+ switch (rotation)
+ {
+ case ItemRotation.None:
+ return v;
+ case ItemRotation.CounterClockwise:
+ return float2(-v.y, v.x);
+ case ItemRotation.Reversed:
+ return float2(-v.x, -v.y);
+ case ItemRotation.Clockwise:
+ return float2(v.y, -v.x);
+ default:
+ throw new ArgumentOutOfRangeException(nameof(rotation), rotation, null);
+ }
+ }
public static string SplitCamelCase( this string str )
{
diff --git a/Assets/Scripts/ServerShared/GlobalData.cs b/Assets/Scripts/ServerShared/GlobalData.cs
index 8eca78229..c3da2383d 100644
--- a/Assets/Scripts/ServerShared/GlobalData.cs
+++ b/Assets/Scripts/ServerShared/GlobalData.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using MessagePack;
diff --git a/Assets/Scripts/ServerShared/ItemData.cs b/Assets/Scripts/ServerShared/ItemData.cs
index a385819fb..376643b6a 100644
--- a/Assets/Scripts/ServerShared/ItemData.cs
+++ b/Assets/Scripts/ServerShared/ItemData.cs
@@ -1,3 +1,7 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
using System;
using System.Collections;
using System.Collections.Generic;
@@ -7,6 +11,7 @@ using MessagePack;
using Newtonsoft.Json;
using Unity.Mathematics;
using static Unity.Mathematics.math;
+using float2 = Unity.Mathematics.float2;
using int2 = Unity.Mathematics.int2;
[InspectableField, MessagePackObject, JsonObject(MemberSerialization.OptIn)]
@@ -83,7 +88,11 @@ public class Shape
{
get
{
- if (_dirty) _cachedShapeCoordinates = EnumerateShapeCoordinates().ToArray();
+ if (_dirty)
+ {
+ _cachedShapeCoordinates = EnumerateShapeCoordinates().ToArray();
+ _dirty = false;
+ }
return _cachedShapeCoordinates;
}
}
@@ -115,6 +124,12 @@ public class Shape
}
}
+ private float2? _centerOfMass;
+
+ [IgnoreMember]
+ public float2 CenterOfMass => _centerOfMass ?? (_centerOfMass = Coordinates
+ .Aggregate(float2.zero, (total, coord) => total + coord) / Coordinates.Length).Value;
+
public bool this[int2 pos] {
get { return pos.x >= 0 && pos.y >= 0 && pos.x < Width && pos.y < Height && Cells[pos.x, pos.y]; }
set
diff --git a/Assets/Scripts/ServerShared/ItemInstance.cs b/Assets/Scripts/ServerShared/ItemInstance.cs
index 2f1f3aa43..b8bb5f3cb 100644
--- a/Assets/Scripts/ServerShared/ItemInstance.cs
+++ b/Assets/Scripts/ServerShared/ItemInstance.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
diff --git a/Assets/Scripts/ServerShared/ItemManager.cs b/Assets/Scripts/ServerShared/ItemManager.cs
index b8c58a2ac..d4e06cfa7 100644
--- a/Assets/Scripts/ServerShared/ItemManager.cs
+++ b/Assets/Scripts/ServerShared/ItemManager.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
diff --git a/Assets/Scripts/ServerShared/LoadoutData.cs b/Assets/Scripts/ServerShared/LoadoutData.cs
index b6cd34541..eb0fff6ff 100644
--- a/Assets/Scripts/ServerShared/LoadoutData.cs
+++ b/Assets/Scripts/ServerShared/LoadoutData.cs
@@ -1,3 +1,7 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
using System;
using System.Collections.Generic;
using MessagePack;
diff --git a/Assets/Scripts/ServerShared/Messages.cs b/Assets/Scripts/ServerShared/Messages.cs
index ebc54b497..f5e8da441 100644
--- a/Assets/Scripts/ServerShared/Messages.cs
+++ b/Assets/Scripts/ServerShared/Messages.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using LiteNetLib;
diff --git a/Assets/Scripts/ServerShared/OrbitalEntity.cs b/Assets/Scripts/ServerShared/OrbitalEntity.cs
index 29ced1f1d..44d1680ee 100644
--- a/Assets/Scripts/ServerShared/OrbitalEntity.cs
+++ b/Assets/Scripts/ServerShared/OrbitalEntity.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using Unity.Mathematics;
diff --git a/Assets/Scripts/ServerShared/PlayerData.cs b/Assets/Scripts/ServerShared/PlayerData.cs
index 9d0afb80c..322fb51c0 100644
--- a/Assets/Scripts/ServerShared/PlayerData.cs
+++ b/Assets/Scripts/ServerShared/PlayerData.cs
@@ -1,3 +1,7 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
using System;
using MessagePack;
using Newtonsoft.Json;
diff --git a/Assets/Scripts/ServerShared/Settings.cs b/Assets/Scripts/ServerShared/Settings.cs
index e653fa055..d12a1eeba 100644
--- a/Assets/Scripts/ServerShared/Settings.cs
+++ b/Assets/Scripts/ServerShared/Settings.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using MessagePack;
diff --git a/Assets/Scripts/ServerShared/Ship.cs b/Assets/Scripts/ServerShared/Ship.cs
index fd9a3ba01..5368a9f26 100644
--- a/Assets/Scripts/ServerShared/Ship.cs
+++ b/Assets/Scripts/ServerShared/Ship.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
diff --git a/Assets/Scripts/ServerShared/Zone.cs b/Assets/Scripts/ServerShared/Zone.cs
index 43c349155..be0e7199e 100644
--- a/Assets/Scripts/ServerShared/Zone.cs
+++ b/Assets/Scripts/ServerShared/Zone.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
@@ -11,7 +15,7 @@ using Random = Unity.Mathematics.Random;
public class Zone
{
//public HashSet Planets = new HashSet();
- public List Entities = new List();
+ public ReactiveCollection Entities = new ReactiveCollection();
//public Dictionary Orbits = new Dictionary();
public Dictionary Planets = new Dictionary();
public Dictionary PlanetInstances = new Dictionary();
@@ -65,7 +69,7 @@ public class Zone
return new ZonePack
{
Data = Data,
- Entities = Entities,
+ Entities = Entities.ToList(),
Orbits = Orbits.Values.Select(o=>o.Data).ToList(),
Planets = Planets.Values.ToList()
};
@@ -312,7 +316,7 @@ public class Zone
return PowerPulse(x, maskExponent) * cos(pow(x, sineExponent) * frequency + phase);
}
- public float3 GetNormal(float2 pos, float step, float mul)
+ public float3 GetNormal(float2 pos, float step = .1f, float mul = 1)
{
float hL = GetHeight(new float2(pos.x - step, pos.y)) * mul;
float hR = GetHeight(new float2(pos.x + step, pos.y)) * mul;
@@ -320,14 +324,8 @@ public class Zone
float hU = GetHeight(new float2(pos.x, pos.y + step)) * mul;
// Deduce terrain normal
- float3 normal = new float3((hL - hR), (hD - hU), 2);
- normalize(normal);
- return new float3(normal.x, normal.z, normal.y);
- }
-
- public float3 GetNormal(float2 pos)
- {
- return GetNormal(pos, .1f, 1);
+ float3 normal = new float3((hL - hR), (hD - hU), step*2);
+ return normalize(normal).xzy;
}
public override int GetHashCode()
diff --git a/Assets/Scripts/ServerShared/ZoneData.cs b/Assets/Scripts/ServerShared/ZoneData.cs
index 7094ef6f7..9333ebc56 100644
--- a/Assets/Scripts/ServerShared/ZoneData.cs
+++ b/Assets/Scripts/ServerShared/ZoneData.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using MessagePack;
diff --git a/Assets/Scripts/ServerShared/ZoneGenerator.cs b/Assets/Scripts/ServerShared/ZoneGenerator.cs
index e3c5e43d4..ab305e835 100644
--- a/Assets/Scripts/ServerShared/ZoneGenerator.cs
+++ b/Assets/Scripts/ServerShared/ZoneGenerator.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Globalization;
diff --git a/Assets/Scripts/TechTreeMsagl.cs b/Assets/Scripts/TechTreeMsagl.cs
index c898d9eb9..42c1e6a12 100644
--- a/Assets/Scripts/TechTreeMsagl.cs
+++ b/Assets/Scripts/TechTreeMsagl.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
diff --git a/Assets/Scripts/UI/AttributeProperty.cs b/Assets/Scripts/UI/AttributeProperty.cs
index 02f6d5627..5e4b9f700 100644
--- a/Assets/Scripts/UI/AttributeProperty.cs
+++ b/Assets/Scripts/UI/AttributeProperty.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
diff --git a/Assets/Scripts/UI/BackgroundRenderer.cs b/Assets/Scripts/UI/BackgroundRenderer.cs
index e8e204d11..bad72b37d 100644
--- a/Assets/Scripts/UI/BackgroundRenderer.cs
+++ b/Assets/Scripts/UI/BackgroundRenderer.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
diff --git a/Assets/Scripts/UI/BoolField.cs b/Assets/Scripts/UI/BoolField.cs
index 4ad2aecaa..f76098160 100644
--- a/Assets/Scripts/UI/BoolField.cs
+++ b/Assets/Scripts/UI/BoolField.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
diff --git a/Assets/Scripts/UI/ButtonField.cs b/Assets/Scripts/UI/ButtonField.cs
index ba5c1a8c7..a8a277827 100644
--- a/Assets/Scripts/UI/ButtonField.cs
+++ b/Assets/Scripts/UI/ButtonField.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
diff --git a/Assets/Scripts/UI/ClickCatcher.cs b/Assets/Scripts/UI/ClickCatcher.cs
index dc2058622..2714c27ef 100644
--- a/Assets/Scripts/UI/ClickCatcher.cs
+++ b/Assets/Scripts/UI/ClickCatcher.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
diff --git a/Assets/Scripts/UI/ClickRaycaster.cs b/Assets/Scripts/UI/ClickRaycaster.cs
index cfc73483a..5175540c7 100644
--- a/Assets/Scripts/UI/ClickRaycaster.cs
+++ b/Assets/Scripts/UI/ClickRaycaster.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
diff --git a/Assets/Scripts/UI/ClickableCollider.cs b/Assets/Scripts/UI/ClickableCollider.cs
index 9901ff86d..76a52ea25 100644
--- a/Assets/Scripts/UI/ClickableCollider.cs
+++ b/Assets/Scripts/UI/ClickableCollider.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
diff --git a/Assets/Scripts/UI/ConfirmationDialog.cs b/Assets/Scripts/UI/ConfirmationDialog.cs
index ff282319f..d697a01df 100644
--- a/Assets/Scripts/UI/ConfirmationDialog.cs
+++ b/Assets/Scripts/UI/ConfirmationDialog.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
diff --git a/Assets/Scripts/UI/ContextMenu.cs b/Assets/Scripts/UI/ContextMenu.cs
index 6b1320cd0..a9fc32fae 100644
--- a/Assets/Scripts/UI/ContextMenu.cs
+++ b/Assets/Scripts/UI/ContextMenu.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
diff --git a/Assets/Scripts/UI/ContextMenuOption.cs b/Assets/Scripts/UI/ContextMenuOption.cs
index 89b1f3b04..f26075379 100644
--- a/Assets/Scripts/UI/ContextMenuOption.cs
+++ b/Assets/Scripts/UI/ContextMenuOption.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
diff --git a/Assets/Scripts/UI/CorporationMenuItem.cs b/Assets/Scripts/UI/CorporationMenuItem.cs
index cdb6e1831..61dfe6789 100644
--- a/Assets/Scripts/UI/CorporationMenuItem.cs
+++ b/Assets/Scripts/UI/CorporationMenuItem.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
diff --git a/Assets/Scripts/UI/DropdownMenu.cs b/Assets/Scripts/UI/DropdownMenu.cs
index 55e6ce595..faff072a4 100644
--- a/Assets/Scripts/UI/DropdownMenu.cs
+++ b/Assets/Scripts/UI/DropdownMenu.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
diff --git a/Assets/Scripts/UI/EnumField.cs b/Assets/Scripts/UI/EnumField.cs
index d0b8aa1e7..a9f5031d9 100644
--- a/Assets/Scripts/UI/EnumField.cs
+++ b/Assets/Scripts/UI/EnumField.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
diff --git a/Assets/Scripts/UI/FlatButton.cs b/Assets/Scripts/UI/FlatButton.cs
index 8046d14ea..83fb477c2 100644
--- a/Assets/Scripts/UI/FlatButton.cs
+++ b/Assets/Scripts/UI/FlatButton.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using TMPro;
diff --git a/Assets/Scripts/UI/FlatFlatButton.cs b/Assets/Scripts/UI/FlatFlatButton.cs
index 1b99045c4..a55a31dc3 100644
--- a/Assets/Scripts/UI/FlatFlatButton.cs
+++ b/Assets/Scripts/UI/FlatFlatButton.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using TMPro;
diff --git a/Assets/Scripts/UI/GalaxyZone.cs b/Assets/Scripts/UI/GalaxyZone.cs
index 4aed768aa..393d10356 100644
--- a/Assets/Scripts/UI/GalaxyZone.cs
+++ b/Assets/Scripts/UI/GalaxyZone.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
diff --git a/Assets/Scripts/UI/Icons.cs b/Assets/Scripts/UI/Icons.cs
index 7a45928f4..48b3ec8f3 100644
--- a/Assets/Scripts/UI/Icons.cs
+++ b/Assets/Scripts/UI/Icons.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using UnityEngine;
diff --git a/Assets/Scripts/UI/IncrementField.cs b/Assets/Scripts/UI/IncrementField.cs
index bf5983c93..6a95130cd 100644
--- a/Assets/Scripts/UI/IncrementField.cs
+++ b/Assets/Scripts/UI/IncrementField.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
diff --git a/Assets/Scripts/UI/InputField.cs b/Assets/Scripts/UI/InputField.cs
index 6cce2e416..4d89ebdde 100644
--- a/Assets/Scripts/UI/InputField.cs
+++ b/Assets/Scripts/UI/InputField.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
diff --git a/Assets/Scripts/UI/InventoryPanel.cs b/Assets/Scripts/UI/InventoryPanel.cs
index ac6e73fea..e781e14a6 100644
--- a/Assets/Scripts/UI/InventoryPanel.cs
+++ b/Assets/Scripts/UI/InventoryPanel.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
diff --git a/Assets/Scripts/UI/LoginScreen.cs b/Assets/Scripts/UI/LoginScreen.cs
index e1c3ea901..481d4473b 100644
--- a/Assets/Scripts/UI/LoginScreen.cs
+++ b/Assets/Scripts/UI/LoginScreen.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using TMPro;
diff --git a/Assets/Scripts/UI/MapViewDragHandler.cs b/Assets/Scripts/UI/MapViewDragHandler.cs
index eaa24bb7a..00ff1ecb1 100644
--- a/Assets/Scripts/UI/MapViewDragHandler.cs
+++ b/Assets/Scripts/UI/MapViewDragHandler.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using static Unity.Mathematics.math;
diff --git a/Assets/Scripts/UI/MinimapCameraTrack.cs b/Assets/Scripts/UI/MinimapCameraTrack.cs
index dbc5e8357..eb5c66224 100644
--- a/Assets/Scripts/UI/MinimapCameraTrack.cs
+++ b/Assets/Scripts/UI/MinimapCameraTrack.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using UnityEngine;
diff --git a/Assets/Scripts/UI/MouseHover.cs b/Assets/Scripts/UI/MouseHover.cs
index 7ae2ce262..7e1ab94f5 100644
--- a/Assets/Scripts/UI/MouseHover.cs
+++ b/Assets/Scripts/UI/MouseHover.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
diff --git a/Assets/Scripts/UI/PropertiesList.cs b/Assets/Scripts/UI/PropertiesList.cs
index 58deb0751..f3d6fc9ba 100644
--- a/Assets/Scripts/UI/PropertiesList.cs
+++ b/Assets/Scripts/UI/PropertiesList.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using TMPro;
diff --git a/Assets/Scripts/UI/PropertiesPanel.cs b/Assets/Scripts/UI/PropertiesPanel.cs
index 0eef3c530..99ebd75a0 100644
--- a/Assets/Scripts/UI/PropertiesPanel.cs
+++ b/Assets/Scripts/UI/PropertiesPanel.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Globalization;
diff --git a/Assets/Scripts/UI/Property.cs b/Assets/Scripts/UI/Property.cs
index c1e34bde0..07b53992b 100644
--- a/Assets/Scripts/UI/Property.cs
+++ b/Assets/Scripts/UI/Property.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
diff --git a/Assets/Scripts/UI/PropertyButton.cs b/Assets/Scripts/UI/PropertyButton.cs
index e88a8dacc..735fbf66a 100644
--- a/Assets/Scripts/UI/PropertyButton.cs
+++ b/Assets/Scripts/UI/PropertyButton.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
diff --git a/Assets/Scripts/UI/PropertyLabel.cs b/Assets/Scripts/UI/PropertyLabel.cs
index 8f099d143..c447a85dc 100644
--- a/Assets/Scripts/UI/PropertyLabel.cs
+++ b/Assets/Scripts/UI/PropertyLabel.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using TMPro;
diff --git a/Assets/Scripts/UI/RangedFloatField.cs b/Assets/Scripts/UI/RangedFloatField.cs
index d3e9e9d49..9d4af90ed 100644
--- a/Assets/Scripts/UI/RangedFloatField.cs
+++ b/Assets/Scripts/UI/RangedFloatField.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
diff --git a/Assets/Scripts/UI/TabActivator.cs b/Assets/Scripts/UI/TabActivator.cs
index b76beeede..bfd6d6316 100644
--- a/Assets/Scripts/UI/TabActivator.cs
+++ b/Assets/Scripts/UI/TabActivator.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using UnityEngine;
diff --git a/Assets/Scripts/UI/TabButton.cs b/Assets/Scripts/UI/TabButton.cs
index 9fa5ee063..aa2022a03 100644
--- a/Assets/Scripts/UI/TabButton.cs
+++ b/Assets/Scripts/UI/TabButton.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using TMPro;
diff --git a/Assets/Scripts/UI/TabGroup.cs b/Assets/Scripts/UI/TabGroup.cs
index 2971ff4dd..a8280025c 100644
--- a/Assets/Scripts/UI/TabGroup.cs
+++ b/Assets/Scripts/UI/TabGroup.cs
@@ -1,4 +1,8 @@
-using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
diff --git a/Assets/Scripts/UI/TechArrow.cs b/Assets/Scripts/UI/TechArrow.cs
index ebdfe25e4..97aa35536 100644
--- a/Assets/Scripts/UI/TechArrow.cs
+++ b/Assets/Scripts/UI/TechArrow.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using UnityEngine;
diff --git a/Assets/Scripts/UI/TechNode.cs b/Assets/Scripts/UI/TechNode.cs
index 1ead1058d..69442d6fa 100644
--- a/Assets/Scripts/UI/TechNode.cs
+++ b/Assets/Scripts/UI/TechNode.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
diff --git a/Assets/Scripts/UI/ZoneGravityObject.cs b/Assets/Scripts/UI/ZoneGravityObject.cs
index 7e679fc10..3d2d8151b 100644
--- a/Assets/Scripts/UI/ZoneGravityObject.cs
+++ b/Assets/Scripts/UI/ZoneGravityObject.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
diff --git a/Assets/Scripts/UI/ZoneObject.cs b/Assets/Scripts/UI/ZoneObject.cs
index ee25ac521..66eb4edc1 100644
--- a/Assets/Scripts/UI/ZoneObject.cs
+++ b/Assets/Scripts/UI/ZoneObject.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
diff --git a/Assets/Scripts/UI/ZoneRenderer.cs b/Assets/Scripts/UI/ZoneRenderer.cs
index 108f3067e..8f52b0b57 100644
--- a/Assets/Scripts/UI/ZoneRenderer.cs
+++ b/Assets/Scripts/UI/ZoneRenderer.cs
@@ -1,4 +1,8 @@
using System;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
diff --git a/Assets/Scripts/UI/ZoneShip.cs b/Assets/Scripts/UI/ZoneShip.cs
index 81407f0d3..13555f1ec 100644
--- a/Assets/Scripts/UI/ZoneShip.cs
+++ b/Assets/Scripts/UI/ZoneShip.cs
@@ -1,4 +1,8 @@
-using System.Collections;
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
diff --git a/Assets/Shaders/DitheredParticles.shader b/Assets/Shaders/DitheredParticles.shader
index b31f9deb7..07d921a78 100644
--- a/Assets/Shaders/DitheredParticles.shader
+++ b/Assets/Shaders/DitheredParticles.shader
@@ -1,4 +1,8 @@
-Shader "Aetheria/Dithered Particles"
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+Shader "Aetheria/Dithered Particles"
{
Properties
{
@@ -50,7 +54,7 @@
void surf (Input IN, inout SurfaceOutputStandard o)
{
// Albedo comes from a texture tinted by color
- fixed4 c = tex2D (_MainTex, IN.uv_MainTex) * _Color;
+ fixed4 c = tex2D (_MainTex, IN.uv_MainTex) * _Color * IN.color;
// Apply screen space dithering
float2 screenUV = IN.screenPos.xy / IN.screenPos.w;
diff --git a/Assets/Shaders/GalaxyMap.shader b/Assets/Shaders/GalaxyMap.shader
index 8950287e0..63aef1864 100644
--- a/Assets/Shaders/GalaxyMap.shader
+++ b/Assets/Shaders/GalaxyMap.shader
@@ -1,4 +1,8 @@
-Shader "Unlit/GalaxyMap"
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+Shader "Unlit/GalaxyMap"
{
Properties
{
diff --git a/Assets/Shaders/Isolines.shader b/Assets/Shaders/Isolines.shader
index 84dec9fae..8ffbcf78b 100644
--- a/Assets/Shaders/Isolines.shader
+++ b/Assets/Shaders/Isolines.shader
@@ -1,4 +1,8 @@
-Shader "Unlit/Isolines"
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+
+Shader "Unlit/Isolines"
{
Properties
{
diff --git a/Assets/Shaders/IsolinesUI.shader b/Assets/Shaders/IsolinesUI.shader
index 301b29dd0..cdf9cd1ff 100644
--- a/Assets/Shaders/IsolinesUI.shader
+++ b/Assets/Shaders/IsolinesUI.shader
@@ -1,4 +1,6 @@
-// Unity built-in shader source. Copyright (c) 2016 Unity Technologies. MIT license (see license.txt)
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
Shader "UI/Isolines"
{
diff --git a/Assets/UnityHelpers.cs b/Assets/UnityHelpers.cs
new file mode 100644
index 000000000..dc8439d93
--- /dev/null
+++ b/Assets/UnityHelpers.cs
@@ -0,0 +1,11 @@
+using System.Collections;
+using System.Collections.Generic;
+using UnityEngine;
+
+public class UnityHelpers
+{
+ public static T LoadAsset(string path) where T : Object
+ {
+ return Resources.Load(path.Substring("Assets/Resources/".Length).Split('.')[0]);
+ }
+}
diff --git a/Assets/UnityHelpers.cs.meta b/Assets/UnityHelpers.cs.meta
new file mode 100644
index 000000000..548a62250
--- /dev/null
+++ b/Assets/UnityHelpers.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 7b4543cc6e0fec6498202ce0387b911d
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Economy.Shared.Unity.csproj b/Economy.Shared.Unity.csproj
index 3afc0e30f..daa3928f2 100644
--- a/Economy.Shared.Unity.csproj
+++ b/Economy.Shared.Unity.csproj
@@ -410,7 +410,6 @@
-