feat: ship particle effects, base properties, gravity fix
All ships now have their own properties, which are modifiers for the base ship properties. The base behaviour of all ships can now be easily changed, while the individual differences are still respected. Ship states now trigger particle emissions & effects. This is still messy and mixed with sounds. Will be overhauled once ship state machine is introduced. To calculate gravity you now need to specify the gravity source transform.
This commit is contained in:
parent
17aa5593ff
commit
5278d5ba81
@ -220,6 +220,10 @@ Transform:
|
||||
- {fileID: 8593468838974035070}
|
||||
- {fileID: 5739110816181282754}
|
||||
- {fileID: 3489597143813469327}
|
||||
- {fileID: 4542710706480618604}
|
||||
- {fileID: 7971143227516595385}
|
||||
- {fileID: 3078445893664878222}
|
||||
- {fileID: 6780256004419462580}
|
||||
m_Father: {fileID: 0}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!54 &4827981227876901225
|
||||
@ -306,9 +310,13 @@ MonoBehaviour:
|
||||
_componentIndexCache: 0
|
||||
_addedNetworkObject: {fileID: 4320456058255827552}
|
||||
_networkObjectCache: {fileID: 4320456058255827552}
|
||||
props: {fileID: 11400000, guid: 6de7cad1d98c7d546afb96cf047c2b33, type: 2}
|
||||
props: {fileID: 11400000, guid: 046eba218bb1e8946bee79bd55fd4bdd, type: 2}
|
||||
boostUI: {fileID: 0}
|
||||
cameraOperator: {fileID: 0}
|
||||
boostEffect: {fileID: 7234768050496314884}
|
||||
gravityEffect: {fileID: 4872706334040053047}
|
||||
jetFlameEffect: {fileID: 4832079438170929303}
|
||||
smokeTrailEffect: {fileID: 3500843490324877803}
|
||||
--- !u!114 &4320456058255827552
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -347,7 +355,7 @@ MonoBehaviour:
|
||||
_ownerInterpolation: 1
|
||||
_enableTeleport: 0
|
||||
_teleportThreshold: 1
|
||||
<PrefabId>k__BackingField: 9
|
||||
<PrefabId>k__BackingField: 5
|
||||
<SpawnableCollectionId>k__BackingField: 0
|
||||
_scenePathHash: 0
|
||||
<SceneId>k__BackingField: 0
|
||||
@ -594,6 +602,156 @@ SphereCollider:
|
||||
serializedVersion: 3
|
||||
m_Radius: 0.22474784
|
||||
m_Center: {x: 0.01105564, y: 0.31469262, z: 0}
|
||||
--- !u!1001 &123332957444049686
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 2
|
||||
m_Modification:
|
||||
serializedVersion: 3
|
||||
m_TransformParent: {fileID: 5042970769659716555}
|
||||
m_Modifications:
|
||||
- target: {fileID: 5747506880537754056, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: Gravity Line Particles
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
propertyPath: m_LocalPosition.x
|
||||
value: 0.21
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
propertyPath: m_LocalPosition.y
|
||||
value: -0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
propertyPath: m_LocalPosition.z
|
||||
value: -1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
propertyPath: m_LocalRotation.w
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
propertyPath: m_LocalRotation.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
propertyPath: m_LocalRotation.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
propertyPath: m_LocalRotation.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_RemovedGameObjects: []
|
||||
m_AddedGameObjects: []
|
||||
m_AddedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
--- !u!198 &4872706334040053047 stripped
|
||||
ParticleSystem:
|
||||
m_CorrespondingSourceObject: {fileID: 4767480441459301921, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
m_PrefabInstance: {fileID: 123332957444049686}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!4 &6780256004419462580 stripped
|
||||
Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
m_PrefabInstance: {fileID: 123332957444049686}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1001 &754241372986275310
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 2
|
||||
m_Modification:
|
||||
serializedVersion: 3
|
||||
m_TransformParent: {fileID: 5042970769659716555}
|
||||
m_Modifications:
|
||||
- target: {fileID: 4109326443333075970, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: Boost Shock Wave Particles
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7271248515473135959, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: m_LocalPosition.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7271248515473135959, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: m_LocalPosition.y
|
||||
value: 2.385
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7271248515473135959, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: m_LocalPosition.z
|
||||
value: -0.4
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7271248515473135959, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: m_LocalRotation.w
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7271248515473135959, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: m_LocalRotation.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7271248515473135959, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: m_LocalRotation.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7271248515473135959, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: m_LocalRotation.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7271248515473135959, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7271248515473135959, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7271248515473135959, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7931003585827073002, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: looping
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7931003585827073002, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: lengthInSec
|
||||
value: 0.8
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7931003585827073002, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: EmissionModule.m_Bursts.Array.data[1].time
|
||||
value: 0.2
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7931003585827073002, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: EmissionModule.m_Bursts.Array.data[2].time
|
||||
value: 0.4
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_RemovedGameObjects: []
|
||||
m_AddedGameObjects: []
|
||||
m_AddedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
--- !u!198 &7234768050496314884 stripped
|
||||
ParticleSystem:
|
||||
m_CorrespondingSourceObject: {fileID: 7931003585827073002, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
m_PrefabInstance: {fileID: 754241372986275310}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!4 &7971143227516595385 stripped
|
||||
Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 7271248515473135959, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
m_PrefabInstance: {fileID: 754241372986275310}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1001 &1378049901460532383
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -654,6 +812,10 @@ PrefabInstance:
|
||||
propertyPath: m_LocalEulerAnglesHint.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: -6896813348456795565, guid: 40527c707fffde84c99533c25bbcd8cd, type: 3}
|
||||
propertyPath: m_Materials.Array.data[0]
|
||||
value:
|
||||
objectReference: {fileID: 2100000, guid: 9ef1ef5754926b34e93f31acca505d0a, type: 2}
|
||||
- target: {fileID: -1642744634756266859, guid: 40527c707fffde84c99533c25bbcd8cd, type: 3}
|
||||
propertyPath: m_Materials.Array.size
|
||||
value: 1
|
||||
@ -662,6 +824,10 @@ PrefabInstance:
|
||||
propertyPath: m_Materials.Array.data[0]
|
||||
value:
|
||||
objectReference: {fileID: 2100000, guid: 6f6e84aae9fb6894bb48024ee9b61470, type: 2}
|
||||
- target: {fileID: -1642744634756266859, guid: 40527c707fffde84c99533c25bbcd8cd, type: 3}
|
||||
propertyPath: m_Materials.Array.data[1]
|
||||
value:
|
||||
objectReference: {fileID: -876546973899608171, guid: 894e255bca895714c929238ea0e6273f, type: 3}
|
||||
- target: {fileID: 919132149155446097, guid: 40527c707fffde84c99533c25bbcd8cd, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: Spaceship9
|
||||
@ -688,3 +854,137 @@ Transform:
|
||||
m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: 40527c707fffde84c99533c25bbcd8cd, type: 3}
|
||||
m_PrefabInstance: {fileID: 1378049901460532383}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1001 &2003113329371731864
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 2
|
||||
m_Modification:
|
||||
serializedVersion: 3
|
||||
m_TransformParent: {fileID: 5042970769659716555}
|
||||
m_Modifications:
|
||||
- target: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_LocalPosition.x
|
||||
value: -0.02
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_LocalPosition.y
|
||||
value: -2.464
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_LocalPosition.z
|
||||
value: -0.563
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_LocalRotation.w
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_LocalRotation.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_LocalRotation.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_LocalRotation.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8121523519804063547, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: Jet Flame Particles
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_RemovedGameObjects: []
|
||||
m_AddedGameObjects: []
|
||||
m_AddedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
--- !u!4 &3078445893664878222 stripped
|
||||
Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
m_PrefabInstance: {fileID: 2003113329371731864}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!198 &4832079438170929303 stripped
|
||||
ParticleSystem:
|
||||
m_CorrespondingSourceObject: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
m_PrefabInstance: {fileID: 2003113329371731864}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1001 &3400143175839768829
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 2
|
||||
m_Modification:
|
||||
serializedVersion: 3
|
||||
m_TransformParent: {fileID: 5042970769659716555}
|
||||
m_Modifications:
|
||||
- target: {fileID: 286824833114894065, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: Smoke Trail Particles
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
propertyPath: m_LocalPosition.x
|
||||
value: -0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
propertyPath: m_LocalPosition.y
|
||||
value: -2.277
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
propertyPath: m_LocalPosition.z
|
||||
value: -0.451
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
propertyPath: m_LocalRotation.w
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
propertyPath: m_LocalRotation.x
|
||||
value: -0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
propertyPath: m_LocalRotation.y
|
||||
value: -0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
propertyPath: m_LocalRotation.z
|
||||
value: -0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_RemovedGameObjects: []
|
||||
m_AddedGameObjects: []
|
||||
m_AddedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
--- !u!198 &3500843490324877803 stripped
|
||||
ParticleSystem:
|
||||
m_CorrespondingSourceObject: {fileID: 2286353817893630230, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
m_PrefabInstance: {fileID: 3400143175839768829}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!4 &4542710706480618604 stripped
|
||||
Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
m_PrefabInstance: {fileID: 3400143175839768829}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
|
||||
1346
Assets/Prefabs/Ships/Green Ship.prefab
Normal file
1346
Assets/Prefabs/Ships/Green Ship.prefab
Normal file
File diff suppressed because it is too large
Load Diff
7
Assets/Prefabs/Ships/Green Ship.prefab.meta
Normal file
7
Assets/Prefabs/Ships/Green Ship.prefab.meta
Normal file
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9f3e27e33167d704e941e42ded557111
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
1346
Assets/Prefabs/Ships/Purple Ship.prefab
Normal file
1346
Assets/Prefabs/Ships/Purple Ship.prefab
Normal file
File diff suppressed because it is too large
Load Diff
7
Assets/Prefabs/Ships/Purple Ship.prefab.meta
Normal file
7
Assets/Prefabs/Ships/Purple Ship.prefab.meta
Normal file
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5934082513feac04a9b875fc86abe70b
|
||||
PrefabImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -95,6 +95,10 @@ Transform:
|
||||
- {fileID: 3841992206182845443}
|
||||
- {fileID: 6616209870729500669}
|
||||
- {fileID: 4731773442997728510}
|
||||
- {fileID: 4918238313528133406}
|
||||
- {fileID: 147643063832646000}
|
||||
- {fileID: 7010845891763867175}
|
||||
- {fileID: 6328183573752812199}
|
||||
m_Father: {fileID: 0}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
--- !u!54 &4827981227876901225
|
||||
@ -181,9 +185,13 @@ MonoBehaviour:
|
||||
_componentIndexCache: 0
|
||||
_addedNetworkObject: {fileID: 394654179909484550}
|
||||
_networkObjectCache: {fileID: 394654179909484550}
|
||||
props: {fileID: 11400000, guid: f5590fbe0f33c0643a8df2f13af5538a, type: 2}
|
||||
props: {fileID: 11400000, guid: 04ffb42925f036949866663c0311ac6b, type: 2}
|
||||
boostUI: {fileID: 0}
|
||||
cameraOperator: {fileID: 0}
|
||||
boostEffect: {fileID: 7760749495303355546}
|
||||
gravityEffect: {fileID: 5356225948148490788}
|
||||
jetFlameEffect: {fileID: 3312185522185408775}
|
||||
smokeTrailEffect: {fileID: 978131449706323191}
|
||||
--- !u!114 &394654179909484550
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -222,7 +230,7 @@ MonoBehaviour:
|
||||
_ownerInterpolation: 1
|
||||
_enableTeleport: 0
|
||||
_teleportThreshold: 1
|
||||
<PrefabId>k__BackingField: 2
|
||||
<PrefabId>k__BackingField: 1
|
||||
<SpawnableCollectionId>k__BackingField: 0
|
||||
_scenePathHash: 0
|
||||
<SceneId>k__BackingField: 0
|
||||
@ -594,6 +602,211 @@ SphereCollider:
|
||||
serializedVersion: 3
|
||||
m_Radius: 0.22474784
|
||||
m_Center: {x: 0.01105564, y: 0.31469262, z: 0}
|
||||
--- !u!1001 &406218082282592112
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 2
|
||||
m_Modification:
|
||||
serializedVersion: 3
|
||||
m_TransformParent: {fileID: 5042970769659716555}
|
||||
m_Modifications:
|
||||
- target: {fileID: 4109326443333075970, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: Boost Shock Wave Particles
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7271248515473135959, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: m_LocalPosition.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7271248515473135959, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: m_LocalPosition.y
|
||||
value: 2.385
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7271248515473135959, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: m_LocalPosition.z
|
||||
value: -0.4
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7271248515473135959, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: m_LocalRotation.w
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7271248515473135959, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: m_LocalRotation.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7271248515473135959, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: m_LocalRotation.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7271248515473135959, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: m_LocalRotation.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7271248515473135959, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7271248515473135959, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 7271248515473135959, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_RemovedGameObjects: []
|
||||
m_AddedGameObjects: []
|
||||
m_AddedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
--- !u!4 &7010845891763867175 stripped
|
||||
Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 7271248515473135959, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
m_PrefabInstance: {fileID: 406218082282592112}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!198 &7760749495303355546 stripped
|
||||
ParticleSystem:
|
||||
m_CorrespondingSourceObject: {fileID: 7931003585827073002, guid: 24a81306cc1fbbd4b8f10022e2d6ee0d, type: 3}
|
||||
m_PrefabInstance: {fileID: 406218082282592112}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1001 &611466096646765573
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 2
|
||||
m_Modification:
|
||||
serializedVersion: 3
|
||||
m_TransformParent: {fileID: 5042970769659716555}
|
||||
m_Modifications:
|
||||
- target: {fileID: 722146712966802913, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
propertyPath: m_Materials.Array.data[1]
|
||||
value:
|
||||
objectReference: {fileID: 2100000, guid: 41bd73f1999ec5f42a8e9dfac74c19b2, type: 2}
|
||||
- target: {fileID: 5747506880537754056, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: Gravity Line Particles
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
propertyPath: m_LocalPosition.x
|
||||
value: -0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
propertyPath: m_LocalPosition.y
|
||||
value: -0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
propertyPath: m_LocalPosition.z
|
||||
value: -1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
propertyPath: m_LocalRotation.w
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
propertyPath: m_LocalRotation.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
propertyPath: m_LocalRotation.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
propertyPath: m_LocalRotation.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_RemovedGameObjects: []
|
||||
m_AddedGameObjects: []
|
||||
m_AddedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
--- !u!198 &5356225948148490788 stripped
|
||||
ParticleSystem:
|
||||
m_CorrespondingSourceObject: {fileID: 4767480441459301921, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
m_PrefabInstance: {fileID: 611466096646765573}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!4 &6328183573752812199 stripped
|
||||
Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
|
||||
m_PrefabInstance: {fileID: 611466096646765573}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1001 &1308797000485596641
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 2
|
||||
m_Modification:
|
||||
serializedVersion: 3
|
||||
m_TransformParent: {fileID: 5042970769659716555}
|
||||
m_Modifications:
|
||||
- target: {fileID: 286824833114894065, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: Smoke Trail Particles
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
propertyPath: m_LocalPosition.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
propertyPath: m_LocalPosition.y
|
||||
value: -2.3
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
propertyPath: m_LocalPosition.z
|
||||
value: -0.451
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
propertyPath: m_LocalRotation.w
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
propertyPath: m_LocalRotation.x
|
||||
value: -0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
propertyPath: m_LocalRotation.y
|
||||
value: -0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
propertyPath: m_LocalRotation.z
|
||||
value: -0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_RemovedGameObjects: []
|
||||
m_AddedGameObjects: []
|
||||
m_AddedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
--- !u!4 &147643063832646000 stripped
|
||||
Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
m_PrefabInstance: {fileID: 1308797000485596641}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!198 &978131449706323191 stripped
|
||||
ParticleSystem:
|
||||
m_CorrespondingSourceObject: {fileID: 2286353817893630230, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
|
||||
m_PrefabInstance: {fileID: 1308797000485596641}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1001 &1578594390765257941
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
@ -654,6 +867,14 @@ PrefabInstance:
|
||||
propertyPath: m_LocalEulerAnglesHint.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: -6896813348456795565, guid: 40527c707fffde84c99533c25bbcd8cd, type: 3}
|
||||
propertyPath: m_Materials.Array.size
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: -6896813348456795565, guid: 40527c707fffde84c99533c25bbcd8cd, type: 3}
|
||||
propertyPath: m_Materials.Array.data[0]
|
||||
value:
|
||||
objectReference: {fileID: 2100000, guid: 9ef1ef5754926b34e93f31acca505d0a, type: 2}
|
||||
- target: {fileID: -1642744634756266859, guid: 40527c707fffde84c99533c25bbcd8cd, type: 3}
|
||||
propertyPath: m_Materials.Array.size
|
||||
value: 1
|
||||
@ -662,6 +883,10 @@ PrefabInstance:
|
||||
propertyPath: m_Materials.Array.data[0]
|
||||
value:
|
||||
objectReference: {fileID: 2100000, guid: 63912637f2eed304ebf5d1888fb559e0, type: 2}
|
||||
- target: {fileID: -1642744634756266859, guid: 40527c707fffde84c99533c25bbcd8cd, type: 3}
|
||||
propertyPath: m_Materials.Array.data[1]
|
||||
value:
|
||||
objectReference: {fileID: 2100000, guid: 3e4299b4bfeaee34db1d6cf6c7b360bd, type: 2}
|
||||
- target: {fileID: 919132149155446097, guid: 40527c707fffde84c99533c25bbcd8cd, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: Spaceship9
|
||||
@ -688,3 +913,434 @@ Transform:
|
||||
m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: 40527c707fffde84c99533c25bbcd8cd, type: 3}
|
||||
m_PrefabInstance: {fileID: 1578594390765257941}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!1001 &8445865029439684104
|
||||
PrefabInstance:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 2
|
||||
m_Modification:
|
||||
serializedVersion: 3
|
||||
m_TransformParent: {fileID: 5042970769659716555}
|
||||
m_Modifications:
|
||||
- target: {fileID: 3534432400413253871, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_SortMode
|
||||
value: 3
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3534432400413253871, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_AllowRoll
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3534432400413253871, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_RenderMode
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3534432400413253871, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_LengthScale
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3534432400413253871, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_SortingFudge
|
||||
value: 100
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3534432400413253871, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_VelocityScale
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3534432400413253871, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_MinParticleSize
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3534432400413253871, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_NormalDirection
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3534432400413253871, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_RenderAlignment
|
||||
value: 2
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3534432400413253871, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_FreeformStretching
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3534432400413253871, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_Materials.Array.data[0]
|
||||
value:
|
||||
objectReference: {fileID: 2100000, guid: aa2cc3c23701273408a8b4995c0588e9, type: 2}
|
||||
- target: {fileID: 3534432400413253871, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_RotateWithStretchDirection
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_LocalScale.x
|
||||
value: 1.3
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_LocalScale.y
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_LocalPosition.x
|
||||
value: -0.02
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_LocalPosition.y
|
||||
value: -2.464
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_LocalPosition.z
|
||||
value: -0.563
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_LocalRotation.w
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_LocalRotation.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_LocalRotation.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_LocalRotation.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.x
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.y
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_LocalEulerAnglesHint.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: playOnAwake
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: ShapeModule.type
|
||||
value: 4
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: ShapeModule.angle
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.enabled
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: ColorModule.enabled
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: ForceModule.enabled
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: emitterVelocityMode
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: ForceModule.y.scalar
|
||||
value: -10
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: ShapeModule.arc.mode
|
||||
value: 2
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: ShapeModule.arc.spread
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.y.minScalar
|
||||
value: 2
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.scalar
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.separateAxes
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: VelocityModule.x.scalar
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: VelocityModule.y.scalar
|
||||
value: -1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: ForceModule.inWorldSpace
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: ShapeModule.m_Rotation.z
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: ShapeModule.radius.value
|
||||
value: 0.0001
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.y.minMaxState
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.z.minMaxState
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: ShapeModule.radiusThickness
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: VelocityModule.inWorldSpace
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.minMaxState
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: InitialModule.maxNumParticles
|
||||
value: 1000
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: InitialModule.startSpeed.scalar
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: EmissionModule.rateOverTime.scalar
|
||||
value: 200
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: InitialModule.startLifetime.scalar
|
||||
value: 0.6
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: LifetimeByEmitterSpeedModule.enabled
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: InitialModule.startLifetime.minScalar
|
||||
value: 0.3
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: LifetimeByEmitterSpeedModule.m_Range.x
|
||||
value: 0.3
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: LifetimeByEmitterSpeedModule.m_Range.y
|
||||
value: 0.6
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: ColorModule.gradient.maxGradient.atime1
|
||||
value: 46183
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: ColorModule.gradient.maxGradient.ctime1
|
||||
value: 65535
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: ColorModule.gradient.maxGradient.key1.a
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: InitialModule.startLifetime.minMaxState
|
||||
value: 3
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.size
|
||||
value: 2
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: ColorModule.gradient.maxGradient.m_ColorSpace
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.y.maxCurve.m_Curve.Array.data[0].value
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.z.maxCurve.m_Curve.Array.data[0].value
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.z.maxCurve.m_Curve.Array.data[1].value
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.y.maxCurve.m_Curve.Array.data[1].inSlope
|
||||
value: 0.06638029
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.z.maxCurve.m_Curve.Array.data[1].inSlope
|
||||
value: 0.027077474
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[0].time
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[1].time
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[2].time
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[3].time
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.y.maxCurve.m_Curve.Array.data[0].outSlope
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.y.maxCurve.m_Curve.Array.data[1].inWeight
|
||||
value: 0.13575846
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.y.maxCurve.m_Curve.Array.data[1].outSlope
|
||||
value: 0.06638029
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.z.maxCurve.m_Curve.Array.data[0].outSlope
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.z.maxCurve.m_Curve.Array.data[1].inWeight
|
||||
value: 0.16299033
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.z.maxCurve.m_Curve.Array.data[1].outSlope
|
||||
value: 0.027077474
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[0].value
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[1].value
|
||||
value: 0.22070312
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[2].value
|
||||
value: 0.059574336
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[3].value
|
||||
value: 0.059574336
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: InitialModule.startLifetime.maxCurve.m_Curve.Array.size
|
||||
value: 3
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[0].inSlope
|
||||
value: -0.033802647
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[1].inSlope
|
||||
value: -0.0012465196
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[2].inSlope
|
||||
value: 0.23911521
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[3].inSlope
|
||||
value: 0.23911521
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[0].inWeight
|
||||
value: 0.33333334
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[0].outSlope
|
||||
value: -0.033802647
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[1].inWeight
|
||||
value: 0.14813662
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[1].outSlope
|
||||
value: -0.0012465196
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[2].inWeight
|
||||
value: 0.11701953
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[2].outSlope
|
||||
value: 0.23911521
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[3].inWeight
|
||||
value: 0.11701953
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[3].outSlope
|
||||
value: 0.23911521
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[0].outWeight
|
||||
value: 0.91807276
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[1].outWeight
|
||||
value: 0.114722714
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[2].outWeight
|
||||
value: 0.114722714
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: SizeModule.curve.maxCurve.m_Curve.Array.data[3].outWeight
|
||||
value: 0.114722714
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: InitialModule.startLifetime.maxCurve.m_Curve.Array.data[1].time
|
||||
value: 0.4984321
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: InitialModule.startLifetime.maxCurve.m_Curve.Array.data[2].time
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: InitialModule.startLifetime.maxCurve.m_Curve.Array.data[1].value
|
||||
value: 0.83526725
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: InitialModule.startLifetime.maxCurve.m_Curve.Array.data[2].value
|
||||
value: 1
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 8121523519804063547, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
propertyPath: m_Name
|
||||
value: Jet Flame Particles
|
||||
objectReference: {fileID: 0}
|
||||
m_RemovedComponents: []
|
||||
m_RemovedGameObjects: []
|
||||
m_AddedGameObjects: []
|
||||
m_AddedComponents: []
|
||||
m_SourcePrefab: {fileID: 100100000, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
--- !u!198 &3312185522185408775 stripped
|
||||
ParticleSystem:
|
||||
m_CorrespondingSourceObject: {fileID: 6395817701140918031, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
m_PrefabInstance: {fileID: 8445865029439684104}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
--- !u!4 &4918238313528133406 stripped
|
||||
Transform:
|
||||
m_CorrespondingSourceObject: {fileID: 3563661011899316502, guid: a85c082f5fc6ca4428f78f385e6b42a9, type: 3}
|
||||
m_PrefabInstance: {fileID: 8445865029439684104}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
|
||||
33
Assets/ScriptedAssets/BaseProperties/BaseShip.asset
Normal file
33
Assets/ScriptedAssets/BaseProperties/BaseShip.asset
Normal file
@ -0,0 +1,33 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: d4e63b7217e6a2f499d6da3911f6da33, type: 3}
|
||||
m_Name: BaseShip
|
||||
m_EditorClassIdentifier:
|
||||
thrustAcceleration: 1200
|
||||
steerVelocity: 360
|
||||
normalMaxVelocity: 18
|
||||
absolutMaxVelocity: 27
|
||||
antiDriftAmount: 8
|
||||
minAntiDriftFactor: 0.01
|
||||
normalDrag: 5
|
||||
maximumDrag: 10
|
||||
torqueDrag: 0.2
|
||||
maxBoostCapacity: 4
|
||||
minBoostCapacity: 0.5
|
||||
boostMagnitude: 2
|
||||
outsideBoostRate: 0
|
||||
boostAntiGravityFactor: 0.5
|
||||
stunLooseControlFactor: 0.1
|
||||
tackleCriticalStunTime: 0.6
|
||||
tackleBodyStunTime: 0.3
|
||||
criticalTacklePowerFactor: 60
|
||||
normalTacklePowerFactor: 100
|
||||
8
Assets/ScriptedAssets/BaseProperties/BaseShip.asset.meta
Normal file
8
Assets/ScriptedAssets/BaseProperties/BaseShip.asset.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8bb9b96c7ef17e94bbd897292f08cd4e
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -12,24 +12,25 @@ MonoBehaviour:
|
||||
m_Script: {fileID: 11500000, guid: f5cabb9de76fbfa49b5ccac30cd25c68, type: 3}
|
||||
m_Name: BlueShip
|
||||
m_EditorClassIdentifier:
|
||||
shipObject: {fileID: 1372816401649438144, guid: 65cd4fa5e050652409dd9b062365c7e8, type: 3}
|
||||
baseProps: {fileID: 11400000, guid: 8bb9b96c7ef17e94bbd897292f08cd4e, type: 2}
|
||||
shipPrefab: {fileID: 1372816401649438144, guid: 65cd4fa5e050652409dd9b062365c7e8, type: 3}
|
||||
shipName: Blue Blitz
|
||||
thrustAcceleration: 1275
|
||||
steerVelocity: 300
|
||||
normalMaxVelocity: 22
|
||||
absolutMaxVelocity: 40
|
||||
antiDriftAmount: 6
|
||||
minAntiDriftFactor: 0.1
|
||||
normalDrag: 3
|
||||
maximumDrag: 6
|
||||
torqueDrag: 10
|
||||
maxBoostCapacity: 3
|
||||
minBoostCapacity: 0.6
|
||||
boostMagnitude: 2.5
|
||||
outsideBoostRate: 0
|
||||
boostAntiGravityFactor: 0.8
|
||||
stunLooseControlFactor: 0.1
|
||||
tackleCriticalStunTime: 0.6
|
||||
tackleBodyStunTime: 0.2
|
||||
criticalTacklePowerFactor: 60
|
||||
normalTacklePowerFactor: 30
|
||||
thrustAccelerationModifier: 1
|
||||
steerVelocityModifier: 1
|
||||
normalMaxVelocityModifier: 1
|
||||
absolutMaxVelocityModifier: 1
|
||||
antiDriftAmountModifier: 1
|
||||
minAntiDriftFactorModifier: 1
|
||||
normalDragModifier: 1
|
||||
maximumDragModifier: 1
|
||||
torqueDragModifier: 1
|
||||
maxBoostCapacityModifier: 1
|
||||
minBoostCapacityModifier: 1
|
||||
boostMagnitudeModifier: 1
|
||||
outsideBoostRateModifier: 1
|
||||
boostAntiGravityFactorModifier: 1
|
||||
stunLooseControlFactorModifier: 1
|
||||
tackleCriticalStunTimeModifier: 1
|
||||
tackleBodyStunTimeModifier: 1
|
||||
criticalTacklePowerFactorModifier: 1
|
||||
normalTacklePowerFactorModifier: 1
|
||||
|
||||
@ -1,7 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6de7cad1d98c7d546afb96cf047c2b33
|
||||
labels:
|
||||
- Character
|
||||
guid: 046eba218bb1e8946bee79bd55fd4bdd
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
|
||||
36
Assets/ScriptedAssets/Characters/GreenShip.asset
Normal file
36
Assets/ScriptedAssets/Characters/GreenShip.asset
Normal file
@ -0,0 +1,36 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f5cabb9de76fbfa49b5ccac30cd25c68, type: 3}
|
||||
m_Name: GreenShip
|
||||
m_EditorClassIdentifier:
|
||||
baseProps: {fileID: 11400000, guid: 8bb9b96c7ef17e94bbd897292f08cd4e, type: 2}
|
||||
shipPrefab: {fileID: 1372816401649438144, guid: 9f3e27e33167d704e941e42ded557111, type: 3}
|
||||
shipName: Green Danger
|
||||
thrustAccelerationModifier: 1
|
||||
steerVelocityModifier: 1
|
||||
normalMaxVelocityModifier: 1
|
||||
absolutMaxVelocityModifier: 1
|
||||
antiDriftAmountModifier: 1
|
||||
minAntiDriftFactorModifier: 1
|
||||
normalDragModifier: 1
|
||||
maximumDragModifier: 1
|
||||
torqueDragModifier: 1
|
||||
maxBoostCapacityModifier: 1
|
||||
minBoostCapacityModifier: 1
|
||||
boostMagnitudeModifier: 1
|
||||
outsideBoostRateModifier: 1
|
||||
boostAntiGravityFactorModifier: 1
|
||||
stunLooseControlFactorModifier: 1
|
||||
tackleCriticalStunTimeModifier: 1
|
||||
tackleBodyStunTimeModifier: 1
|
||||
criticalTacklePowerFactorModifier: 1
|
||||
normalTacklePowerFactorModifier: 1
|
||||
8
Assets/ScriptedAssets/Characters/GreenShip.asset.meta
Normal file
8
Assets/ScriptedAssets/Characters/GreenShip.asset.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8a085cd94fb766846992f4cbfd013aa7
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName: characters
|
||||
assetBundleVariant:
|
||||
36
Assets/ScriptedAssets/Characters/PurpleShip.asset
Normal file
36
Assets/ScriptedAssets/Characters/PurpleShip.asset
Normal file
@ -0,0 +1,36 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f5cabb9de76fbfa49b5ccac30cd25c68, type: 3}
|
||||
m_Name: PurpleShip
|
||||
m_EditorClassIdentifier:
|
||||
baseProps: {fileID: 11400000, guid: 8bb9b96c7ef17e94bbd897292f08cd4e, type: 2}
|
||||
shipPrefab: {fileID: 1372816401649438144, guid: 5934082513feac04a9b875fc86abe70b, type: 3}
|
||||
shipName: Purple Haze
|
||||
thrustAccelerationModifier: 1
|
||||
steerVelocityModifier: 1
|
||||
normalMaxVelocityModifier: 1
|
||||
absolutMaxVelocityModifier: 1
|
||||
antiDriftAmountModifier: 1
|
||||
minAntiDriftFactorModifier: 1
|
||||
normalDragModifier: 1
|
||||
maximumDragModifier: 1
|
||||
torqueDragModifier: 1
|
||||
maxBoostCapacityModifier: 1
|
||||
minBoostCapacityModifier: 1
|
||||
boostMagnitudeModifier: 1
|
||||
outsideBoostRateModifier: 1
|
||||
boostAntiGravityFactorModifier: 1
|
||||
stunLooseControlFactorModifier: 1
|
||||
tackleCriticalStunTimeModifier: 1
|
||||
tackleBodyStunTimeModifier: 1
|
||||
criticalTacklePowerFactorModifier: 1
|
||||
normalTacklePowerFactorModifier: 1
|
||||
8
Assets/ScriptedAssets/Characters/PurpleShip.asset.meta
Normal file
8
Assets/ScriptedAssets/Characters/PurpleShip.asset.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 38b05003293b5c24abcb9b8491dd5c45
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName: characters
|
||||
assetBundleVariant:
|
||||
@ -12,24 +12,25 @@ MonoBehaviour:
|
||||
m_Script: {fileID: 11500000, guid: f5cabb9de76fbfa49b5ccac30cd25c68, type: 3}
|
||||
m_Name: RedShip
|
||||
m_EditorClassIdentifier:
|
||||
shipObject: {fileID: 1372816401649438144, guid: 46f84e56340e83e4ba7c6abbccd2ae3f, type: 3}
|
||||
baseProps: {fileID: 11400000, guid: 8bb9b96c7ef17e94bbd897292f08cd4e, type: 2}
|
||||
shipPrefab: {fileID: 1372816401649438144, guid: 46f84e56340e83e4ba7c6abbccd2ae3f, type: 3}
|
||||
shipName: Red Menace
|
||||
thrustAcceleration: 1300
|
||||
steerVelocity: 300
|
||||
normalMaxVelocity: 25
|
||||
absolutMaxVelocity: 42
|
||||
antiDriftAmount: 9
|
||||
minAntiDriftFactor: 0.01
|
||||
normalDrag: 3
|
||||
maximumDrag: 6
|
||||
torqueDrag: 10
|
||||
maxBoostCapacity: 3
|
||||
minBoostCapacity: 0.6
|
||||
boostMagnitude: 2.5
|
||||
outsideBoostRate: 0
|
||||
boostAntiGravityFactor: 0.8
|
||||
stunLooseControlFactor: 0.1
|
||||
tackleCriticalStunTime: 0.6
|
||||
tackleBodyStunTime: 0.2
|
||||
criticalTacklePowerFactor: 65
|
||||
normalTacklePowerFactor: 32
|
||||
thrustAccelerationModifier: 1
|
||||
steerVelocityModifier: 1
|
||||
normalMaxVelocityModifier: 1
|
||||
absolutMaxVelocityModifier: 1
|
||||
antiDriftAmountModifier: 1
|
||||
minAntiDriftFactorModifier: 1
|
||||
normalDragModifier: 1
|
||||
maximumDragModifier: 1
|
||||
torqueDragModifier: 1
|
||||
maxBoostCapacityModifier: 1
|
||||
minBoostCapacityModifier: 1
|
||||
boostMagnitudeModifier: 1
|
||||
outsideBoostRateModifier: 1
|
||||
boostAntiGravityFactorModifier: 1
|
||||
stunLooseControlFactorModifier: 1
|
||||
tackleCriticalStunTimeModifier: 1
|
||||
tackleBodyStunTimeModifier: 1
|
||||
criticalTacklePowerFactorModifier: 1
|
||||
normalTacklePowerFactorModifier: 1
|
||||
|
||||
@ -1,7 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f5590fbe0f33c0643a8df2f13af5538a
|
||||
labels:
|
||||
- Character
|
||||
guid: 04ffb42925f036949866663c0311ac6b
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
|
||||
@ -5,9 +5,10 @@ using UnityEngine;
|
||||
public class AffectingForcesManager : MonoBehaviour
|
||||
{
|
||||
public enum Zone { NimbleZone, OutsideZone, UninitializedZone }
|
||||
private Dictionary<int, Vector3> impulseForces = new Dictionary<int, Vector3>();
|
||||
private Dictionary<int, Func<Transform, Vector3>> currentGravity = new Dictionary<int, Func<Transform, Vector3>>();
|
||||
private Dictionary<int, Zone> zoneInhabitants = new Dictionary<int, Zone>();
|
||||
private readonly Dictionary<int, Vector3> impulseForces = new();
|
||||
private readonly Dictionary<int, Func<Transform, Transform, Vector3>> currentGravity = new();
|
||||
private readonly Dictionary<int, Transform> currentGravitySource = new();
|
||||
private readonly Dictionary<int, Zone> zoneInhabitants = new();
|
||||
|
||||
public Zone GetZoneOfInstance(int id)
|
||||
{
|
||||
@ -36,9 +37,10 @@ public class AffectingForcesManager : MonoBehaviour
|
||||
zoneInhabitants[instnaceID] = zone;
|
||||
}
|
||||
|
||||
public void SetGravityForInstance(int instanceID, Func<Transform, Vector3> gravityFunction)
|
||||
public void SetGravityForInstance(int instanceID, Func<Transform, Transform, Vector3> gravityFunction, Transform gravitySource)
|
||||
{
|
||||
currentGravity[instanceID] = gravityFunction;
|
||||
currentGravitySource[instanceID] = gravitySource;
|
||||
}
|
||||
|
||||
public Vector3 GetImpulseForInstance(int instanceID)
|
||||
@ -50,12 +52,20 @@ public class AffectingForcesManager : MonoBehaviour
|
||||
return new Vector3();
|
||||
}
|
||||
|
||||
public Func<Transform, Vector3> GetGravityForInstance(int instanceID)
|
||||
public Func<Transform, Transform, Vector3> GetGravityForInstance(int instanceID)
|
||||
{
|
||||
if (currentGravity.ContainsKey(instanceID))
|
||||
{
|
||||
return currentGravity[instanceID];
|
||||
}
|
||||
return new Func<Transform, Vector3>(position => new Vector3());
|
||||
return new Func<Transform, Transform, Vector3>((gravitySource, target) => new Vector3());
|
||||
}
|
||||
public Transform GetGravitySourceForInstance(int instanceID)
|
||||
{
|
||||
if (currentGravitySource.ContainsKey(instanceID))
|
||||
{
|
||||
return currentGravitySource[instanceID];
|
||||
}
|
||||
return transform;
|
||||
}
|
||||
}
|
||||
|
||||
@ -3,12 +3,15 @@ using System.Reflection;
|
||||
using log4net;
|
||||
using Managers;
|
||||
using Unity.Mathematics;
|
||||
using Unity.VisualScripting;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UIElements;
|
||||
using static AffectingForcesManager;
|
||||
|
||||
public class NimbleZoneDetection : MonoBehaviour
|
||||
{
|
||||
private static ILog Log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
|
||||
private static Transform _nimbleZoneTransform;
|
||||
public AffectingForcesManager forcesManager;
|
||||
|
||||
public GameObject renderedZoneObject;
|
||||
@ -53,45 +56,48 @@ public class NimbleZoneDetection : MonoBehaviour
|
||||
{
|
||||
meshRenderer = renderedZoneObject.GetComponent<MeshRenderer>();
|
||||
material = meshRenderer.material;
|
||||
_nimbleZoneTransform = gameObject.transform;
|
||||
ResetRippleShaderProperties();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Array of the available gravities.
|
||||
/// </summary>
|
||||
private Func<Transform, Vector3>[] gravityFunctions =
|
||||
private Func<Transform, Transform, Vector3>[] gravityFunctions =
|
||||
{ DownGravity, NoGravity, InwardsGravity, OutwardsGravity };
|
||||
|
||||
/// <summary>
|
||||
/// Function which returns a gravity zero vector.
|
||||
/// </summary>
|
||||
private static Func<Transform, Vector3> NoGravity =
|
||||
new(transform => new Vector3());
|
||||
private static readonly Func<Transform, Transform, Vector3> NoGravity =
|
||||
new((gravitySource, target) => new Vector3());
|
||||
|
||||
/// <summary>
|
||||
/// Function which returns a gravity vector downwards, depending
|
||||
/// on the parent transforms rotation.
|
||||
/// The parenting transform for a ship is the arena it's in.
|
||||
/// </summary>
|
||||
private static Func<Transform, Vector3> DownGravity =
|
||||
new(transform => transform.parent.rotation * Vector3.down * gravityFactor);
|
||||
private static readonly Func<Transform, Transform, Vector3> DownGravity =
|
||||
new((gravitySource, target) =>
|
||||
gravitySource.rotation * Vector3.down * gravityFactor);
|
||||
|
||||
/// <summary>
|
||||
/// Function which returns a gravity vector towards the center of the parenting transform.
|
||||
/// The parenting transform for a ship is the arena it's in.
|
||||
/// </summary>
|
||||
private static Func<Transform, Vector3> InwardsGravity =
|
||||
new(transform => (transform.position - transform.parent.position).normalized * -gravityFactor);
|
||||
private static readonly Func<Transform, Transform, Vector3> InwardsGravity =
|
||||
new((gravitySource, target) =>
|
||||
(target.position - gravitySource.position).normalized * -gravityFactor);
|
||||
|
||||
/// <summary>
|
||||
/// Function which returns a gravity vector outwards from the center of the parenting transform.
|
||||
/// The parenting transform for a ship is the arena it's in.
|
||||
/// </summary>
|
||||
private static Func<Transform, Vector3> OutwardsGravity =
|
||||
new Func<Transform, Vector3>(transform =>
|
||||
(transform.position - transform.parent.position).normalized * gravityFactor);
|
||||
private static readonly Func<Transform, Transform, Vector3> OutwardsGravity =
|
||||
new((gravitySource, target) =>
|
||||
(target.position - gravitySource.position).normalized * gravityFactor);
|
||||
|
||||
public Func<Transform, Vector3> GetGravityFunction(Gravities gravity)
|
||||
public Func<Transform, Transform, Vector3> GetGravityFunction(Gravities gravity)
|
||||
{
|
||||
return gravityFunctions[(int)gravity];
|
||||
}
|
||||
@ -107,7 +113,7 @@ public class NimbleZoneDetection : MonoBehaviour
|
||||
}
|
||||
if (collider.tag == "Ship")
|
||||
{
|
||||
forcesManager.SetGravityForInstance(instanceID, NoGravity);
|
||||
forcesManager.SetGravityForInstance(instanceID, NoGravity, transform);
|
||||
forcesManager.SetZoneForInstance(instanceID, zone);
|
||||
}
|
||||
}
|
||||
@ -123,7 +129,7 @@ public class NimbleZoneDetection : MonoBehaviour
|
||||
if (collider.tag == "Ship")
|
||||
{
|
||||
forcesManager.SetGravityForInstance(instanceID,
|
||||
GetGravityFunction(outsideGravityFunction));
|
||||
GetGravityFunction(outsideGravityFunction), transform);
|
||||
forcesManager.SetZoneForInstance(instanceID, Zone.OutsideZone);
|
||||
}
|
||||
}
|
||||
|
||||
49
Assets/Scripts/ScriptableObjects/BaseShipProperties.cs
Normal file
49
Assets/Scripts/ScriptableObjects/BaseShipProperties.cs
Normal file
@ -0,0 +1,49 @@
|
||||
using ShipHandling;
|
||||
using UnityEngine;
|
||||
|
||||
/// <summary>
|
||||
/// Contains everything what makes a ship a ship, from the ship actor/3D-Model prefab to all the
|
||||
/// properties which are unique to it's controls and behavior.
|
||||
/// </summary>
|
||||
[CreateAssetMenu(fileName = "BaseShip", menuName = "ScriptableObjects/BaseShip")]
|
||||
public class BaseShipProperties : ScriptableObject
|
||||
{
|
||||
[Tooltip("The acceleration applied on thrust input.")]
|
||||
public float thrustAcceleration = 2000;
|
||||
[Tooltip("The velocity with which the character can rotate around it's center.")]
|
||||
public float steerVelocity = 360;
|
||||
[Tooltip("The standard limit of character velocity.")]
|
||||
public float normalMaxVelocity = 15f;
|
||||
[Tooltip("The absolute maximum of character velocity (enforced by drag).")]
|
||||
public float absolutMaxVelocity = 25f;
|
||||
[Tooltip("The amount to which the drift of the character is reduced when anti-drift is active.")]
|
||||
public float antiDriftAmount = 12;
|
||||
[Tooltip("The amount to which the drift of the character is always reduced.")]
|
||||
public float minAntiDriftFactor = 0.03f;
|
||||
[Tooltip("The drag which acts opposite to the characters movement direction normally.")]
|
||||
public float normalDrag = 5f;
|
||||
[Tooltip("The maximum drag which can act opposite to the characters movement direction.")]
|
||||
public float maximumDrag = 10f;
|
||||
[Tooltip("The drag which acts opposite to the characters rotation direction normally.")]
|
||||
public float torqueDrag = 0.2f;
|
||||
[Tooltip("The time which is used up when a player uses boost.")]
|
||||
public float maxBoostCapacity = 3.3f;
|
||||
[Tooltip("The point at which a player can boost again when boost is reloading.")]
|
||||
public float minBoostCapacity = 0.15f;
|
||||
[Tooltip("The factor with which the thrust is multiplied while boosting.")]
|
||||
public float boostMagnitude = 1.5f;
|
||||
[Tooltip("The flat tax on the boost when outside of a recharging zone (capacity -= rate * time in seconds).")]
|
||||
public float outsideBoostRate = 0.0f;
|
||||
[Tooltip("The factor of gravity which is eliminated by boosting (1 = no gravity).")]
|
||||
public float boostAntiGravityFactor = 0.33f;
|
||||
[Tooltip("The factor by which the player looses control over the character when being stunned (0 = no control).")]
|
||||
public float stunLooseControlFactor = 0.1f;
|
||||
[Tooltip("The time it takes for a critically stunned character to be controlable again.")]
|
||||
public float tackleCriticalStunTime = 0.6f;
|
||||
[Tooltip("The time it takes for a normally stunned character to be controlable again.")]
|
||||
public float tackleBodyStunTime = 0.3f;
|
||||
[Tooltip("The power with which the character is tackled away, when hit critically.")]
|
||||
public float criticalTacklePowerFactor = 60f;
|
||||
[Tooltip("The power with which the character is tackled away, when hit normally.")]
|
||||
public float normalTacklePowerFactor = 40f;
|
||||
}
|
||||
11
Assets/Scripts/ScriptableObjects/BaseShipProperties.cs.meta
Normal file
11
Assets/Scripts/ScriptableObjects/BaseShipProperties.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d4e63b7217e6a2f499d6da3911f6da33
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -2,55 +2,152 @@ using ShipHandling;
|
||||
using UnityEngine;
|
||||
|
||||
/// <summary>
|
||||
/// Contains everything what makes a ship a ship, from the ship actor/3D-Model prefab to all the
|
||||
/// properties which are unique to it's controls and behavior.
|
||||
/// Scriptable Object which offers modifiers to the base ship properties
|
||||
/// </summary>
|
||||
[CreateAssetMenu(fileName = "Ship", menuName = "ScriptableObjects/Ship", order = 2)]
|
||||
public class ShipProperties : ScriptableObject
|
||||
{
|
||||
[Tooltip("The base properties for all ships.")]
|
||||
public BaseShipProperties baseProps;
|
||||
[Tooltip("Prefab which contains the whole ship gameobject.")]
|
||||
public GameObject shipObject = null;
|
||||
public GameObject shipPrefab = null;
|
||||
[Tooltip("Object which relays the user input to the ships state.")]
|
||||
public ShipInputHandler shipInput = null;
|
||||
[Tooltip("Name of the ship (relevant to UI and lore context).")]
|
||||
public string shipName = "SpaceyMcShipface";
|
||||
|
||||
[Tooltip("The acceleration applied on thrust input.")]
|
||||
public float thrustAcceleration = 400;
|
||||
[Range(0.0f, 2.0f)]
|
||||
public float thrustAccelerationModifier = 1;
|
||||
[HideInInspector]
|
||||
public float thrustAcceleration
|
||||
{ get => baseProps.thrustAcceleration * thrustAccelerationModifier; }
|
||||
|
||||
[Tooltip("The velocity with which the character can rotate around it's center.")]
|
||||
public float steerVelocity = 30;
|
||||
[Range(0.0f, 2.0f)]
|
||||
public float steerVelocityModifier = 1;
|
||||
[HideInInspector]
|
||||
public float steerVelocity
|
||||
{ get => baseProps.steerVelocity * steerVelocityModifier; }
|
||||
|
||||
[Tooltip("The standard limit of character velocity.")]
|
||||
public float normalMaxVelocity = 10;
|
||||
[Range(0.0f, 2.0f)]
|
||||
public float normalMaxVelocityModifier = 1;
|
||||
[HideInInspector]
|
||||
public float normalMaxVelocity
|
||||
{ get => baseProps.normalMaxVelocity * normalMaxVelocityModifier; }
|
||||
|
||||
[Tooltip("The absolute maximum of character velocity (enforced by drag).")]
|
||||
public float absolutMaxVelocity = 20;
|
||||
[Range(0.0f, 2.0f)]
|
||||
public float absolutMaxVelocityModifier = 1;
|
||||
[HideInInspector]
|
||||
public float absolutMaxVelocity
|
||||
{ get => baseProps.absolutMaxVelocity * absolutMaxVelocityModifier; }
|
||||
|
||||
[Tooltip("The amount to which the drift of the character is reduced when anti-drift is active.")]
|
||||
public float antiDriftAmount = 20;
|
||||
[Range(0.0f, 2.0f)]
|
||||
public float antiDriftAmountModifier = 1;
|
||||
[HideInInspector]
|
||||
public float antiDriftAmount
|
||||
{ get => baseProps.antiDriftAmount * antiDriftAmountModifier; }
|
||||
|
||||
[Tooltip("The amount to which the drift of the character is always reduced.")]
|
||||
public float minAntiDriftFactor = 0.2f;
|
||||
[Range(0.0f, 2.0f)]
|
||||
public float minAntiDriftFactorModifier = 1;
|
||||
[HideInInspector]
|
||||
public float minAntiDriftFactor
|
||||
{ get => baseProps.minAntiDriftFactor * minAntiDriftFactorModifier; }
|
||||
|
||||
[Tooltip("The drag which acts opposite to the characters movement direction normally.")]
|
||||
public float normalDrag = 0.1f;
|
||||
[Range(0.0f, 2.0f)]
|
||||
public float normalDragModifier = 1;
|
||||
[HideInInspector]
|
||||
public float normalDrag
|
||||
{ get => baseProps.normalDrag * normalDragModifier; }
|
||||
|
||||
[Tooltip("The maximum drag which can act opposite to the characters movement direction.")]
|
||||
public float maximumDrag = 0.3f;
|
||||
[Range(0.0f, 2.0f)]
|
||||
public float maximumDragModifier = 1;
|
||||
[HideInInspector]
|
||||
public float maximumDrag
|
||||
{ get => baseProps.maximumDrag * maximumDragModifier; }
|
||||
|
||||
[Tooltip("The drag which acts opposite to the characters rotation direction normally.")]
|
||||
public float torqueDrag = 0.2f;
|
||||
[Range(0.0f, 2.0f)]
|
||||
public float torqueDragModifier = 1;
|
||||
[HideInInspector]
|
||||
public float torqueDrag
|
||||
{ get => baseProps.torqueDrag * torqueDragModifier; }
|
||||
|
||||
[Tooltip("The time which is used up when a player uses boost.")]
|
||||
public float maxBoostCapacity = 2f;
|
||||
[Range(0.0f, 2.0f)]
|
||||
public float maxBoostCapacityModifier = 1;
|
||||
[HideInInspector]
|
||||
public float maxBoostCapacity
|
||||
{ get => baseProps.maxBoostCapacity * maxBoostCapacityModifier; }
|
||||
|
||||
[Tooltip("The point at which a player can boost again when boost is reloading.")]
|
||||
public float minBoostCapacity = 0.3f;
|
||||
[Range(0.0f, 2.0f)]
|
||||
public float minBoostCapacityModifier = 1;
|
||||
[HideInInspector]
|
||||
public float minBoostCapacity
|
||||
{ get => baseProps.minBoostCapacity * minBoostCapacityModifier; }
|
||||
|
||||
[Tooltip("The factor with which the thrust is multiplied while boosting.")]
|
||||
public float boostMagnitude = 1.5f;
|
||||
[Range(0.0f, 2.0f)]
|
||||
public float boostMagnitudeModifier = 1;
|
||||
[HideInInspector]
|
||||
public float boostMagnitude
|
||||
{ get => baseProps.boostMagnitude * boostMagnitudeModifier; }
|
||||
|
||||
[Tooltip("The flat tax on the boost when outside of a recharging zone (capacity -= rate * time in seconds).")]
|
||||
public float outsideBoostRate = 0.5f;
|
||||
[Range(0.0f, 2.0f)]
|
||||
public float outsideBoostRateModifier = 1;
|
||||
[HideInInspector]
|
||||
public float outsideBoostRate
|
||||
{ get => baseProps.outsideBoostRate * outsideBoostRateModifier; }
|
||||
|
||||
|
||||
[Tooltip("The factor of gravity which is eliminated by boosting (1 = no gravity).")]
|
||||
public float boostAntiGravityFactor = 0.2f;
|
||||
[Range(0.0f, 2.0f)]
|
||||
public float boostAntiGravityFactorModifier = 1;
|
||||
[HideInInspector]
|
||||
public float boostAntiGravityFactor
|
||||
{ get => baseProps.boostAntiGravityFactor * boostAntiGravityFactorModifier; }
|
||||
|
||||
[Tooltip("The factor by which the player looses control over the character when being stunned (0 = no control).")]
|
||||
public float stunLooseControlFactor = 0.1f;
|
||||
[Range(0.0f, 2.0f)]
|
||||
public float stunLooseControlFactorModifier = 1;
|
||||
[HideInInspector]
|
||||
public float stunLooseControlFactor
|
||||
{ get => baseProps.stunLooseControlFactor * stunLooseControlFactorModifier; }
|
||||
|
||||
[Tooltip("The time it takes for a critically stunned character to be controlable again.")]
|
||||
public float tackleCriticalStunTime = 0.6f;
|
||||
[Range(0.0f, 2.0f)]
|
||||
public float tackleCriticalStunTimeModifier = 1;
|
||||
[HideInInspector]
|
||||
public float tackleCriticalStunTime
|
||||
{ get => baseProps.tackleCriticalStunTime * tackleCriticalStunTimeModifier; }
|
||||
|
||||
[Tooltip("The time it takes for a normally stunned character to be controlable again.")]
|
||||
public float tackleBodyStunTime = 0.3f;
|
||||
[Range(0.0f, 2.0f)]
|
||||
public float tackleBodyStunTimeModifier = 1;
|
||||
[HideInInspector]
|
||||
public float tackleBodyStunTime
|
||||
{ get => baseProps.tackleBodyStunTime * tackleBodyStunTimeModifier; }
|
||||
|
||||
[Tooltip("The power with which the character is tackled away, when hit critically.")]
|
||||
public float criticalTacklePowerFactor = 10f;
|
||||
[Range(0.0f, 2.0f)]
|
||||
public float criticalTacklePowerFactorModifier = 1;
|
||||
[HideInInspector]
|
||||
public float criticalTacklePowerFactor
|
||||
{ get => baseProps.criticalTacklePowerFactor * criticalTacklePowerFactorModifier; }
|
||||
|
||||
[Tooltip("The power with which the character is tackled away, when hit normally.")]
|
||||
public float normalTacklePowerFactor = 10f;
|
||||
[Range(0.0f, 2.0f)]
|
||||
public float normalTacklePowerFactorModifier = 1;
|
||||
[HideInInspector]
|
||||
public float normalTacklePowerFactor
|
||||
{ get => baseProps.normalTacklePowerFactor * normalTacklePowerFactorModifier; }
|
||||
|
||||
}
|
||||
|
||||
@ -16,6 +16,10 @@ public class Ship : NetworkBehaviour
|
||||
public BoostCapacityUI boostUI;
|
||||
// Private variables
|
||||
public CameraOperator cameraOperator;
|
||||
public ParticleSystem boostEffect;
|
||||
public ParticleSystem gravityEffect;
|
||||
public ParticleSystem jetFlameEffect;
|
||||
public ParticleSystem smokeTrailEffect;
|
||||
|
||||
private AffectingForcesManager forceManager;
|
||||
private Rigidbody body;
|
||||
@ -61,9 +65,9 @@ public class Ship : NetworkBehaviour
|
||||
{
|
||||
InstanceID = gameObject.GetInstanceID();
|
||||
state.boostCapacity = props.maxBoostCapacity;
|
||||
boostUI.SetMinBoostRatio(props.minBoostCapacity / props.maxBoostCapacity);
|
||||
// boostUI.SetMinBoostRatio(props.minBoostCapacity / props.maxBoostCapacity);
|
||||
// GameManager.GM.RegisterPlayer(this);
|
||||
cameraOperator.AddPlayer(gameObject);
|
||||
cameraOperator.AddCharacter(gameObject);
|
||||
|
||||
tackleDetectors = GetComponentsInChildren<TackleDetection>();
|
||||
foreach (TackleDetection td in tackleDetectors)
|
||||
@ -86,7 +90,7 @@ public class Ship : NetworkBehaviour
|
||||
// TODO: This belongs in the state object
|
||||
newZone = forceManager.GetZoneOfInstance(InstanceID);
|
||||
// TODO: This could be more elegant maybe?
|
||||
if (MatchManager.G.matchState != MatchState.Match)
|
||||
if (MatchManager.G.matchState != MatchState.Match || state.IsFrozen)
|
||||
{
|
||||
body.constraints = RigidbodyConstraints.FreezeAll;
|
||||
UpdateSounds();
|
||||
@ -115,7 +119,8 @@ public class Ship : NetworkBehaviour
|
||||
transform.Rotate(0, 0, -props.steerVelocity * state.steerInput * Time.deltaTime);
|
||||
|
||||
// Get and apply the current Gravity
|
||||
state.currentGravity = forceManager.GetGravityForInstance(InstanceID)(transform);
|
||||
Transform gravitySource = forceManager.GetGravitySourceForInstance(InstanceID);
|
||||
state.currentGravity = forceManager.GetGravityForInstance(InstanceID)(gravitySource, transform);
|
||||
body.AddForce(state.currentGravity, ForceMode.Acceleration);
|
||||
|
||||
float stunFactor = isCriticalTackle ? props.stunLooseControlFactor : 1f;
|
||||
@ -337,7 +342,7 @@ public class Ship : NetworkBehaviour
|
||||
|
||||
void UpdateSounds()
|
||||
{
|
||||
if (MatchManager.G.matchState != MatchState.Match)
|
||||
if (MatchManager.G.matchState != MatchState.Match || state.IsFrozen)
|
||||
{
|
||||
|
||||
if (newZone != zone
|
||||
@ -346,6 +351,8 @@ public class Ship : NetworkBehaviour
|
||||
AudioManager.G.BroadcastAudioEffect(AudioEffects.LowPass, transform, false);
|
||||
}
|
||||
ThrusterSound.StopAudio();
|
||||
gravityEffect.Clear();
|
||||
gravityEffect.Stop();
|
||||
return;
|
||||
}
|
||||
float velocityFactor = math.smoothstep(0, props.absolutMaxVelocity, body.velocity.magnitude);
|
||||
@ -354,18 +361,29 @@ public class Ship : NetworkBehaviour
|
||||
ThrusterSound.PlayAudio(true);
|
||||
|
||||
ThrusterSound.ChangePitch(velocityFactor);
|
||||
if (!jetFlameEffect.isPlaying)
|
||||
jetFlameEffect.Play();
|
||||
}
|
||||
else
|
||||
{
|
||||
ThrusterSound.FadeOutAudio(0.3f);
|
||||
jetFlameEffect.Stop();
|
||||
}
|
||||
if (IsBoosting())
|
||||
{
|
||||
if (!boostEffect.isPlaying)
|
||||
boostEffect.Play();
|
||||
if (!smokeTrailEffect.isPlaying)
|
||||
smokeTrailEffect.Play();
|
||||
if (jetFlameEffect.isPlaying)
|
||||
jetFlameEffect.transform.localScale = new Vector3(1.3f, 2, 1);
|
||||
BoosterSound.PlayAudio(false, true);
|
||||
}
|
||||
else
|
||||
{
|
||||
BoosterSound.ResetOneShot();
|
||||
smokeTrailEffect.Stop();
|
||||
jetFlameEffect.transform.localScale = new Vector3(1.3f, 1, 1);
|
||||
}
|
||||
if (isTackled && !isCriticalTackle)
|
||||
{
|
||||
@ -397,6 +415,27 @@ public class Ship : NetworkBehaviour
|
||||
AudioManager.G.BroadcastAudioEffect(AudioEffects.LowPass, transform, false);
|
||||
}
|
||||
}
|
||||
|
||||
if (gravityEffect == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
if (!gravityEffect.isPlaying && state.currentGravity != Vector3.zero)
|
||||
{
|
||||
gravityEffect.Play();
|
||||
}
|
||||
else if (state.currentGravity == Vector3.zero)
|
||||
{
|
||||
gravityEffect.Stop();
|
||||
}
|
||||
if (gravityEffect.isPlaying)
|
||||
{
|
||||
float gravityAngle =
|
||||
Vector3.SignedAngle(transform.parent.up, state.currentGravity, transform.forward);
|
||||
gravityEffect.gameObject.transform.localEulerAngles =
|
||||
new Vector3(0, 0, gravityAngle - transform.localEulerAngles.z);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -13,6 +13,7 @@ namespace ShipHandling
|
||||
// Saves the current input for steering
|
||||
public float steerInput = 0;
|
||||
public Vector3 currentGravity = new Vector3();
|
||||
public bool IsFrozen = false;
|
||||
public bool reset = false;
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user