Compare commits

...

5 Commits

71 changed files with 8405 additions and 943 deletions

View File

@ -1 +0,0 @@
{"asset":{"generator":"3D Builder","version":"2.0"},"scene":0,"scenes":[{"nodes":[0]}],"nodes":[{"children":[1,2]},{"mesh":0,"matrix":[1,0,0,0,0,-1.1920928955078125E-7,-0.99999988079071045,0,0,0.99999988079071045,-1.1920928955078125E-7,0,0,0,0,1]},{"mesh":1,"matrix":[37.501873016357422,0,0,0,0,-2.9802320611338473E-8,-0.24999995529651642,0,0,2.5001249313354492,-2.9803814527440409E-7,0,-0.75,-0.050000172108411789,-1.4842503070831299,1]}],"meshes":[{"primitives":[{"attributes":{"POSITION":0,"COLOR_0":1},"mode":4,"indices":2}]},{"primitives":[{"attributes":{"POSITION":3,"COLOR_0":4},"mode":4,"indices":5}]}],"accessors":[{"bufferView":0,"byteOffset":0,"count":60,"componentType":5126,"type":"VEC3","min":[-0.75,-0.0050000823102891445,-0.050000004470348358],"max":[0.74999988079071045,1.4950000047683716,0.050000008195638657]},{"bufferView":1,"byteOffset":0,"count":60,"componentType":5121,"type":"VEC4","normalized":true},{"bufferView":2,"byteOffset":0,"count":396,"componentType":5125,"type":"SCALAR"},{"bufferView":3,"byteOffset":0,"count":8,"componentType":5126,"type":"VEC3","min":[0,0.042998004704713821,0],"max":[0.039998002350330353,0.082998007535934448,0.039998002350330353]},{"bufferView":4,"byteOffset":0,"count":8,"componentType":5121,"type":"VEC4","normalized":true},{"bufferView":5,"byteOffset":0,"count":36,"componentType":5125,"type":"SCALAR"}],"bufferViews":[{"buffer":0,"byteOffset":0,"byteLength":720,"byteStride":12,"target":34962},{"buffer":0,"byteOffset":720,"byteLength":240,"byteStride":4,"target":34962},{"buffer":0,"byteOffset":960,"byteLength":1584,"target":34963},{"buffer":0,"byteOffset":2544,"byteLength":96,"byteStride":12,"target":34962},{"buffer":0,"byteOffset":2640,"byteLength":32,"byteStride":4,"target":34962},{"buffer":0,"byteOffset":2672,"byteLength":144,"target":34963}],"buffers":[{"byteLength":2816,"uri":"PlayZoneBoundary.bin"}]}

View File

@ -1,30 +0,0 @@
fileFormatVersion: 2
guid: 303177f7648454b4fb8179c1378dd1ec
ScriptedImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 2
userData:
assetBundleName:
assetBundleVariant:
script: {fileID: 11500000, guid: 715df9372183c47e389bb6e19fbc3b52, type: 3}
editorImportSettings:
generateSecondaryUVSet: 0
importSettings:
nodeNameMethod: 1
animationMethod: 2
generateMipMaps: 1
defaultMinFilterMode: 9729
defaultMagFilterMode: 9729
anisotropicFilterLevel: 1
instantiationSettings:
mask: -1
layer: 0
skinUpdateWhenOffscreen: 1
lightIntensityFactor: 1
sceneObjectCreation: 2
assetDependencies:
- type: 0
originalUri: Assets\Models\PlayZoneBoundary.bin
assetPath: Assets\Models\PlayZoneBoundary.bin
reportItems: []

View File

@ -0,0 +1,404 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &551100566387153260
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 862753917776835266}
- component: {fileID: 5337943476707260304}
- component: {fileID: 4145761472153807480}
m_Layer: 3
m_Name: Boundary
m_TagString: Zone
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &862753917776835266
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 551100566387153260}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -30, y: -230, z: 0}
m_LocalScale: {x: 25, y: 25, z: 10}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 3396436307112790999}
- {fileID: 2972840706097564180}
- {fileID: 8356010023262939189}
- {fileID: 5225772388094833250}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!65 &5337943476707260304
BoxCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 551100566387153260}
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_IsTrigger: 1
m_ProvidesContacts: 0
m_Enabled: 1
serializedVersion: 3
m_Size: {x: 10, y: 10.2, z: 2}
m_Center: {x: 0.4, y: 5.4, z: 0}
--- !u!114 &4145761472153807480
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 551100566387153260}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 11d0b965686c4cc49b5f0339ff3988fa, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1 &2701742657086728415
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 8356010023262939189}
- component: {fileID: 5276596017173827510}
- component: {fileID: 4414849729417614509}
m_Layer: 3
m_Name: Cube (2)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &8356010023262939189
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2701742657086728415}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071068}
m_LocalPosition: {x: -4.500002, y: 5.300005, z: -0.000014424324}
m_LocalScale: {x: 10, y: 0.2, z: 2}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 862753917776835266}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90}
--- !u!33 &5276596017173827510
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2701742657086728415}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &4414849729417614509
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2701742657086728415}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 7eabcb56a49cb66459032465eb9a5680, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &3944685724959384569
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2972840706097564180}
- component: {fileID: 5802947760237709885}
- component: {fileID: 4561338139912657352}
m_Layer: 3
m_Name: Cube (1)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &2972840706097564180
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3944685724959384569}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0.7071068, w: 0.7071068}
m_LocalPosition: {x: 5.2999983, y: 5.3000054, z: -0.000010616146}
m_LocalScale: {x: 10, y: 0.2, z: 2}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 862753917776835266}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 90}
--- !u!33 &5802947760237709885
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3944685724959384569}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &4561338139912657352
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3944685724959384569}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 7eabcb56a49cb66459032465eb9a5680, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &4673432593052644708
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5225772388094833250}
- component: {fileID: 3413694222450387413}
- component: {fileID: 7599617438107390053}
m_Layer: 3
m_Name: Cube (3)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &5225772388094833250
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4673432593052644708}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0.39999756, y: 10.400005, z: -0.000014901161}
m_LocalScale: {x: 10, y: 0.2, z: 2}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 862753917776835266}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &3413694222450387413
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4673432593052644708}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &7599617438107390053
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4673432593052644708}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 7eabcb56a49cb66459032465eb9a5680, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1 &6169667348688564901
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 3396436307112790999}
- component: {fileID: 3386264321274957653}
- component: {fileID: 4229992393703176985}
m_Layer: 3
m_Name: Cube
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &3396436307112790999
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6169667348688564901}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0.39999878, y: 0.20000465, z: -0.000013768673}
m_LocalScale: {x: 10, y: 0.2, z: 2}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 862753917776835266}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &3386264321274957653
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6169667348688564901}
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &4229992393703176985
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6169667348688564901}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 7eabcb56a49cb66459032465eb9a5680, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: ba5e751e3364d7842b6529a2e8435e76
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: fa6fb11e8d54f60449c0897cec7a4fe1
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -29,7 +29,7 @@ Transform:
serializedVersion: 2 serializedVersion: 2
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_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 3, y: 3, z: 3} m_LocalScale: {x: 5, y: 5, z: 5}
m_ConstrainProportionsScale: 1 m_ConstrainProportionsScale: 1
m_Children: m_Children:
- {fileID: 4274613733215928132} - {fileID: 4274613733215928132}
@ -77,7 +77,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 42bb47879381c4f498a115b2b84b191a, type: 3} m_Script: {fileID: 11500000, guid: 42bb47879381c4f498a115b2b84b191a, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
ForcesManager: {fileID: 0}
RenderedZoneObject: {fileID: 3847966118592310179} RenderedZoneObject: {fileID: 3847966118592310179}
GravityEffect: {fileID: 2798249376021352391} GravityEffect: {fileID: 2798249376021352391}
GravityColors: GravityColors:
@ -91,86 +90,122 @@ MonoBehaviour:
color: {r: 0.25471687, g: 0.77203095, b: 1, a: 0.3529412} color: {r: 0.25471687, g: 0.77203095, b: 1, a: 0.3529412}
- gravity: 4 - gravity: 4
color: {r: 1, g: 0.4656382, b: 0.2471698, a: 0.3529412} color: {r: 1, g: 0.4656382, b: 0.2471698, a: 0.3529412}
_gravity: 0 _gravity: 4
--- !u!1001 &4147390443820438502 --- !u!1 &3847966118592310177
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 5300185106086715317}
m_Modifications:
- target: {fileID: 930210402018179143, guid: 42641a1e05f4e084bae7d69b644dfd81, type: 3}
propertyPath: m_Name
value: Nimble Zone Sphere
objectReference: {fileID: 0}
- target: {fileID: 930210402018337895, guid: 42641a1e05f4e084bae7d69b644dfd81, type: 3}
propertyPath: m_LocalScale.x
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 930210402018337895, guid: 42641a1e05f4e084bae7d69b644dfd81, type: 3}
propertyPath: m_LocalScale.y
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 930210402018337895, guid: 42641a1e05f4e084bae7d69b644dfd81, type: 3}
propertyPath: m_LocalScale.z
value: 0.5
objectReference: {fileID: 0}
- target: {fileID: 930210402018337895, guid: 42641a1e05f4e084bae7d69b644dfd81, type: 3}
propertyPath: m_LocalPosition.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: 930210402018337895, guid: 42641a1e05f4e084bae7d69b644dfd81, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 930210402018337895, guid: 42641a1e05f4e084bae7d69b644dfd81, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 930210402018337895, guid: 42641a1e05f4e084bae7d69b644dfd81, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 930210402018337895, guid: 42641a1e05f4e084bae7d69b644dfd81, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 930210402018337895, guid: 42641a1e05f4e084bae7d69b644dfd81, type: 3}
propertyPath: m_LocalRotation.y
value: -0
objectReference: {fileID: 0}
- target: {fileID: 930210402018337895, guid: 42641a1e05f4e084bae7d69b644dfd81, type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: 930210402018337895, guid: 42641a1e05f4e084bae7d69b644dfd81, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 930210402018337895, guid: 42641a1e05f4e084bae7d69b644dfd81, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 930210402018337895, guid: 42641a1e05f4e084bae7d69b644dfd81, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 42641a1e05f4e084bae7d69b644dfd81, type: 3}
--- !u!4 &3847966118591952769 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 930210402018337895, guid: 42641a1e05f4e084bae7d69b644dfd81, type: 3}
m_PrefabInstance: {fileID: 4147390443820438502}
m_PrefabAsset: {fileID: 0}
--- !u!1 &3847966118592310179 stripped
GameObject: GameObject:
m_CorrespondingSourceObject: {fileID: 930210402018179141, guid: 42641a1e05f4e084bae7d69b644dfd81, type: 3} m_ObjectHideFlags: 0
m_PrefabInstance: {fileID: 4147390443820438502} m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 3847966118591952769}
m_Layer: 0
m_Name: Nimble Zone Sphere
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &3847966118591952769
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3847966118592310177}
serializedVersion: 2
m_LocalRotation: {x: 0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: -0, y: 0, z: 0}
m_LocalScale: {x: 0.5, y: 0.5, z: 0.5}
m_ConstrainProportionsScale: 1
m_Children:
- {fileID: 3847966118591952771}
m_Father: {fileID: 5300185106086715317}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &3847966118592310179
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 3847966118591952771}
- component: {fileID: 3847966118591149987}
- component: {fileID: 3847966118590051683}
m_Layer: 0
m_Name: HighPolySphere
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &3847966118591952771
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3847966118592310179}
serializedVersion: 2
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_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 3847966118591952769}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &3847966118591149987
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3847966118592310179}
m_Mesh: {fileID: 4300000, guid: fc5f274d483f9d24b95d2f4a7eb88be9, type: 3}
--- !u!23 &3847966118590051683
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3847966118592310179}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 5cddff495cc77524d991f9778fba844a, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!1001 &7276724944824422886 --- !u!1001 &7276724944824422886
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -221,11 +256,11 @@ PrefabInstance:
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 4767480441459301921, guid: 9615c7fd8e252c145b562238bcfc1b23, type: 3} - target: {fileID: 4767480441459301921, guid: 9615c7fd8e252c145b562238bcfc1b23, type: 3}
propertyPath: ShapeModule.radius.value propertyPath: ShapeModule.radius.value
value: 1.5 value: 3
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 4767480441459301921, guid: 9615c7fd8e252c145b562238bcfc1b23, type: 3} - target: {fileID: 4767480441459301921, guid: 9615c7fd8e252c145b562238bcfc1b23, type: 3}
propertyPath: ShapeModule.radiusThickness propertyPath: ShapeModule.radiusThickness
value: 0.1 value: 0.2
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 4767480441459301921, guid: 9615c7fd8e252c145b562238bcfc1b23, type: 3} - target: {fileID: 4767480441459301921, guid: 9615c7fd8e252c145b562238bcfc1b23, type: 3}
propertyPath: VelocityModule.inWorldSpace propertyPath: VelocityModule.inWorldSpace
@ -239,17 +274,21 @@ PrefabInstance:
propertyPath: InitialModule.maxNumParticles propertyPath: InitialModule.maxNumParticles
value: 80 value: 80
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 4767480441459301921, guid: 9615c7fd8e252c145b562238bcfc1b23, type: 3}
propertyPath: InitialModule.startSize.scalar
value: 1
objectReference: {fileID: 0}
- target: {fileID: 4767480441459301921, guid: 9615c7fd8e252c145b562238bcfc1b23, type: 3} - target: {fileID: 4767480441459301921, guid: 9615c7fd8e252c145b562238bcfc1b23, type: 3}
propertyPath: VelocityModule.orbitalX.scalar propertyPath: VelocityModule.orbitalX.scalar
value: 0.1 value: 0
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 4767480441459301921, guid: 9615c7fd8e252c145b562238bcfc1b23, type: 3} - target: {fileID: 4767480441459301921, guid: 9615c7fd8e252c145b562238bcfc1b23, type: 3}
propertyPath: VelocityModule.orbitalY.scalar propertyPath: VelocityModule.orbitalY.scalar
value: 0.1 value: 0
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 4767480441459301921, guid: 9615c7fd8e252c145b562238bcfc1b23, type: 3} - target: {fileID: 4767480441459301921, guid: 9615c7fd8e252c145b562238bcfc1b23, type: 3}
propertyPath: VelocityModule.orbitalZ.scalar propertyPath: VelocityModule.orbitalZ.scalar
value: 0.1 value: 0
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 4767480441459301921, guid: 9615c7fd8e252c145b562238bcfc1b23, type: 3} - target: {fileID: 4767480441459301921, guid: 9615c7fd8e252c145b562238bcfc1b23, type: 3}
propertyPath: InitialModule.startSpeed.scalar propertyPath: InitialModule.startSpeed.scalar
@ -261,7 +300,7 @@ PrefabInstance:
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 4767480441459301921, guid: 9615c7fd8e252c145b562238bcfc1b23, type: 3} - target: {fileID: 4767480441459301921, guid: 9615c7fd8e252c145b562238bcfc1b23, type: 3}
propertyPath: InitialModule.startLifetime.scalar propertyPath: InitialModule.startLifetime.scalar
value: 1 value: 1.5
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 4767480441459301921, guid: 9615c7fd8e252c145b562238bcfc1b23, type: 3} - target: {fileID: 4767480441459301921, guid: 9615c7fd8e252c145b562238bcfc1b23, type: 3}
propertyPath: VelocityModule.speedModifier.scalar propertyPath: VelocityModule.speedModifier.scalar

View File

@ -10,6 +10,7 @@ GameObject:
m_Component: m_Component:
- component: {fileID: 1030948336149387811} - component: {fileID: 1030948336149387811}
- component: {fileID: 5960278131317783145} - component: {fileID: 5960278131317783145}
- component: {fileID: 9020502532674983852}
m_Layer: 0 m_Layer: 0
m_Name: UIManager m_Name: UIManager
m_TagString: Untagged m_TagString: Untagged
@ -44,3 +45,19 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 547ca5863fe736e428968ffbeaddc0f2, type: 3} m_Script: {fileID: 11500000, guid: 547ca5863fe736e428968ffbeaddc0f2, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
OffScreenManager: {fileID: 9020502532674983852}
MatchMusic: {fileID: 0}
--- !u!114 &9020502532674983852
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3887031022702914267}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 2a453b9260772e8488c230aa7eeca5ff, type: 3}
m_Name:
m_EditorClassIdentifier:
Targets: []
IndicatorPrefab: {fileID: 5312737329671837370, guid: fac9d84719a43574f9cfbc19b53aee98, type: 3}

View File

@ -92,12 +92,12 @@ MonoBehaviour:
zone: 0 zone: 0
rippleFrequency: 12 rippleFrequency: 12
rippleDensity: 14 rippleDensity: 14
rippleAmplitude: 0.1 rippleAmplitude: 0.05
rippleRadius: 1.62 rippleRadius: 1.62
rippleDuration: 1.2 rippleDuration: 2
impactVelocityModifier: 1 impactVelocityModifier: 1
minImpact: 0.5 minImpact: 0.4
maxVelocity: 70 maxVelocity: 100
--- !u!1001 &4415206198913254025 --- !u!1001 &4415206198913254025
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -165,7 +165,7 @@ PrefabInstance:
- target: {fileID: -7635826562936255635, guid: 24300c11f962a8e4f9f8125bd2843705, type: 3} - target: {fileID: -7635826562936255635, guid: 24300c11f962a8e4f9f8125bd2843705, type: 3}
propertyPath: m_Materials.Array.data[0] propertyPath: m_Materials.Array.data[0]
value: value:
objectReference: {fileID: 2100000, guid: 78cb0d90576fe15439f3fd294d5eaaba, type: 2} objectReference: {fileID: 2100000, guid: 1338539d65504394f8f2dd0a628dc423, type: 2}
- target: {fileID: 919132149155446097, guid: 24300c11f962a8e4f9f8125bd2843705, type: 3} - target: {fileID: 919132149155446097, guid: 24300c11f962a8e4f9f8125bd2843705, type: 3}
propertyPath: m_Name propertyPath: m_Name
value: Hex Sphere value: Hex Sphere

View File

@ -67,6 +67,8 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
tackleKind: 2 tackleKind: 2
hitKind: 1
OwnerId: 0
--- !u!1 &824086104227363207 --- !u!1 &824086104227363207
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -111,7 +113,7 @@ GameObject:
- component: {fileID: 8073551614022217321} - component: {fileID: 8073551614022217321}
m_Layer: 6 m_Layer: 6
m_Name: Wing Spike Left m_Name: Wing Spike Left
m_TagString: Bumper m_TagString: Spike
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@ -165,6 +167,8 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
tackleKind: 3 tackleKind: 3
hitKind: 1
OwnerId: 0
--- !u!1 &1349367779684097889 --- !u!1 &1349367779684097889
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -234,6 +238,8 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
tackleKind: 1 tackleKind: 1
hitKind: 1
OwnerId: 0
--- !u!1 &1372816401649438144 --- !u!1 &1372816401649438144
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -280,6 +286,7 @@ Transform:
- {fileID: 7971143227516595385} - {fileID: 7971143227516595385}
- {fileID: 3078445893664878222} - {fileID: 3078445893664878222}
- {fileID: 6780256004419462580} - {fileID: 6780256004419462580}
- {fileID: 5050929403426359679}
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!54 &112616906359525181 --- !u!54 &112616906359525181
@ -294,7 +301,7 @@ Rigidbody:
m_Drag: 0 m_Drag: 0
m_AngularDrag: 1e+38 m_AngularDrag: 1e+38
m_CenterOfMass: {x: 0, y: 1, z: 0} m_CenterOfMass: {x: 0, y: 1, z: 0}
m_InertiaTensor: {x: 1, y: 1, z: 1} m_InertiaTensor: {x: 0, y: 0, z: 0}
m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1} m_InertiaRotation: {x: 0, y: 0, z: 0, w: 1}
m_IncludeLayers: m_IncludeLayers:
serializedVersion: 2 serializedVersion: 2
@ -319,10 +326,10 @@ BoxCollider:
m_Material: {fileID: 0} m_Material: {fileID: 0}
m_IncludeLayers: m_IncludeLayers:
serializedVersion: 2 serializedVersion: 2
m_Bits: 8 m_Bits: 9
m_ExcludeLayers: m_ExcludeLayers:
serializedVersion: 2 serializedVersion: 2
m_Bits: 503 m_Bits: 480
m_LayerOverridePriority: 0 m_LayerOverridePriority: 0
m_IsTrigger: 0 m_IsTrigger: 0
m_ProvidesContacts: 0 m_ProvidesContacts: 0
@ -348,8 +355,9 @@ MonoBehaviour:
GravityEffect: {fileID: 4872706334040053047} GravityEffect: {fileID: 4872706334040053047}
JetFlameEffect: {fileID: 4832079438170929303} JetFlameEffect: {fileID: 4832079438170929303}
SmokeTrailEffect: {fileID: 3500843490324877803} SmokeTrailEffect: {fileID: 3500843490324877803}
FireController: {fileID: 6551228186126772357} DamageParticleEffect: {fileID: 8926071544545039189}
BodyMeshRenderer: {fileID: 8803443673514485770} BodyMeshRenderer: {fileID: 8803443673514485770}
_body: {fileID: 0}
--- !u!114 &6551228186126772357 --- !u!114 &6551228186126772357
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -365,7 +373,7 @@ MonoBehaviour:
TurretSocket: TurretSocket:
- {fileID: 982896938032841241} - {fileID: 982896938032841241}
ShellParticles: [] ShellParticles: []
DefaultFXType: 4 SelectedWeaponEffect: 0
vulcanProjectile: {fileID: 400000, guid: e496166a742ada640b89650ebebbd052, type: 3} vulcanProjectile: {fileID: 400000, guid: e496166a742ada640b89650ebebbd052, type: 3}
vulcanMuzzle: {fileID: 400002, guid: ca6dec307275d294ba519247d04b6733, type: 3} vulcanMuzzle: {fileID: 400002, guid: ca6dec307275d294ba519247d04b6733, type: 3}
vulcanImpact: {fileID: 400000, guid: bfa7781c328a236468eda51a8ae2be55, type: 3} vulcanImpact: {fileID: 400000, guid: bfa7781c328a236468eda51a8ae2be55, type: 3}
@ -375,6 +383,7 @@ MonoBehaviour:
soloGunMuzzle: {fileID: 400000, guid: b16d97c287e513344af2399ff138cd27, type: 3} soloGunMuzzle: {fileID: 400000, guid: b16d97c287e513344af2399ff138cd27, type: 3}
soloGunImpact: {fileID: 400004, guid: fd953838f1872d042a334b466e298967, type: 3} soloGunImpact: {fileID: 400004, guid: fd953838f1872d042a334b466e298967, type: 3}
soloGunOffset: 0 soloGunOffset: 0
SoloGunFireRate: 0.3
sniperBeam: {fileID: 400000, guid: 12e7c1b739173c946b6fa3d40e9f62d1, type: 3} sniperBeam: {fileID: 400000, guid: 12e7c1b739173c946b6fa3d40e9f62d1, type: 3}
sniperMuzzle: {fileID: 400004, guid: 43a8e47b31adb9a47b81c4653b412e5c, type: 3} sniperMuzzle: {fileID: 400004, guid: 43a8e47b31adb9a47b81c4653b412e5c, type: 3}
sniperImpact: {fileID: 400004, guid: a980d2b7788c0ef489f3c79f44da79e1, type: 3} sniperImpact: {fileID: 400004, guid: a980d2b7788c0ef489f3c79f44da79e1, type: 3}
@ -387,10 +396,12 @@ MonoBehaviour:
seekerMuzzle: {fileID: 400004, guid: 235092330dd93ce4ab3f64b4b4b9c354, type: 3} seekerMuzzle: {fileID: 400004, guid: 235092330dd93ce4ab3f64b4b4b9c354, type: 3}
seekerImpact: {fileID: 400010, guid: 25381a5e43841e943a27b043442b2b4d, type: 3} seekerImpact: {fileID: 400010, guid: 25381a5e43841e943a27b043442b2b4d, type: 3}
seekerOffset: 0 seekerOffset: 0
SeekerFireRate: 0.5
railgunBeam: {fileID: 400000, guid: ec0fb8bef2fb8a5459c55c3700521b70, type: 3} railgunBeam: {fileID: 400000, guid: ec0fb8bef2fb8a5459c55c3700521b70, type: 3}
railgunMuzzle: {fileID: 400000, guid: b16d97c287e513344af2399ff138cd27, type: 3} railgunMuzzle: {fileID: 400000, guid: b16d97c287e513344af2399ff138cd27, type: 3}
railgunImpact: {fileID: 400010, guid: 2e92e894e0311c14c87f9544b2c88693, type: 3} railgunImpact: {fileID: 400010, guid: 2e92e894e0311c14c87f9544b2c88693, type: 3}
railgunOffset: 0 railgunOffset: 0
RailGunFireRate: 1
plasmagunProjectile: {fileID: 400000, guid: e7b84dec6cdbfb646a33fd06b85cf64e, type: 3} plasmagunProjectile: {fileID: 400000, guid: e7b84dec6cdbfb646a33fd06b85cf64e, type: 3}
plasmagunMuzzle: {fileID: 400002, guid: e4aff98840a58c94ea1cec28789d55d6, type: 3} plasmagunMuzzle: {fileID: 400002, guid: e4aff98840a58c94ea1cec28789d55d6, type: 3}
plasmagunImpact: {fileID: 400004, guid: ec543be1efaafca46aeac6f66e7a5ff0, type: 3} plasmagunImpact: {fileID: 400004, guid: ec543be1efaafca46aeac6f66e7a5ff0, type: 3}
@ -407,6 +418,7 @@ MonoBehaviour:
laserImpulseMuzzle: {fileID: 400004, guid: 45116fb1512dc704b99d70267628129a, type: 3} laserImpulseMuzzle: {fileID: 400004, guid: 45116fb1512dc704b99d70267628129a, type: 3}
laserImpulseImpact: {fileID: 400010, guid: ce59e020d922ccb43866dee1ba26a673, type: 3} laserImpulseImpact: {fileID: 400010, guid: ce59e020d922ccb43866dee1ba26a673, type: 3}
laserImpulseOffset: 0 laserImpulseOffset: 0
LaserImpulseFireRate: 0.08
--- !u!1 &2236297877709258492 --- !u!1 &2236297877709258492
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -476,6 +488,8 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
tackleKind: 1 tackleKind: 1
hitKind: 1
OwnerId: 0
--- !u!1 &5993886774677081169 --- !u!1 &5993886774677081169
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -599,6 +613,8 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
tackleKind: 0 tackleKind: 0
hitKind: 1
OwnerId: 0
--- !u!1 &7841776443744888956 --- !u!1 &7841776443744888956
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -612,7 +628,7 @@ GameObject:
- component: {fileID: 2043393111525899212} - component: {fileID: 2043393111525899212}
m_Layer: 6 m_Layer: 6
m_Name: Wing Spike Right m_Name: Wing Spike Right
m_TagString: Bumper m_TagString: Spike
m_Icon: {fileID: 0} m_Icon: {fileID: 0}
m_NavMeshLayer: 0 m_NavMeshLayer: 0
m_StaticEditorFlags: 0 m_StaticEditorFlags: 0
@ -666,6 +682,8 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
tackleKind: 3 tackleKind: 3
hitKind: 1
OwnerId: 0
--- !u!1001 &123332957444049686 --- !u!1001 &123332957444049686
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -678,6 +696,10 @@ PrefabInstance:
propertyPath: m_Name propertyPath: m_Name
value: Gravity Line Particles value: Gravity Line Particles
objectReference: {fileID: 0} objectReference: {fileID: 0}
- target: {fileID: 5747506880537754056, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
propertyPath: m_IsActive
value: 1
objectReference: {fileID: 0}
- target: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3} - target: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
propertyPath: m_LocalPosition.x propertyPath: m_LocalPosition.x
value: 0.21 value: 0.21
@ -733,6 +755,124 @@ Transform:
m_CorrespondingSourceObject: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3} m_CorrespondingSourceObject: {fileID: 6894558316197621410, guid: 5075d8b26bc537c439b56964f382020e, type: 3}
m_PrefabInstance: {fileID: 123332957444049686} m_PrefabInstance: {fileID: 123332957444049686}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
--- !u!1001 &229984214571457430
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 1483206452300237684}
m_Modifications:
- target: {fileID: 100000, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: m_Name
value: Explosion_004
objectReference: {fileID: 0}
- target: {fileID: 100000, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400000, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: m_LocalPosition.x
value: -0.19
objectReference: {fileID: 0}
- target: {fileID: 400000, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: m_LocalPosition.y
value: 10
objectReference: {fileID: 0}
- target: {fileID: 400000, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: m_LocalPosition.z
value: -2.33
objectReference: {fileID: 0}
- target: {fileID: 400000, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 400000, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400000, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400000, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400000, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400000, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 400000, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 19800000, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: looping
value: 0
objectReference: {fileID: 0}
- target: {fileID: 19800000, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: playOnAwake
value: 0
objectReference: {fileID: 0}
- target: {fileID: 19800002, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: playOnAwake
value: 0
objectReference: {fileID: 0}
- target: {fileID: 19800004, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: playOnAwake
value: 0
objectReference: {fileID: 0}
- target: {fileID: 19800006, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: playOnAwake
value: 0
objectReference: {fileID: 0}
- target: {fileID: 19800008, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: playOnAwake
value: 0
objectReference: {fileID: 0}
- target: {fileID: 19800010, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: playOnAwake
value: 0
objectReference: {fileID: 0}
- target: {fileID: 19900000, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: m_Materials.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 19900002, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: m_Materials.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 19900004, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: m_Materials.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 19900006, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: m_Materials.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 19900008, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: m_Materials.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 19900010, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
propertyPath: m_Materials.Array.size
value: 1
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
--- !u!4 &229984214571581718 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 400000, guid: 5c66aaebaed6ae54183b4e93cfbc6397, type: 3}
m_PrefabInstance: {fileID: 229984214571457430}
m_PrefabAsset: {fileID: 0}
--- !u!1001 &754241372986275310 --- !u!1001 &754241372986275310
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -891,7 +1031,11 @@ PrefabInstance:
- target: {fileID: -1642744634756266859, guid: 40527c707fffde84c99533c25bbcd8cd, type: 3} - target: {fileID: -1642744634756266859, guid: 40527c707fffde84c99533c25bbcd8cd, type: 3}
propertyPath: m_Materials.Array.data[1] propertyPath: m_Materials.Array.data[1]
value: value:
objectReference: {fileID: -876546973899608171, guid: 894e255bca895714c929238ea0e6273f, type: 3} objectReference: {fileID: 2100000, guid: 639bed6bda2055648971726bd8332cdd, type: 2}
- target: {fileID: -1642744634756266859, guid: 40527c707fffde84c99533c25bbcd8cd, type: 3}
propertyPath: m_Materials.Array.data[2]
value:
objectReference: {fileID: 2100000, guid: 639bed6bda2055648971726bd8332cdd, type: 2}
- target: {fileID: 919132149155446097, guid: 40527c707fffde84c99533c25bbcd8cd, type: 3} - target: {fileID: 919132149155446097, guid: 40527c707fffde84c99533c25bbcd8cd, type: 3}
propertyPath: m_Name propertyPath: m_Name
value: Spaceship9 value: Spaceship9
@ -914,7 +1058,10 @@ PrefabInstance:
objectReference: {fileID: 0} objectReference: {fileID: 0}
m_RemovedComponents: [] m_RemovedComponents: []
m_RemovedGameObjects: [] m_RemovedGameObjects: []
m_AddedGameObjects: [] m_AddedGameObjects:
- targetCorrespondingSourceObject: {fileID: -8679921383154817045, guid: 40527c707fffde84c99533c25bbcd8cd, type: 3}
insertIndex: 0
addedObject: {fileID: 229984214571581718}
m_AddedComponents: [] m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 40527c707fffde84c99533c25bbcd8cd, type: 3} m_SourcePrefab: {fileID: 100100000, guid: 40527c707fffde84c99533c25bbcd8cd, type: 3}
--- !u!4 &1483206452300237684 stripped --- !u!4 &1483206452300237684 stripped
@ -1061,3 +1208,88 @@ Transform:
m_CorrespondingSourceObject: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3} m_CorrespondingSourceObject: {fileID: 1163423376577002641, guid: 98bf6d3624da8d54fbe33787e003ef60, type: 3}
m_PrefabInstance: {fileID: 3400143175839768829} m_PrefabInstance: {fileID: 3400143175839768829}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
--- !u!1001 &5129966346685213162
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 5042970769659716555}
m_Modifications:
- target: {fileID: 83823186229895317, guid: fa6fb11e8d54f60449c0897cec7a4fe1, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 83823186229895317, guid: fa6fb11e8d54f60449c0897cec7a4fe1, type: 3}
propertyPath: m_LocalPosition.y
value: 0.89
objectReference: {fileID: 0}
- target: {fileID: 83823186229895317, guid: fa6fb11e8d54f60449c0897cec7a4fe1, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 83823186229895317, guid: fa6fb11e8d54f60449c0897cec7a4fe1, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 83823186229895317, guid: fa6fb11e8d54f60449c0897cec7a4fe1, type: 3}
propertyPath: m_LocalRotation.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: 83823186229895317, guid: fa6fb11e8d54f60449c0897cec7a4fe1, type: 3}
propertyPath: m_LocalRotation.y
value: -0
objectReference: {fileID: 0}
- target: {fileID: 83823186229895317, guid: fa6fb11e8d54f60449c0897cec7a4fe1, type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: 83823186229895317, guid: fa6fb11e8d54f60449c0897cec7a4fe1, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 83823186229895317, guid: fa6fb11e8d54f60449c0897cec7a4fe1, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 83823186229895317, guid: fa6fb11e8d54f60449c0897cec7a4fe1, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1433869235799878920, guid: fa6fb11e8d54f60449c0897cec7a4fe1, type: 3}
propertyPath: InitialModule.startSize.scalar
value: 4
objectReference: {fileID: 0}
- target: {fileID: 1688142635078887856, guid: fa6fb11e8d54f60449c0897cec7a4fe1, type: 3}
propertyPath: m_Name
value: Damage Number Particles
objectReference: {fileID: 0}
- target: {fileID: 8942704905475208125, guid: fa6fb11e8d54f60449c0897cec7a4fe1, type: 3}
propertyPath: m_LocalPosition.x
value: 9.68
objectReference: {fileID: 0}
- target: {fileID: 8998653663058390184, guid: fa6fb11e8d54f60449c0897cec7a4fe1, type: 3}
propertyPath: orthographic size
value: 1.5
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: fa6fb11e8d54f60449c0897cec7a4fe1, type: 3}
--- !u!4 &5050929403426359679 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 83823186229895317, guid: fa6fb11e8d54f60449c0897cec7a4fe1, type: 3}
m_PrefabInstance: {fileID: 5129966346685213162}
m_PrefabAsset: {fileID: 0}
--- !u!114 &8926071544545039189 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 4390600555810339519, guid: fa6fb11e8d54f60449c0897cec7a4fe1, type: 3}
m_PrefabInstance: {fileID: 5129966346685213162}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 7f5b9ad63738dc8438abe06fa4b82dc1, type: 3}
m_Name:
m_EditorClassIdentifier:

View File

@ -0,0 +1,331 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &1337882146590176534
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7721777578780221932}
- component: {fileID: 1599848587567185176}
- component: {fileID: 1789067229194540096}
m_Layer: 5
m_Name: Bar3
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &7721777578780221932
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1337882146590176534}
m_LocalRotation: {x: 0, y: 0, z: 0.38268343, w: 0.92387956}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.5, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 4220419847264725410}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 45}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0.739, y: 0.719}
m_SizeDelta: {x: 0.8, y: 0.8}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &1599848587567185176
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1337882146590176534}
m_CullTransparentMesh: 1
--- !u!114 &1789067229194540096
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1337882146590176534}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 0.3796775, g: 1, b: 0.3075471, a: 0.5019608}
m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 0
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 89cc97401eb588a408315f5fa0148929, type: 3}
m_Type: 3
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 1
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &2242066034895103569
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5161124166861681344}
- component: {fileID: 1644144214934049227}
- component: {fileID: 4030560816263520615}
m_Layer: 5
m_Name: Bar1
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &5161124166861681344
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2242066034895103569}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.5, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 4220419847264725410}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: 3}
m_SizeDelta: {x: 0.8, y: 0.8}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &1644144214934049227
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2242066034895103569}
m_CullTransparentMesh: 1
--- !u!114 &4030560816263520615
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2242066034895103569}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 0.3796775, g: 1, b: 0.3075471, a: 0.5019608}
m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 0
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 89cc97401eb588a408315f5fa0148929, type: 3}
m_Type: 3
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 1
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &4707264354356972470
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4220419847264725410}
- component: {fileID: 527383734811581324}
- component: {fileID: 393012980197611601}
- component: {fileID: 728587484011512797}
m_Layer: 5
m_Name: Boost Capacity Indicator
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &4220419847264725410
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4707264354356972470}
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_ConstrainProportionsScale: 0
m_Children:
- {fileID: 5161124166861681344}
- {fileID: 45461469492128192}
- {fileID: 7721777578780221932}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: -2.6660156, y: -1.7860107}
m_SizeDelta: {x: 1, y: 1}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!223 &527383734811581324
Canvas:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4707264354356972470}
m_Enabled: 1
serializedVersion: 3
m_RenderMode: 2
m_Camera: {fileID: 0}
m_PlaneDistance: 100
m_PixelPerfect: 0
m_ReceivesEvents: 1
m_OverrideSorting: 0
m_OverridePixelPerfect: 0
m_SortingBucketNormalizedSize: 0
m_VertexColorAlwaysGammaSpace: 1
m_AdditionalShaderChannelsFlag: 0
m_UpdateRectTransformForStandalone: 0
m_SortingLayerID: 0
m_SortingOrder: 0
m_TargetDisplay: 0
--- !u!114 &393012980197611601
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4707264354356972470}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
m_Name:
m_EditorClassIdentifier:
m_UiScaleMode: 0
m_ReferencePixelsPerUnit: 100
m_ScaleFactor: 1
m_ReferenceResolution: {x: 800, y: 600}
m_ScreenMatchMode: 0
m_MatchWidthOrHeight: 0
m_PhysicalUnit: 3
m_FallbackScreenDPI: 96
m_DefaultSpriteDPI: 96
m_DynamicPixelsPerUnit: 10
m_PresetInfoIsWorld: 0
--- !u!114 &728587484011512797
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4707264354356972470}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9a5d49dfaf5356b4fa8f481c5f832213, type: 3}
m_Name:
m_EditorClassIdentifier:
SegmentImages:
- {fileID: 1789067229194540096}
- {fileID: 5311334991594210762}
- {fileID: 4030560816263520615}
color: {r: 0.3796775, g: 1, b: 0.3075471, a: 0.5019608}
--- !u!1 &6938909675781345728
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 45461469492128192}
- component: {fileID: 6218094477925887678}
- component: {fileID: 5311334991594210762}
m_Layer: 5
m_Name: Bar2
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &45461469492128192
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6938909675781345728}
m_LocalRotation: {x: 0, y: 0, z: 0.13917309, w: 0.9902681}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.5, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 4220419847264725410}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 16}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0.143, y: 1.8}
m_SizeDelta: {x: 0.8, y: 0.8}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &6218094477925887678
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6938909675781345728}
m_CullTransparentMesh: 1
--- !u!114 &5311334991594210762
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6938909675781345728}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 0.3796775, g: 1, b: 0.3075471, a: 0.5019608}
m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 0
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 89cc97401eb588a408315f5fa0148929, type: 3}
m_Type: 3
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 1
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: c916febc93b44af43ab56b8a81680019
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,331 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &737537334502241113
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7698399082219588441}
- component: {fileID: 4340533401942019111}
- component: {fileID: 2576640433622656851}
m_Layer: 5
m_Name: Bar2
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &7698399082219588441
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 737537334502241113}
m_LocalRotation: {x: 0, y: 0, z: 0.13917309, w: 0.9902681}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.5, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 5829424454405917499}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 16}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0.143, y: 1.8}
m_SizeDelta: {x: 0.8, y: 0.8}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &4340533401942019111
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 737537334502241113}
m_CullTransparentMesh: 1
--- !u!114 &2576640433622656851
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 737537334502241113}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 0.2396226, b: 0.28733253, a: 0.49803922}
m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 0
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 89cc97401eb588a408315f5fa0148929, type: 3}
m_Type: 3
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 1
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &3108671383612270895
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5829424454405917499}
- component: {fileID: 7864995154685114645}
- component: {fileID: 7999506620984081096}
- component: {fileID: 6947859805409288516}
m_Layer: 5
m_Name: Health Capacity Indicator
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &5829424454405917499
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3108671383612270895}
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_ConstrainProportionsScale: 0
m_Children:
- {fileID: 3307973983983800409}
- {fileID: 7698399082219588441}
- {fileID: 98784598102279029}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 2.5900269, y: -1.7860107}
m_SizeDelta: {x: 1, y: 1}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!223 &7864995154685114645
Canvas:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3108671383612270895}
m_Enabled: 1
serializedVersion: 3
m_RenderMode: 2
m_Camera: {fileID: 0}
m_PlaneDistance: 100
m_PixelPerfect: 0
m_ReceivesEvents: 1
m_OverrideSorting: 0
m_OverridePixelPerfect: 0
m_SortingBucketNormalizedSize: 0
m_VertexColorAlwaysGammaSpace: 0
m_AdditionalShaderChannelsFlag: 0
m_UpdateRectTransformForStandalone: 0
m_SortingLayerID: 0
m_SortingOrder: 0
m_TargetDisplay: 0
--- !u!114 &7999506620984081096
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3108671383612270895}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
m_Name:
m_EditorClassIdentifier:
m_UiScaleMode: 0
m_ReferencePixelsPerUnit: 100
m_ScaleFactor: 1
m_ReferenceResolution: {x: 800, y: 600}
m_ScreenMatchMode: 0
m_MatchWidthOrHeight: 0
m_PhysicalUnit: 3
m_FallbackScreenDPI: 96
m_DefaultSpriteDPI: 96
m_DynamicPixelsPerUnit: 1
m_PresetInfoIsWorld: 0
--- !u!114 &6947859805409288516
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3108671383612270895}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9a5d49dfaf5356b4fa8f481c5f832213, type: 3}
m_Name:
m_EditorClassIdentifier:
SegmentImages:
- {fileID: 8260653884222027481}
- {fileID: 2576640433622656851}
- {fileID: 6744380614345032702}
color: {r: 1, g: 0.2396226, b: 0.28733253, a: 0.49803922}
--- !u!1 &8460817792009749704
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 3307973983983800409}
- component: {fileID: 8982037659342320466}
- component: {fileID: 6744380614345032702}
m_Layer: 5
m_Name: Bar1
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &3307973983983800409
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8460817792009749704}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.5, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 5829424454405917499}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: 3}
m_SizeDelta: {x: 0.8, y: 0.8}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &8982037659342320466
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8460817792009749704}
m_CullTransparentMesh: 1
--- !u!114 &6744380614345032702
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8460817792009749704}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 0.2396226, b: 0.28733253, a: 0.49803922}
m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 0
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 89cc97401eb588a408315f5fa0148929, type: 3}
m_Type: 3
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 1
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &8711838971089901455
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 98784598102279029}
- component: {fileID: 8954416143472648065}
- component: {fileID: 8260653884222027481}
m_Layer: 5
m_Name: Bar3
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &98784598102279029
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8711838971089901455}
m_LocalRotation: {x: 0, y: 0, z: 0.38268343, w: 0.92387956}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.5, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 5829424454405917499}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 45}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0.739, y: 0.719}
m_SizeDelta: {x: 0.8, y: 0.8}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &8954416143472648065
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8711838971089901455}
m_CullTransparentMesh: 1
--- !u!114 &8260653884222027481
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8711838971089901455}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 0.2396226, b: 0.28733253, a: 0.49803922}
m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 0
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 89cc97401eb588a408315f5fa0148929, type: 3}
m_Type: 3
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 1
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 04bfe287c430f3f47b7ccfe564bd9ccd
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,130 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &5312737329671837370
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 3436878586287575061}
m_Layer: 0
m_Name: Offscreen Indicator Arrow
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &3436878586287575061
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5312737329671837370}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 2, y: 2, z: 3}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 6331211089644692183}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &8144415942864253312
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 6331211089644692183}
- component: {fileID: 4035525861259110635}
- component: {fileID: 7074929712647586998}
- component: {fileID: 8551325256346997925}
m_Layer: 0
m_Name: Indicator3D
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &6331211089644692183
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8144415942864253312}
serializedVersion: 2
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_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 3436878586287575061}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &4035525861259110635
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8144415942864253312}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ed8517591bfdc6b4398d396bc386d5a2, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!33 &7074929712647586998
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8144415942864253312}
m_Mesh: {fileID: 3613567641014311022, guid: d912959aabd6a3e439552066ae82eb71, type: 3}
--- !u!23 &8551325256346997925
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8144415942864253312}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: ede4fd81521fbf14290f76017e016f6d, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: fac9d84719a43574f9cfbc19b53aee98
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,331 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &1216149397486874439
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7719978924586044755}
- component: {fileID: 6260718327468900221}
- component: {fileID: 6108971999190006944}
- component: {fileID: 6606596929046554412}
m_Layer: 5
m_Name: Segment Indicator
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &7719978924586044755
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1216149397486874439}
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_ConstrainProportionsScale: 0
m_Children:
- {fileID: 1597882342225319473}
- {fileID: 5841921215140678961}
- {fileID: 4222807826806441245}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: -2.6660156, y: -1.7860107}
m_SizeDelta: {x: 1, y: 1}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!223 &6260718327468900221
Canvas:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1216149397486874439}
m_Enabled: 1
serializedVersion: 3
m_RenderMode: 2
m_Camera: {fileID: 0}
m_PlaneDistance: 100
m_PixelPerfect: 0
m_ReceivesEvents: 1
m_OverrideSorting: 0
m_OverridePixelPerfect: 0
m_SortingBucketNormalizedSize: 0
m_VertexColorAlwaysGammaSpace: 0
m_AdditionalShaderChannelsFlag: 0
m_UpdateRectTransformForStandalone: 0
m_SortingLayerID: 0
m_SortingOrder: 0
m_TargetDisplay: 0
--- !u!114 &6108971999190006944
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1216149397486874439}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3}
m_Name:
m_EditorClassIdentifier:
m_UiScaleMode: 0
m_ReferencePixelsPerUnit: 100
m_ScaleFactor: 1
m_ReferenceResolution: {x: 800, y: 600}
m_ScreenMatchMode: 0
m_MatchWidthOrHeight: 0
m_PhysicalUnit: 3
m_FallbackScreenDPI: 96
m_DefaultSpriteDPI: 96
m_DynamicPixelsPerUnit: 1
m_PresetInfoIsWorld: 0
--- !u!114 &6606596929046554412
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1216149397486874439}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9a5d49dfaf5356b4fa8f481c5f832213, type: 3}
m_Name:
m_EditorClassIdentifier:
SegmentImages:
- {fileID: 5289237763955241137}
- {fileID: 1731222406780920123}
- {fileID: 7375844122976978326}
color: {r: 1, g: 1, b: 1, a: 1}
--- !u!1 &3600868719141270833
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5841921215140678961}
- component: {fileID: 574267673800329807}
- component: {fileID: 1731222406780920123}
m_Layer: 5
m_Name: Bar2
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &5841921215140678961
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3600868719141270833}
m_LocalRotation: {x: 0, y: 0, z: 0.13917309, w: 0.9902681}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.5, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 7719978924586044755}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 16}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0.143, y: 1.8}
m_SizeDelta: {x: 0.8, y: 0.8}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &574267673800329807
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3600868719141270833}
m_CullTransparentMesh: 1
--- !u!114 &1731222406780920123
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3600868719141270833}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 0
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 89cc97401eb588a408315f5fa0148929, type: 3}
m_Type: 3
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 1
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &4837484109285872103
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4222807826806441245}
- component: {fileID: 5152367854407309801}
- component: {fileID: 5289237763955241137}
m_Layer: 5
m_Name: Bar3
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &4222807826806441245
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4837484109285872103}
m_LocalRotation: {x: 0, y: 0, z: 0.38268343, w: 0.92387956}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.5, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 7719978924586044755}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 45}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0.739, y: 0.719}
m_SizeDelta: {x: 0.8, y: 0.8}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &5152367854407309801
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4837484109285872103}
m_CullTransparentMesh: 1
--- !u!114 &5289237763955241137
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4837484109285872103}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 0
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 89cc97401eb588a408315f5fa0148929, type: 3}
m_Type: 3
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 1
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!1 &5669545661149266592
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1597882342225319473}
- component: {fileID: 5143676886930732346}
- component: {fileID: 7375844122976978326}
m_Layer: 5
m_Name: Bar1
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1597882342225319473
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5669545661149266592}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.5, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 7719978924586044755}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: 3}
m_SizeDelta: {x: 0.8, y: 0.8}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &5143676886930732346
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5669545661149266592}
m_CullTransparentMesh: 1
--- !u!114 &7375844122976978326
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5669545661149266592}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 0
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 0
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 21300000, guid: 89cc97401eb588a408315f5fa0148929, type: 3}
m_Type: 3
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 1
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 515dbb15dccc54e438a900e1bb90cd21
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

View File

@ -591,9 +591,9 @@ MonoBehaviour:
startCamera: {fileID: 1164443743} startCamera: {fileID: 1164443743}
CurrentScene: 0 CurrentScene: 0
IsTestRun: 1 IsTestRun: 1
TestScene: 4 TestScene: 3
TestSceneRule: 0 TestSceneRule: 0
TestSceneArena: 2 TestSceneArena: 0
--- !u!1 &1342452914 stripped --- !u!1 &1342452914 stripped
GameObject: GameObject:
m_CorrespondingSourceObject: {fileID: 9107523058192353959, guid: 804560ce9f2dde14882eb0cc1c63544c, type: 3} m_CorrespondingSourceObject: {fileID: 9107523058192353959, guid: 804560ce9f2dde14882eb0cc1c63544c, type: 3}

View File

@ -238,17 +238,14 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: b0ad2719b50ab2e4fb1a22d64156b9d6, type: 3} m_Script: {fileID: 11500000, guid: b0ad2719b50ab2e4fb1a22d64156b9d6, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
boostCapacities:
- {fileID: 1950397573}
- {fileID: 723891192}
- {fileID: 1472618151}
- {fileID: 1501063438}
joinPrompts: joinPrompts:
- {fileID: 886944251} - {fileID: 886944251}
- {fileID: 374405368} - {fileID: 374405368}
- {fileID: 1686910811} - {fileID: 1686910811}
- {fileID: 630834206} - {fileID: 630834206}
score: {fileID: 493939005} score: {fileID: 493939005}
LifeMeter: {fileID: 3108671383612270895, guid: 04bfe287c430f3f47b7ccfe564bd9ccd, type: 3}
BoostMeter: {fileID: 4707264354356972470, guid: c916febc93b44af43ab56b8a81680019, type: 3}
--- !u!1 &41121971 --- !u!1 &41121971
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -1234,17 +1231,17 @@ RectTransform:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 465248643} m_GameObject: {fileID: 465248643}
m_LocalRotation: {x: -0, y: -0, z: 1.1641532e-10, w: 1} m_LocalRotation: {x: -0, y: -0, z: 1.1641532e-10, w: 1}
m_LocalPosition: {x: 0, y: 0, z: -0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: [] m_Children: []
m_Father: {fileID: 1443571007} m_Father: {fileID: 1443571007}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0.5, y: 0.5} m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 270} m_AnchoredPosition: {x: 0, y: 441.78}
m_SizeDelta: {x: 457, y: 0} m_SizeDelta: {x: -75, y: -441.77982}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0, y: 0}
--- !u!114 &465248645 --- !u!114 &465248645
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -1302,7 +1299,7 @@ MonoBehaviour:
m_HorizontalAlignment: 2 m_HorizontalAlignment: 2
m_VerticalAlignment: 512 m_VerticalAlignment: 512
m_textAlignment: 65535 m_textAlignment: 65535
m_characterSpacing: 0 m_characterSpacing: 1
m_wordSpacing: 0 m_wordSpacing: 0
m_lineSpacing: 0 m_lineSpacing: 0
m_lineSpacingMax: 0 m_lineSpacingMax: 0
@ -1328,7 +1325,7 @@ MonoBehaviour:
m_VertexBufferAutoSizeReduction: 0 m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1 m_useMaxVisibleDescender: 1
m_pageToDisplay: 1 m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: -0.40989688, w: 0} m_margin: {x: 0, y: 0, z: 0, w: 0}
m_isUsingLegacyAnimationComponent: 0 m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0 m_isVolumetricText: 0
m_hasFontAssetChanged: 0 m_hasFontAssetChanged: 0
@ -2198,17 +2195,6 @@ RectTransform:
m_CorrespondingSourceObject: {fileID: 7548755371474331641, guid: ece147409d177604bb59e8bbd21316da, type: 3} m_CorrespondingSourceObject: {fileID: 7548755371474331641, guid: ece147409d177604bb59e8bbd21316da, type: 3}
m_PrefabInstance: {fileID: 723891190} m_PrefabInstance: {fileID: 723891190}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
--- !u!114 &723891192 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 5281775441835194232, guid: ece147409d177604bb59e8bbd21316da, type: 3}
m_PrefabInstance: {fileID: 723891190}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 7e3ef46bd7908ba4b8fd45a5572217b6, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1 &754823974 --- !u!1 &754823974
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -2694,7 +2680,7 @@ Camera:
m_Depth: -1 m_Depth: -1
m_CullingMask: m_CullingMask:
serializedVersion: 2 serializedVersion: 2
m_Bits: 4294967295 m_Bits: 511
m_RenderingPath: 1 m_RenderingPath: 1
m_TargetTexture: {fileID: 0} m_TargetTexture: {fileID: 0}
m_TargetDisplay: 0 m_TargetDisplay: 0
@ -3945,17 +3931,6 @@ RectTransform:
m_CorrespondingSourceObject: {fileID: 7548755371474331641, guid: ece147409d177604bb59e8bbd21316da, type: 3} m_CorrespondingSourceObject: {fileID: 7548755371474331641, guid: ece147409d177604bb59e8bbd21316da, type: 3}
m_PrefabInstance: {fileID: 1472618149} m_PrefabInstance: {fileID: 1472618149}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
--- !u!114 &1472618151 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 5281775441835194232, guid: ece147409d177604bb59e8bbd21316da, type: 3}
m_PrefabInstance: {fileID: 1472618149}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 7e3ef46bd7908ba4b8fd45a5572217b6, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1001 &1501063436 --- !u!1001 &1501063436
PrefabInstance: PrefabInstance:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -4090,17 +4065,6 @@ RectTransform:
m_CorrespondingSourceObject: {fileID: 7548755371474331641, guid: ece147409d177604bb59e8bbd21316da, type: 3} m_CorrespondingSourceObject: {fileID: 7548755371474331641, guid: ece147409d177604bb59e8bbd21316da, type: 3}
m_PrefabInstance: {fileID: 1501063436} m_PrefabInstance: {fileID: 1501063436}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
--- !u!114 &1501063438 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 5281775441835194232, guid: ece147409d177604bb59e8bbd21316da, type: 3}
m_PrefabInstance: {fileID: 1501063436}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 7e3ef46bd7908ba4b8fd45a5572217b6, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1 &1686910807 --- !u!1 &1686910807
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -5440,17 +5404,6 @@ RectTransform:
m_CorrespondingSourceObject: {fileID: 7548755371474331641, guid: ece147409d177604bb59e8bbd21316da, type: 3} m_CorrespondingSourceObject: {fileID: 7548755371474331641, guid: ece147409d177604bb59e8bbd21316da, type: 3}
m_PrefabInstance: {fileID: 2952306402587041938} m_PrefabInstance: {fileID: 2952306402587041938}
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
--- !u!114 &1950397573 stripped
MonoBehaviour:
m_CorrespondingSourceObject: {fileID: 5281775441835194232, guid: ece147409d177604bb59e8bbd21316da, type: 3}
m_PrefabInstance: {fileID: 2952306402587041938}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 7e3ef46bd7908ba4b8fd45a5572217b6, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1 &1986215050 --- !u!1 &1986215050
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -5651,7 +5604,7 @@ Camera:
m_Depth: -1 m_Depth: -1
m_CullingMask: m_CullingMask:
serializedVersion: 2 serializedVersion: 2
m_Bits: 4294967295 m_Bits: 511
m_RenderingPath: 1 m_RenderingPath: 1
m_TargetTexture: {fileID: 0} m_TargetTexture: {fileID: 0}
m_TargetDisplay: 0 m_TargetDisplay: 0

View File

@ -11301,7 +11301,7 @@ Camera:
m_Depth: -1 m_Depth: -1
m_CullingMask: m_CullingMask:
serializedVersion: 2 serializedVersion: 2
m_Bits: 4294967295 m_Bits: 511
m_RenderingPath: 1 m_RenderingPath: 1
m_TargetTexture: {fileID: 0} m_TargetTexture: {fileID: 0}
m_TargetDisplay: 0 m_TargetDisplay: 0

View File

@ -10,6 +10,9 @@ using UnityEngine;
[CreateAssetMenu(fileName = "BaseShip", menuName = "ScriptableObjects/BaseShip")] [CreateAssetMenu(fileName = "BaseShip", menuName = "ScriptableObjects/BaseShip")]
public class BaseShipProperties : ScriptableObject public class BaseShipProperties : ScriptableObject
{ {
[Header("Life")]
[Tooltip("The lifekind. Perchance.")]
public float MaximumHealth = 1000;
[Header("Basic Movement")] [Header("Basic Movement")]
[Tooltip("The acceleration applied on thrust input.")] [Tooltip("The acceleration applied on thrust input.")]
public float ThrustAcceleration = 2000; public float ThrustAcceleration = 2000;

View File

@ -19,6 +19,12 @@ public class ShipProperties : ScriptableObject
[Tooltip("The main color of the ship.")] [Tooltip("The main color of the ship.")]
public Color ShipHullColor = Color.magenta; public Color ShipHullColor = Color.magenta;
[Tooltip("The lifekind. Perchance.")]
[Range(0.0f, 10.0f)]
public float healthModifier = 1;
[HideInInspector]
public float MaximumHealth => BaseProps.MaximumHealth * healthModifier;
[Tooltip("The acceleration applied on thrust input.")] [Tooltip("The acceleration applied on thrust input.")]
[Range(0.0f, 10.0f)] [Range(0.0f, 10.0f)]
public float thrustAccelerationModifier = 1; public float thrustAccelerationModifier = 1;

View File

@ -12,6 +12,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: d4e63b7217e6a2f499d6da3911f6da33, type: 3} m_Script: {fileID: 11500000, guid: d4e63b7217e6a2f499d6da3911f6da33, type: 3}
m_Name: BaseShip m_Name: BaseShip
m_EditorClassIdentifier: m_EditorClassIdentifier:
MaximumHealth: 1000
ThrustAcceleration: 2000 ThrustAcceleration: 2000
SteerVelocity: 360 SteerVelocity: 360
NormalMaxVelocity: 15 NormalMaxVelocity: 15
@ -31,7 +32,7 @@ MonoBehaviour:
TacklingGraceTime: 0.6 TacklingGraceTime: 0.6
TackledGraceTime: 0.6 TackledGraceTime: 0.6
TackledCriticalStunTime: 0.6 TackledCriticalStunTime: 0.6
TackledBodyStunTime: 0.3 TackledBodyStunTime: 0.4
CriticalTacklePowerFactor: 60 CriticalTacklePowerFactor: 400
NormalTacklePowerFactor: 40 NormalTacklePowerFactor: 200
Audio: {fileID: 11400000, guid: 96db7e9f041aed7459cb776fddee1741, type: 2} Audio: {fileID: 11400000, guid: 96db7e9f041aed7459cb776fddee1741, type: 2}

View File

@ -99,7 +99,7 @@ public class CameraOperator : MonoBehaviour
/// Zooms to keep players in frame. /// Zooms to keep players in frame.
/// Follows the players mid-point. /// Follows the players mid-point.
/// </summary> /// </summary>
private void FixedUpdate() private void LateUpdate()
{ {
Vector3 center = CalculatePlayersCenter(); Vector3 center = CalculatePlayersCenter();

View File

@ -1,15 +1,24 @@
using System; using System;
using UnityEngine; using UnityEngine;
using UnityEngine.Events;
/// <summary> /// <summary>
/// Used on vulnerable trigger zones for ships. /// Used on vulnerable trigger zones for ships.
/// </summary> /// </summary>
public class TackleDetection : MonoBehaviour public class HitDetection : MonoBehaviour
{ {
[SerializeField] private TackleKind tackleKind; [SerializeField] private TackleKind tackleKind;
public Action<TackleKind, Collider> TackledResponse; public Action<TackleKind, Collider> TackledResponse;
public Action TacklingResponse; public Action TacklingResponse;
[SerializeField] private HitKind hitKind = HitKind.IncomingNormal;
public Action<HitKind, ProjectileDamage> HitResponse;
//ID of Owner GameObject of this hit detecting zone
[HideInInspector]
public int OwnerId = 0;
void Awake()
{
OwnerId = transform.parent.gameObject.GetInstanceID();
}
/// <summary> /// <summary>
/// Invokes the fitting tackle response on trigger entered. /// Invokes the fitting tackle response on trigger entered.
@ -40,8 +49,20 @@ public class TackleDetection : MonoBehaviour
TacklingResponse.Invoke(); TacklingResponse.Invoke();
break; break;
} }
}
public void RegisterHit(ProjectileDamage damage)
{
HitResponse(hitKind, damage);
} }
} }
public enum TackleKind { IncomingCritical, IncomingNormal, OutgoingCritical, OutgoingNormal } public enum TackleKind { IncomingCritical, IncomingNormal, OutgoingCritical, OutgoingNormal }
public enum HitKind { IncomingCritical, IncomingNormal }
public struct ProjectileDamage
{
public float DamageValue;
public float ImpactMagnitude;
public Vector3 ImpactPoint;
public Vector3 ImpactDirection;
}

View File

@ -18,6 +18,10 @@ using FishNet.Transporting;
public class PredictedShip : NetworkBehaviour, IHUDOwner public class PredictedShip : NetworkBehaviour, IHUDOwner
{ {
private static ILog Log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); private static ILog Log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
public event Action<float> BoostUpdated;
public event Action<float> LifeUpdated;
public int InstanceID { get; private set; } public int InstanceID { get; private set; }
public ShipProperties props; public ShipProperties props;
public ShipState state; public ShipState state;
@ -36,7 +40,7 @@ public class PredictedShip : NetworkBehaviour, IHUDOwner
private AffectingForcesManager forceManager; private AffectingForcesManager forceManager;
// Saves the current input value for thrust // Saves the current input value for thrust
private bool canBoost = true; private bool canBoost = true;
private TackleDetection[] tackleDetectors; private HitDetection[] tackleDetectors;
private bool isCriticalTackle = false; private bool isCriticalTackle = false;
private bool isTackled = false; private bool isTackled = false;
private float tackledTime = 0f; private float tackledTime = 0f;
@ -61,6 +65,7 @@ public class PredictedShip : NetworkBehaviour, IHUDOwner
public GameObject smoothedRepresentation; public GameObject smoothedRepresentation;
private Rigidbody body; private Rigidbody body;
void Awake() void Awake()
{ {
if (forceManager == null) if (forceManager == null)
@ -86,13 +91,13 @@ public class PredictedShip : NetworkBehaviour, IHUDOwner
void Start() void Start()
{ {
InstanceID = gameObject.GetInstanceID(); InstanceID = gameObject.GetInstanceID();
state.boostCapacity = props.MaxBoostCapacity; state.BoostCapacity = props.MaxBoostCapacity;
// boostUI.SetMinBoostRatio(props.minBoostCapacity / props.maxBoostCapacity); // boostUI.SetMinBoostRatio(props.minBoostCapacity / props.maxBoostCapacity);
// GameManager.GM.RegisterPlayer(this); // GameManager.GM.RegisterPlayer(this);
cameraOperator.AddCharacter(smoothedRepresentation); cameraOperator.AddCharacter(smoothedRepresentation);
tackleDetectors = GetComponentsInChildren<TackleDetection>(); tackleDetectors = GetComponentsInChildren<HitDetection>();
foreach (TackleDetection td in tackleDetectors) foreach (HitDetection td in tackleDetectors)
{ {
td.TackledResponse += TackledResponse; td.TackledResponse += TackledResponse;
td.TacklingResponse += TacklingResponse; td.TacklingResponse += TacklingResponse;
@ -114,11 +119,13 @@ public class PredictedShip : NetworkBehaviour, IHUDOwner
void OnDestroy() void OnDestroy()
{ {
ObjectCaches<PredictionRigidbody>.StoreAndDefault(ref PredictionRigidbody); ObjectCaches<PredictionRigidbody>.StoreAndDefault(ref PredictionRigidbody);
foreach (TackleDetection td in tackleDetectors) foreach (HitDetection td in tackleDetectors)
{ {
td.TackledResponse = null; td.TackledResponse = null;
td.TacklingResponse = null; td.TacklingResponse = null;
} }
LifeUpdated = null;
BoostUpdated = null;
} }
private void TimeManager_OnTick() private void TimeManager_OnTick()
@ -145,8 +152,8 @@ public class PredictedShip : NetworkBehaviour, IHUDOwner
// // Get and apply the current Gravity // // Get and apply the current Gravity
Transform gravitySource = forceManager.GetGravitySourceForInstance(InstanceID); Transform gravitySource = forceManager.GetGravitySourceForInstance(InstanceID);
state.currentGravity = forceManager.GetGravityForInstance(InstanceID)(gravitySource, transform); state.CurrentGravity = forceManager.GetGravityForInstance(InstanceID)(gravitySource, transform);
PredictionRigidbody.AddForce(state.currentGravity, ForceMode.Acceleration); PredictionRigidbody.AddForce(state.CurrentGravity, ForceMode.Acceleration);
float stunFactor = isCriticalTackle ? props.StunLooseControlFactor : 1f; float stunFactor = isCriticalTackle ? props.StunLooseControlFactor : 1f;
@ -156,7 +163,7 @@ public class PredictedShip : NetworkBehaviour, IHUDOwner
Vector3 currentVelocity = body.velocity; Vector3 currentVelocity = body.velocity;
Vector3 boostedAcceleration = BoostAcceleration(acceleration, state.currentGravity); Vector3 boostedAcceleration = BoostAcceleration(acceleration, state.CurrentGravity);
if (!isCriticalTackle) if (!isCriticalTackle)
{ {
@ -264,8 +271,8 @@ public class PredictedShip : NetworkBehaviour, IHUDOwner
// Get and apply the current Gravity // Get and apply the current Gravity
Transform gravitySource = forceManager.GetGravitySourceForInstance(InstanceID); Transform gravitySource = forceManager.GetGravitySourceForInstance(InstanceID);
state.currentGravity = forceManager.GetGravityForInstance(InstanceID)(gravitySource, transform); state.CurrentGravity = forceManager.GetGravityForInstance(InstanceID)(gravitySource, transform);
body.AddForce(state.currentGravity, ForceMode.Acceleration); body.AddForce(state.CurrentGravity, ForceMode.Acceleration);
float stunFactor = isCriticalTackle ? props.StunLooseControlFactor : 1f; float stunFactor = isCriticalTackle ? props.StunLooseControlFactor : 1f;
@ -275,7 +282,7 @@ public class PredictedShip : NetworkBehaviour, IHUDOwner
Vector3 currentVelocity = body.velocity; Vector3 currentVelocity = body.velocity;
Vector3 boostedAcceleration = BoostAcceleration(acceleration, state.currentGravity); Vector3 boostedAcceleration = BoostAcceleration(acceleration, state.CurrentGravity);
if (!isCriticalTackle) if (!isCriticalTackle)
{ {
@ -407,29 +414,29 @@ public class PredictedShip : NetworkBehaviour, IHUDOwner
/// <param name="deltaTime">Time delta of the current frame</param> /// <param name="deltaTime">Time delta of the current frame</param>
void BoostStateUpdate(float deltaTime) void BoostStateUpdate(float deltaTime)
{ {
BoostUI.UpdateFill(Math.Min(state.boostCapacity / props.MaxBoostCapacity, 1)); BoostUI.UpdateFill(Math.Min(state.BoostCapacity / props.MaxBoostCapacity, 1));
if (IsBoosting(input.boostInput)) if (IsBoosting(input.boostInput))
{ {
state.boostCapacity -= deltaTime; state.BoostCapacity -= deltaTime;
} }
if (canBoost && zone == Zone.OutsideZone) if (canBoost && zone == Zone.OutsideZone)
{ {
state.boostCapacity -= deltaTime * props.OutsideBoostRate; state.BoostCapacity -= deltaTime * props.OutsideBoostRate;
} }
if (state.boostCapacity <= 0) if (state.BoostCapacity <= 0)
{ {
canBoost = false; canBoost = false;
} }
if ((input.boostInput <= 0 || !canBoost) if ((input.boostInput <= 0 || !canBoost)
&& zone == Zone.NimbleZone && zone == Zone.NimbleZone
&& state.boostCapacity <= props.MaxBoostCapacity) && state.BoostCapacity <= props.MaxBoostCapacity)
{ {
state.boostCapacity += deltaTime; state.BoostCapacity += deltaTime;
} }
// When your boost capacity is still critical, you can't start boosting immediately again. // When your boost capacity is still critical, you can't start boosting immediately again.
// TODO: This is not tested well enough with players. // TODO: This is not tested well enough with players.
if (canBoost == false && state.boostCapacity >= props.MinBoostCapacity) if (canBoost == false && state.BoostCapacity >= props.MinBoostCapacity)
{ {
canBoost = true; canBoost = true;
} }
@ -567,7 +574,7 @@ public class PredictedShip : NetworkBehaviour, IHUDOwner
smokeTrailEffect.Play(); smokeTrailEffect.Play();
if (jetFlameEffect.isPlaying) if (jetFlameEffect.isPlaying)
jetFlameEffect.transform.localScale = new Vector3(1.3f, 2, 1); jetFlameEffect.transform.localScale = new Vector3(1.3f, 2, 1);
BoosterSound.PlayAudio(false, true); BoosterSound.PlayAudio(false, 0.1f, true);
} }
else else
{ {
@ -577,12 +584,12 @@ public class PredictedShip : NetworkBehaviour, IHUDOwner
} }
if (isTackled && !isCriticalTackle) if (isTackled && !isCriticalTackle)
{ {
BeingTackledSound.PlayAudio(false, true); BeingTackledSound.PlayAudio(false, 0, true);
cameraOperator.ShakeCam(0.2f); cameraOperator.ShakeCam(0.2f);
} }
if (isCriticalTackle) if (isCriticalTackle)
{ {
BeingCriticallyTackledSound.PlayAudio(false, true); BeingCriticallyTackledSound.PlayAudio(false, 0, true);
cameraOperator.ShakeCam(0.4f); cameraOperator.ShakeCam(0.4f);
} }
if (!isTackled) if (!isTackled)
@ -612,18 +619,18 @@ public class PredictedShip : NetworkBehaviour, IHUDOwner
{ {
return; return;
} }
if (!gravityEffect.isPlaying && state.currentGravity != Vector3.zero) if (!gravityEffect.isPlaying && state.CurrentGravity != Vector3.zero)
{ {
gravityEffect.Play(); gravityEffect.Play();
} }
else if (state.currentGravity == Vector3.zero) else if (state.CurrentGravity == Vector3.zero)
{ {
gravityEffect.Stop(); gravityEffect.Stop();
} }
if (gravityEffect.isPlaying) if (gravityEffect.isPlaying)
{ {
float gravityAngle = float gravityAngle =
Vector3.SignedAngle(transform.parent.up, state.currentGravity, transform.forward); Vector3.SignedAngle(transform.parent.up, state.CurrentGravity, transform.forward);
gravityEffect.gameObject.transform.localEulerAngles = gravityEffect.gameObject.transform.localEulerAngles =
new Vector3(0, 0, gravityAngle - transform.localEulerAngles.z); new Vector3(0, 0, gravityAngle - transform.localEulerAngles.z);

View File

@ -11,12 +11,15 @@ using System.Reflection;
using System.Collections.Generic; using System.Collections.Generic;
using static ShipSound; using static ShipSound;
public class Ship : MonoBehaviour, IHUDOwner public class Ship : MonoBehaviour, IHUDOwner, IDamageable
{ {
private static ILog Log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); private static ILog Log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
public event Action<float> BoostUpdated;
public event Action<float> LifeUpdated;
public int InstanceID { get; private set; } public int InstanceID { get; private set; }
public BoostCapacityUI BoostUI { get; set; }
public ShipProperties Props; public ShipProperties Props;
public ShipState State; public ShipState State;
public ShipInput Input; public ShipInput Input;
@ -26,23 +29,28 @@ public class Ship : MonoBehaviour, IHUDOwner
public ParticleSystem GravityEffect; public ParticleSystem GravityEffect;
public ParticleSystem JetFlameEffect; public ParticleSystem JetFlameEffect;
public ParticleSystem SmokeTrailEffect; public ParticleSystem SmokeTrailEffect;
public DamageNumberParticles DamageParticleEffect;
public MeshRenderer BodyMeshRenderer; public MeshRenderer BodyMeshRenderer;
private F3DFXController _fireController; private F3DFXController _fireController;
private AffectingForcesManager _forceManager; private AffectingForcesManager _forceManager;
private Rigidbody _body; public Rigidbody _body;
// Saves the current input value for thrust // Saves the current input value for thrust
private bool _canBoost = true; private bool _canBoost = true;
private TackleDetection[] _tackleDetectors; private HitDetection[] _tackleDetectors;
private bool _isCriticalTackle = false; private bool _isCriticalTackle = false;
private bool _isTackled = false; private bool _isTackled = false;
private float _tackledTime = 0f; private float _tackledTime = 0f;
private Tween _tackleIgnoreTween = new(); private float _lastTackleTime = 0f;
private readonly float _minHitDelay = 0.06f;
private float _lastHitTime = 0f;
// Upcoming zone change // Upcoming zone change
private Zone newZone = Zone.NimbleZone; private Zone newZone = Zone.NimbleZone;
private WeaponEffect equippedWeapon = WeaponEffect.None;
private Dictionary<ShipSound, ManageableAudio> sounds = new(); private Dictionary<ShipSound, ManageableAudio> sounds = new();
void Awake() void Awake()
{ {
if (_forceManager == null) if (_forceManager == null)
@ -57,7 +65,8 @@ public class Ship : MonoBehaviour, IHUDOwner
void Start() void Start()
{ {
InstanceID = gameObject.GetInstanceID(); InstanceID = gameObject.GetInstanceID();
State.boostCapacity = Props.MaxBoostCapacity; State.BoostCapacity = Props.MaxBoostCapacity;
State.RemainingHealth = Props.MaximumHealth;
// Get manageable audio instances for the ships sounds // Get manageable audio instances for the ships sounds
foreach (ShipSoundToName stn in Props.Audio.shipSounds) foreach (ShipSoundToName stn in Props.Audio.shipSounds)
@ -71,21 +80,28 @@ public class Ship : MonoBehaviour, IHUDOwner
CameraOperator.AddCharacter(gameObject); CameraOperator.AddCharacter(gameObject);
// Connect the tackling/tackled logic to the ships detection components // Connect the tackling/tackled logic to the ships detection components
_tackleDetectors = GetComponentsInChildren<TackleDetection>(); _tackleDetectors = GetComponentsInChildren<HitDetection>();
foreach (TackleDetection td in _tackleDetectors) foreach (HitDetection td in _tackleDetectors)
{ {
td.TackledResponse += TackledResponse; td.TackledResponse += TackledResponse;
td.TacklingResponse += TacklingResponse; td.TacklingResponse += TacklingResponse;
td.HitResponse += HitResponse;
} }
LifeUpdated?.Invoke(1);
BoostUpdated?.Invoke(1);
} }
void OnDestroy() void OnDestroy()
{ {
foreach (TackleDetection td in _tackleDetectors) foreach (HitDetection td in _tackleDetectors)
{ {
td.TackledResponse = null; td.TackledResponse -= TackledResponse;
td.TacklingResponse = null; td.TacklingResponse -= TacklingResponse;
td.HitResponse -= HitResponse;
} }
BoostUpdated = null;
LifeUpdated = null;
} }
// Update is called once per frame // Update is called once per frame
@ -97,6 +113,7 @@ public class Ship : MonoBehaviour, IHUDOwner
{ {
_body.constraints = RigidbodyConstraints.FreezeAll; _body.constraints = RigidbodyConstraints.FreezeAll;
UpdateSounds(); UpdateSounds();
UpdateFireWeapon(equippedWeapon);
State.Zone = newZone; State.Zone = newZone;
return; return;
} }
@ -109,18 +126,35 @@ public class Ship : MonoBehaviour, IHUDOwner
UpdateMovement(); UpdateMovement();
BoostStateUpdate(Time.deltaTime); BoostStateUpdate(Time.deltaTime);
UpdateTackleResponse(_isCriticalTackle); UpdateTackleResponse(_isCriticalTackle);
UpdateFireWeapon(equippedWeapon);
}
void UpdateFireWeapon(WeaponEffect weapon)
{
// Stop firing
if (State.IsFiring && Input.shootInput < 1 ||
State.IsFiring && MatchManager.G.matchState != MatchState.Match)
{
State.IsFiring = false;
_fireController.Stop();
}
if (weapon == WeaponEffect.None)
{
return;
}
if (_fireController.SelectedWeaponEffect != weapon)
{
_fireController.SelectedWeaponEffect = weapon;
}
if (!State.IsFiring && Input.shootInput == 1) if (!State.IsFiring && Input.shootInput == 1)
{ {
State.IsFiring = true; State.IsFiring = true;
_fireController.Fire(); _fireController.Fire();
} }
// Stop firing
if (State.IsFiring && Input.shootInput < 1)
{
State.IsFiring = false;
_fireController.Stop();
}
} }
/// <summary> /// <summary>
@ -129,24 +163,43 @@ public class Ship : MonoBehaviour, IHUDOwner
void UpdateMovement() void UpdateMovement()
{ {
//Debug.Log("inupdatemove " + currentThrustInput);
// Player rotation is always possible and same speed // Player rotation is always possible and same speed
transform.Rotate(0, 0, -Props.SteerVelocity * Input.steerInput * Time.deltaTime);
float current_angle = transform.localEulerAngles.z;
Vector2 radial = -Input.radialInput;
float goal_angle = Vector2.SignedAngle(Vector2.up, radial) + 180;
float inputThrust = 0;
if (radial.magnitude > 0.05)
{
float angle_difference = ((goal_angle - current_angle + 180) % 360) - 180;
angle_difference = angle_difference < -180 ? angle_difference + 360 : angle_difference;
float sign = math.sign(angle_difference);
float rotation = Mathf.Min(math.abs(angle_difference), Props.SteerVelocity * radial.magnitude * Time.deltaTime);
transform.Rotate(0, 0, sign * rotation);
}
else
{
transform.Rotate(0, 0, Input.steerInput * -Props.SteerVelocity * Time.deltaTime);
}
inputThrust = Input.thrustInput > inputThrust ? Input.thrustInput : inputThrust;
// Get and apply the current Gravity // Get and apply the current Gravity
Transform gravitySource = _forceManager.GetGravitySourceForInstance(InstanceID); Transform gravitySource = _forceManager.GetGravitySourceForInstance(InstanceID);
State.currentGravity = _forceManager.GetGravityForInstance(InstanceID)(gravitySource, transform) * Props.GravitStrength; State.CurrentGravity = _forceManager.GetGravityForInstance(InstanceID)(gravitySource, transform) * Props.GravitStrength;
_body.AddForce(State.currentGravity, ForceMode.Acceleration); _body.AddForce(State.CurrentGravity, ForceMode.Acceleration);
float stunFactor = _isCriticalTackle ? Props.StunLooseControlFactor : 1f; float stunFactor = _isCriticalTackle ? Props.StunLooseControlFactor : 1f;
float thrust = IsBoosting() ? 1f : Input.thrustInput; float thrust = IsBoosting() ? 1f : inputThrust;
Vector3 acceleration = Props.ThrustAcceleration * thrust * Time.deltaTime Vector3 acceleration = Props.ThrustAcceleration * thrust * Time.deltaTime
* transform.up * stunFactor; * transform.up * stunFactor;
Vector3 currentVelocity = _body.velocity; Vector3 currentVelocity = _body.velocity;
Vector3 boostedAcceleration = BoostAcceleration(acceleration, State.currentGravity); Vector3 boostedAcceleration = BoostAcceleration(acceleration, State.CurrentGravity);
if (!_isCriticalTackle) if (!_isCriticalTackle)
{ {
@ -280,29 +333,29 @@ public class Ship : MonoBehaviour, IHUDOwner
/// <param name="deltaTime">Time delta of the current frame</param> /// <param name="deltaTime">Time delta of the current frame</param>
void BoostStateUpdate(float deltaTime) void BoostStateUpdate(float deltaTime)
{ {
BoostUI.UpdateFill(Math.Min(State.boostCapacity / Props.MaxBoostCapacity, 1)); BoostUpdated?.Invoke(State.BoostCapacity / Props.MaxBoostCapacity);
if (IsBoosting()) if (IsBoosting())
{ {
State.boostCapacity -= deltaTime; State.BoostCapacity -= deltaTime;
} }
if (_canBoost && State.Zone == Zone.OutsideZone) if (_canBoost && State.Zone == Zone.OutsideZone)
{ {
State.boostCapacity -= deltaTime * Props.OutsideBoostRate; State.BoostCapacity -= deltaTime * Props.OutsideBoostRate;
} }
if (State.boostCapacity <= 0) if (State.BoostCapacity <= 0)
{ {
_canBoost = false; _canBoost = false;
} }
if ((Input.boostInput <= 0 || !_canBoost) if ((Input.boostInput <= 0 || !_canBoost)
&& State.Zone == Zone.NimbleZone && State.Zone == Zone.NimbleZone
&& State.boostCapacity <= Props.MaxBoostCapacity) && State.BoostCapacity <= Props.MaxBoostCapacity)
{ {
State.boostCapacity += deltaTime; State.BoostCapacity += deltaTime;
} }
// When your boost capacity is still critical, you can't start boosting immediately again. // When your boost capacity is still critical, you can't start boosting immediately again.
// TODO: This is not tested well enough with players. // TODO: This is not tested well enough with players.
if (_canBoost == false && State.boostCapacity >= Props.MinBoostCapacity) if (_canBoost == false && State.BoostCapacity >= Props.MinBoostCapacity)
{ {
_canBoost = true; _canBoost = true;
} }
@ -333,31 +386,25 @@ public class Ship : MonoBehaviour, IHUDOwner
} }
} }
/// <summary>
/// Disable tackle responeses for a given time
/// </summary>
async void TemporarilyIgnoreTackles(float duration)
{
if (_tackleIgnoreTween.isAlive)
return;
_tackleIgnoreTween = Tween.Delay(duration);
await _tackleIgnoreTween;
}
private bool IgnoreTackle()
{
return _tackleIgnoreTween.isAlive;
}
/// <summary> /// <summary>
/// Response logic if the ship is tackling an opponend. /// Response logic if the ship is tackling an opponend.
/// </summary> /// </summary>
void TacklingResponse() void TacklingResponse()
{ {
if (IgnoreTackle()) if (IgnoreTackles())
return; return;
Log.Debug($"{Props.ShipName} is tackling."); Log.Debug($"{Props.ShipName} is tackling.");
TemporarilyIgnoreTackles(Props.TacklingGraceTime); }
bool IgnoreTackles()
{
if (Time.time < _lastTackleTime + Props.TackledGraceTime)
{
return true;
}
_lastTackleTime = Time.time;
return false;
} }
/// <summary> /// <summary>
@ -368,41 +415,61 @@ public class Ship : MonoBehaviour, IHUDOwner
/// <param name="collider">Object which has collided with the collision region.</param> /// <param name="collider">Object which has collided with the collision region.</param>
void TackledResponse(TackleKind tackleKind, Collider collider) void TackledResponse(TackleKind tackleKind, Collider collider)
{ {
if (IgnoreTackle()) if (IgnoreTackles())
return; return;
TemporarilyIgnoreTackles(Props.TackledGraceTime); float damage = 0;
float tacklePowerFactor = Props.CriticalTacklePowerFactor; float tacklePowerFactor = Props.CriticalTacklePowerFactor;
if (tackleKind == TackleKind.IncomingCritical) if (tackleKind == TackleKind.IncomingCritical)
{ {
_isCriticalTackle = true; _isCriticalTackle = true;
damage = 450;
Log.Debug($"{Props.ShipName} has been tackled critically."); Log.Debug($"{Props.ShipName} has been tackled critically.");
} }
else if (tackleKind == TackleKind.IncomingNormal) else if (tackleKind == TackleKind.IncomingNormal)
{ {
_isCriticalTackle = false; _isCriticalTackle = false;
damage = 100;
tacklePowerFactor = Props.NormalTacklePowerFactor; tacklePowerFactor = Props.NormalTacklePowerFactor;
Log.Debug($"{Props.ShipName} has been tackled."); Log.Debug($"{Props.ShipName} has been tackled.");
} }
Vector3 colliderVelocity = collider.attachedRigidbody.velocity; Vector3 colliderVelocity = collider.attachedRigidbody.velocity - _body.velocity;
//Log.Debug("velocity " + colliderVelocity);
//Log.Debug("angle " + angle);
//Log.Debug("outvector " + outVector);
Vector3 force = colliderVelocity * tacklePowerFactor; Vector3 force = colliderVelocity * tacklePowerFactor;
Vector3 resultForce = force / Math.Max(force.magnitude / 4000, 1); Vector3 resultForce = force / Math.Max(force.magnitude / 4000, 1);
resultForce = resultForce / Math.Max(0.001f, Math.Min(resultForce.magnitude / 500, 1)); resultForce = resultForce / Math.Max(0.001f, Math.Min(resultForce.magnitude / 500, 1));
Log.Debug(resultForce.magnitude); Log.Debug(resultForce.magnitude);
_body.AddForce(resultForce, _body.AddForce(resultForce,
ForceMode.Acceleration); ForceMode.Acceleration);
InflictDamage(damage);
DamageParticleEffect.SpawnDamageNumber((int)damage, colliderVelocity / 2);
UpdateTackleResponse(true); UpdateTackleResponse(true);
} }
public void HitResponse(HitKind hitKind, ProjectileDamage damage)
{
if (Time.time < _lastHitTime + _minHitDelay)
{
return;
}
_lastHitTime = Time.time;
InflictDamage(damage.DamageValue);
Log.Info("particle spawned");
DamageParticleEffect.SpawnDamageNumber((int)damage.DamageValue, damage.ImpactDirection);
_body.AddForce(damage.ImpactDirection * damage.ImpactMagnitude, ForceMode.Impulse);
if ((this as IDamageable).IsKilled())
{
MatchManager.G.UpdateMatchCondition(new MatchConditionUpdate
{
Condition = WinCondition.Lives,
Ship = this,
Count = -1
});
}
}
void UpdateSounds() void UpdateSounds()
{ {
if (MatchManager.G.matchState != MatchState.Match || State.IsFrozen) if (MatchManager.G.matchState != MatchState.Match || State.IsFrozen)
@ -440,7 +507,7 @@ public class Ship : MonoBehaviour, IHUDOwner
SmokeTrailEffect.Play(); SmokeTrailEffect.Play();
if (JetFlameEffect.isPlaying) if (JetFlameEffect.isPlaying)
JetFlameEffect.transform.localScale = new Vector3(1.3f, 2, 1); JetFlameEffect.transform.localScale = new Vector3(1.3f, 2, 1);
sounds[Booster].PlayAudio(false, true); sounds[Booster].PlayAudio(false, 0.1f, true);
} }
else else
{ {
@ -450,12 +517,12 @@ public class Ship : MonoBehaviour, IHUDOwner
} }
if (_isTackled && !_isCriticalTackle) if (_isTackled && !_isCriticalTackle)
{ {
sounds[Tackling].PlayAudio(false, true); sounds[Tackling].PlayAudio(false, 0, true);
CameraOperator.ShakeCam(0.2f); CameraOperator.ShakeCam(0.2f);
} }
if (_isCriticalTackle) if (_isCriticalTackle)
{ {
sounds[TacklingCritical].PlayAudio(false, true); sounds[TacklingCritical].PlayAudio(false, 0, true);
CameraOperator.ShakeCam(0.4f); CameraOperator.ShakeCam(0.4f);
} }
if (!_isTackled) if (!_isTackled)
@ -485,22 +552,58 @@ public class Ship : MonoBehaviour, IHUDOwner
{ {
return; return;
} }
if (!GravityEffect.isPlaying && State.currentGravity != Vector3.zero) if (!GravityEffect.isPlaying && State.CurrentGravity != Vector3.zero)
{ {
GravityEffect.Play(); GravityEffect.Play();
} }
else if (State.currentGravity == Vector3.zero) else if (State.CurrentGravity == Vector3.zero)
{ {
GravityEffect.Stop(); GravityEffect.Stop();
} }
if (GravityEffect.isPlaying) if (GravityEffect.isPlaying)
{ {
float gravityAngle = float gravityAngle =
Vector3.SignedAngle(transform.parent.up, State.currentGravity, transform.forward); Vector3.SignedAngle(transform.parent.up, State.CurrentGravity, transform.forward);
GravityEffect.gameObject.transform.localEulerAngles = GravityEffect.gameObject.transform.localEulerAngles =
new Vector3(0, 0, gravityAngle - transform.localEulerAngles.z); new Vector3(0, 0, gravityAngle - transform.localEulerAngles.z);
} }
} }
public void EquipWeapon(WeaponEffect weapon)
{
if (equippedWeapon != WeaponEffect.None)
{
_fireController.Stop();
}
equippedWeapon = weapon;
}
public float CurrentHealth()
{
return State.RemainingHealth;
}
public float MaximumHealth()
{
return Props.MaximumHealth;
}
public void SetHealth(float totalValue)
{
State.RemainingHealth = totalValue;
LifeUpdated?.Invoke(CurrentHealth() / MaximumHealth());
}
public void InflictDamage(float damageValue)
{
SetHealth(CurrentHealth() - damageValue);
}
public void ReplenishHealth(float healValue)
{
SetHealth(CurrentHealth() + healValue);
}
} }

View File

@ -1,4 +1,3 @@
using FishNet.Object.Prediction;
using UnityEngine; using UnityEngine;
namespace ShipHandling namespace ShipHandling
@ -13,5 +12,6 @@ namespace ShipHandling
public float shootInput = 0; public float shootInput = 0;
// Saves the current input for steering // Saves the current input for steering
public float steerInput = 0; public float steerInput = 0;
public Vector2 radialInput = new Vector2();
} }
} }

View File

@ -9,12 +9,12 @@ namespace ShipHandling
/// </summary> /// </summary>
public class ShipState public class ShipState
{ {
public float boostCapacity; public float BoostCapacity;
public Vector3 currentGravity = new Vector3(); public Vector3 CurrentGravity = new Vector3();
public float RemainingHealth = 1;
public bool IsFrozen = false; public bool IsFrozen = false;
public bool IsFiring = false; public bool IsFiring = false;
public Zone Zone; public Zone Zone;
public bool reset = false;
} }
public struct ReplicateData : IReplicateData public struct ReplicateData : IReplicateData

View File

@ -0,0 +1,71 @@
using PrimeTween;
using TMPro;
using UnityEngine;
public class DamageNumberParticles : MonoBehaviour
{
public TextMeshProUGUI TextMesh;
public Camera TextCamera;
private CanvasRenderer _textRenderer;
private ParticleSystem _damageParticles;
private RenderTexture _renderTexture;
private MaterialPropertyBlock _particleMaterialProps;
private ParticleSystemRenderer _particleRenderer;
private int _lastDamageNumber = -1;
void Awake()
{
_damageParticles = gameObject.GetComponent<ParticleSystem>();
_particleRenderer = gameObject.GetComponent<ParticleSystemRenderer>();
_textRenderer = TextMesh.canvasRenderer;
_particleMaterialProps = new();
_particleRenderer.GetPropertyBlock(_particleMaterialProps, 0);
_renderTexture = new RenderTexture(256, 256, 24);
TextCamera.targetTexture = _renderTexture;
}
void Start()
{
WaitForScene();
}
async void WaitForScene()
{
await Tween.Delay(1f);
SetDamageNumber(100);
}
public void SpawnDamageNumber(int damageValue, Vector3 direction)
{
SetDamageNumber(damageValue);
var particleVelocity = _damageParticles.velocityOverLifetime;
particleVelocity.x = direction.x;
particleVelocity.y = direction.y;
particleVelocity.z = direction.z;
_damageParticles.Emit(1);
}
void SetDamageNumber(int number)
{
if (_lastDamageNumber == number) return;
TextMesh.text = number.ToString();
TextCamera.enabled = true;
TextCamera.Render();
Texture2D texture2D = new(_renderTexture.width, _renderTexture.height);
RenderTexture.active = _renderTexture;
texture2D.ReadPixels(new Rect(0, 0, _renderTexture.width, _renderTexture.height), 0, 0);
texture2D.Apply();
_particleMaterialProps.SetTexture("_MainTex", texture2D);
_particleRenderer.SetPropertyBlock(_particleMaterialProps);
TextCamera.enabled = false;
_lastDamageNumber = number;
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 7f5b9ad63738dc8438abe06fa4b82dc1
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,62 @@
using System.Collections.Generic;
using System.Reflection;
using log4net;
using UnityEngine;
public class ForceField : MonoBehaviour
{
private static ILog Log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
[Tooltip("Multiplied by the current gravity strength factor for the ship.")]
[Range(0, 10)]
public float StrengthFactor = 2;
private List<Ship> ships = new();
private void FixedUpdate()
{
foreach (Ship ship in ships)
{
// Direction towards center
var direction = transform.up;
ship._body.AddForce(direction * ship.Props.GravitStrength * StrengthFactor
, ForceMode.Acceleration);
}
}
/// <summary>
/// Adds a ship to the force field when in range
/// </summary>
/// <param name="collider"></param>
private void OnTriggerEnter(Collider collider)
{
if (collider.tag == "Ship")
{
if (!collider.TryGetComponent(out Ship shipComponent))
{
Log.Error($"Collider: {collider} was tagged as Ship, but has no Ship component.");
return;
}
ships.Add(shipComponent);
}
}
/// <summary>
/// Removes the player when he leaves the force field
/// </summary>
/// <param name="collider"></param>
private void OnTriggerExit(Collider collider)
{
if (collider.tag == "Ship")
{
if (!collider.TryGetComponent(out Ship shipComponent))
{
Log.Error($"Collider: {collider} was tagged as Ship, but has no Ship component.");
return;
}
ships.Remove(shipComponent);
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 344137e81b4982b429d7219014ad15dd
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -6,7 +6,6 @@ using static GravityFunctionality.GravityHelpers;
namespace GravityFunctionality namespace GravityFunctionality
{ {
[ExecuteInEditMode]
public class GravityChanger : MonoBehaviour public class GravityChanger : MonoBehaviour
{ {
private static ILog Log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); private static ILog Log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);

View File

@ -0,0 +1,22 @@
using System;
public interface IDamageable
{
public float CurrentHealth();
public float MaximumHealth();
public void InflictDamage(float damageValue);
public void ReplenishHealth(float healValue);
public void SetHealth(float totalValue);
public bool IsKilled()
{
if (CurrentHealth() <= 0)
{
return true;
}
return false;
}
public void ResetHealth()
{
SetHealth(MaximumHealth());
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 9cbbe26f5375961499fe3a2efe12c559
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,4 +1,7 @@
using System;
public interface IHUDOwner public interface IHUDOwner
{ {
public BoostCapacityUI BoostUI { get; set; } public event Action<float> BoostUpdated;
public event Action<float> LifeUpdated;
} }

View File

@ -0,0 +1,25 @@
using System.Collections;
using System.Collections.Generic;
using PrimeTween;
using UnityEngine;
[ExecuteInEditMode]
public class Indicator3D : MonoBehaviour
{
void OnEnable()
{
WaitTillSpawnThenAnimate();
}
private async void WaitTillSpawnThenAnimate()
{
await Tween.Delay(0.1f);
Sequence.Create(cycles: -1, CycleMode.Rewind, Ease.Default)
.Group(Tween.LocalPosition(gameObject.transform,
gameObject.transform.localPosition - Vector3.forward * 0.001f, 4))
.Group(Tween.LocalRotation(gameObject.transform,
gameObject.transform.localRotation * Quaternion.AngleAxis(180, Vector3.forward), 4));
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: ed8517591bfdc6b4398d396bc386d5a2
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,4 +1,5 @@
using System; using System;
using UnityEngine;
using UnityEngine.InputSystem; using UnityEngine.InputSystem;
using UnityEngine.InputSystem.Users; using UnityEngine.InputSystem.Users;
using static InputActionMaps; using static InputActionMaps;
@ -56,6 +57,10 @@ namespace ShipHandling
{ {
input.shootInput = context.ReadValue<float>(); input.shootInput = context.ReadValue<float>();
} }
public void OnRadial(InputAction.CallbackContext context)
{
input.radialInput = context.ReadValue<Vector2>();
}
public void Dispose() public void Dispose()
{ {

View File

@ -0,0 +1,24 @@
using System;
using TMPro;
using UnityEngine;
public class LifeMeter : MonoBehaviour
{
[HideInInspector]
public int PlayerNumber = -1;
private TextMeshProUGUI _lifeText;
void Awake()
{
_lifeText = gameObject.GetComponent<TextMeshProUGUI>();
}
public void UpdateHealth(int value)
{
UpdateText(value);
}
private void UpdateText(int value)
{
_lifeText.text = value.ToString();
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: ca4b5af4504b25345b1081a075056a23
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -56,7 +56,7 @@ public class ManageableAudio : MonoBehaviour
/// </summary> /// </summary>
/// <param name="playLooping">Should the sound loop</param> /// <param name="playLooping">Should the sound loop</param>
/// <param name="isOneShot">Play sound only once until reset</param> /// <param name="isOneShot">Play sound only once until reset</param>
public void PlayAudio(bool playLooping, bool isOneShot = false) public void PlayAudio(bool playLooping, float randomPitchRange = 0f, bool isOneShot = false)
{ {
if (AudioSource == null if (AudioSource == null
|| IsUpdating || IsUpdating
@ -71,6 +71,11 @@ public class ManageableAudio : MonoBehaviour
} }
AudioSource.enabled = true; AudioSource.enabled = true;
AudioSource.loop = playLooping; AudioSource.loop = playLooping;
if (randomPitchRange != 0)
{
AudioSource.pitch =
UnityEngine.Random.Range(initialPitch - randomPitchRange, initialPitch + randomPitchRange);
}
AudioSource.Play(); AudioSource.Play();
} }

View File

@ -20,7 +20,7 @@ public class AffectingForcesManager : MonoBehaviour
return zoneInhabitants[id]; return zoneInhabitants[id];
} }
public void IntroduceImpulseForce(int instanceID, Vector3 force) public void IntroduceForce(int instanceID, Vector3 force)
{ {
if (!impulseForces.ContainsKey(instanceID)) if (!impulseForces.ContainsKey(instanceID))
{ {
@ -43,7 +43,7 @@ public class AffectingForcesManager : MonoBehaviour
currentGravitySource[instanceID] = gravitySource; currentGravitySource[instanceID] = gravitySource;
} }
public Vector3 GetImpulseForInstance(int instanceID) public Vector3 GetForceForInstance(int instanceID)
{ {
if (impulseForces.ContainsKey(instanceID)) if (impulseForces.ContainsKey(instanceID))
{ {

View File

@ -179,6 +179,11 @@ public class ControlSchemeDetection : IPlayerActions
readControlScheme(context); readControlScheme(context);
} }
public void OnRadial(InputAction.CallbackContext context)
{
readControlScheme(context);
}
public void OnSteer(InputAction.CallbackContext context) public void OnSteer(InputAction.CallbackContext context)
{ {
readControlScheme(context); readControlScheme(context);
@ -205,4 +210,5 @@ public class ControlSchemeDetection : IPlayerActions
ControlSchemeDetected.Invoke(this, new UniqueControl(controlScheme, ControlSchemeDetected.Invoke(this, new UniqueControl(controlScheme,
context.control.device.deviceId)); context.control.device.deviceId));
} }
} }

View File

@ -185,7 +185,6 @@ namespace Managers
MatchCamera.GetComponent<CameraOperator>().RemoveCharacter(mps.Key.spawnedCharacter); MatchCamera.GetComponent<CameraOperator>().RemoveCharacter(mps.Key.spawnedCharacter);
mps.Key.spawnedCharacter.TryGetComponent(out Ship ship); mps.Key.spawnedCharacter.TryGetComponent(out Ship ship);
ship.State.IsFrozen = true; ship.State.IsFrozen = true;
ship.BoostUI.SetIsOut(mps.Key);
} }
} }
} }
@ -444,11 +443,13 @@ namespace Managers
shipGO.TryGetComponent(out Ship ship); shipGO.TryGetComponent(out Ship ship);
shipGO.TryGetComponent(out Rigidbody body); shipGO.TryGetComponent(out Rigidbody body);
ship.BoostUI.SetIsIn(mp);
MatchCamera.GetComponent<CameraOperator>().AddCharacter(shipGO); MatchCamera.GetComponent<CameraOperator>().AddCharacter(shipGO);
ship.State.IsFrozen = false; ship.State.IsFrozen = false;
ship.State.boostCapacity = ship.Props.MaxBoostCapacity; ship.State.BoostCapacity = ship.Props.MaxBoostCapacity;
ship.SetHealth(ship.Props.MaximumHealth);
ship.EquipWeapon(FORGE3D.WeaponEffect.None);
body.velocity = Vector3.zero; body.velocity = Vector3.zero;

View File

@ -29,13 +29,13 @@ namespace Managers
public void AddFreeFlightScore(int score) public void AddFreeFlightScore(int score)
{ {
FreeFlightScore += score; FreeFlightScore += score;
UIManager.G.hUD.UpdateScore(FreeFlightScore); UIManager.G.HUD.UpdateScore(FreeFlightScore);
} }
public void ResetScore() public void ResetScore()
{ {
FreeFlightScore = 0; FreeFlightScore = 0;
UIManager.G.hUD.UpdateScore(FreeFlightScore); UIManager.G.HUD.UpdateScore(FreeFlightScore);
} }
} }
} }

View File

@ -1,5 +1,6 @@
using System.Collections.Generic; using System.Collections.Generic;
using System.Reflection; using System.Reflection;
using GameKit.Dependencies.Utilities;
using log4net; using log4net;
using UnityEngine; using UnityEngine;
@ -12,12 +13,14 @@ namespace Managers
{ {
private static ILog Log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); private static ILog Log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
[SerializeField] public bool IsUIActiveScene { get; set; } [SerializeField] public bool IsUIActiveScene { get; set; }
public HUD hUD { get; private set; } public HUD HUD { get; private set; }
public Announcments Announcments { get; private set; } public Announcments Announcments { get; private set; }
public PauseMenu PauseMenu { get; private set; } public PauseMenu PauseMenu { get; private set; }
public MatchEndMenu MatchEndMenu { get; private set; } public MatchEndMenu MatchEndMenu { get; private set; }
public OffScreenIndicatorManager OffScreenManager;
public ManageableAudio MatchMusic; public ManageableAudio MatchMusic;
/// <summary> /// <summary>
/// Globally accessible member to use manager with. /// Globally accessible member to use manager with.
/// </summary> /// </summary>
@ -42,7 +45,7 @@ namespace Managers
public bool StartManagingHUD() public bool StartManagingHUD()
{ {
if (hUD == null) if (HUD == null)
{ {
GameObject go = GameObject.Find("HUD"); GameObject go = GameObject.Find("HUD");
if (go == null) if (go == null)
@ -50,7 +53,7 @@ namespace Managers
Log.Error("Could not find HUD GameObject in loaded scenes!"); Log.Error("Could not find HUD GameObject in loaded scenes!");
return false; return false;
} }
hUD = go.GetComponent<HUD>(); HUD = go.GetComponent<HUD>();
} }
return true; return true;
} }
@ -105,9 +108,34 @@ namespace Managers
foreach (Player p in players) foreach (Player p in players)
{ {
IHUDOwner s = p.spawnedCharacter.GetComponent<IHUDOwner>(); IHUDOwner s = p.spawnedCharacter.GetComponent<IHUDOwner>();
s.BoostUI = hUD.boostCapacities[p.playerNumber - 1].GetComponent<BoostCapacityUI>(); // var BoostUI = HUD.boostCapacities[p.playerNumber - 1].GetComponent<BoostCapacityUI>();
s.BoostUI.SetPlayerName(p); // BoostUI.SetPlayerName(p);
s.BoostUI.gameObject.SetActive(true); // BoostUI.gameObject.SetActive(true);
// s.BoostUpdated += BoostUI.UpdateFill;
GameObject lm = Instantiate(HUD.LifeMeter);
Vector3 pos = lm.transform.localPosition;
Vector3 angles = lm.transform.localEulerAngles;
Vector3 scale = lm.transform.localScale;
lm.transform.SetParent(p.spawnedCharacter.transform);
lm.transform.localPosition = pos;
lm.transform.localEulerAngles = angles;
lm.transform.localScale = scale;
var LifeMeter = lm.GetComponent<SegmentIndicator>();
s.LifeUpdated += LifeMeter.SetFill;
GameObject bm = Instantiate(HUD.BoostMeter);
pos = bm.transform.localPosition;
angles = bm.transform.localEulerAngles;
scale = bm.transform.localScale;
bm.transform.SetParent(p.spawnedCharacter.transform);
bm.transform.localPosition = pos;
bm.transform.localEulerAngles = angles;
bm.transform.localScale = scale;
var BoostMeter = bm.GetComponent<SegmentIndicator>();
s.BoostUpdated += BoostMeter.SetFill;
OffScreenManager.AddTarget(p.spawnedCharacter, p.character.ShipHullColor);
} }
// TODO: This belongs somewhere? // TODO: This belongs somewhere?
MatchMusic = AudioManager.G.GetGlobalSoundRandom("match_music", true); MatchMusic = AudioManager.G.GetGlobalSoundRandom("match_music", true);
@ -118,7 +146,7 @@ namespace Managers
{ {
foreach (int playerNumber in unassignedPlayers.Keys) foreach (int playerNumber in unassignedPlayers.Keys)
{ {
hUD.StartJoinPrompt(unassignedPlayers[playerNumber]); HUD.StartJoinPrompt(unassignedPlayers[playerNumber]);
} }
} }
@ -133,34 +161,34 @@ namespace Managers
public void ShowPauseMenu(Transform transform) public void ShowPauseMenu(Transform transform)
{ {
hUD?.Hide(); HUD?.Hide();
PauseMenu?.Show(transform); PauseMenu?.Show(transform);
} }
public void HidePauseMenu() public void HidePauseMenu()
{ {
PauseMenu?.Hide(); PauseMenu?.Hide();
hUD?.Show(); HUD?.Show();
} }
public void ShowMatchEndMenu(Transform transform) public void ShowMatchEndMenu(Transform transform)
{ {
hUD?.Hide(); HUD?.Hide();
MatchEndMenu?.Show(transform); MatchEndMenu?.Show(transform);
} }
public void HideMatchEndMenu() public void HideMatchEndMenu()
{ {
MatchEndMenu?.Hide(); MatchEndMenu?.Hide();
hUD?.Show(); HUD?.Show();
} }
public void ShowHUD() public void ShowHUD()
{ {
hUD?.Show(); HUD?.Show();
} }
public void HideHUD() public void HideHUD()
{ {
hUD?.Hide(); HUD?.Hide();
} }
} }
} }

View File

@ -8,9 +8,11 @@ using UnityEngine;
/// </summary> /// </summary>
public class HUD : MonoBehaviour public class HUD : MonoBehaviour
{ {
public BoostCapacityUI[] boostCapacities; // public BoostCapacityUI[] boostCapacities;
public JoinPrompt[] joinPrompts; public JoinPrompt[] joinPrompts;
public TextMeshProUGUI score; public TextMeshProUGUI score;
public GameObject LifeMeter;
public GameObject BoostMeter;
private Canvas canvas; private Canvas canvas;

View File

@ -64,7 +64,7 @@ public class MatchEndMenu : MonoBehaviour
public void OnRematch() public void OnRematch()
{ {
MatchManager.G.StartRematch(); MatchManager.G.StartRematch();
UIManager.G.hUD?.Show(); UIManager.G.HUD?.Show();
Hide(); Hide();
} }

View File

@ -0,0 +1,120 @@
using System;
using System.Collections.Generic;
using System.Linq;
using Managers;
using UnityEngine;
public class OffScreenIndicatorManager : MonoBehaviour
{
public GameObject[] Targets;
public GameObject IndicatorPrefab;
public Color DefaultColor = Color.yellow;
private MeshRenderer _meshRenderer;
private Camera _camera;
private Dictionary<GameObject, GameObject> _targetIndicators = new();
// Start is called before the first frame update
void Start()
{
_camera = Camera.main;
foreach (var target in Targets)
AddTarget(target);
}
// Update is called once per frame
void Update()
{
if (_camera == null)
{
if (Camera.main != null)
_camera = Camera.main;
return;
}
bool targetRemoved = false;
foreach (KeyValuePair<GameObject, GameObject> entry in _targetIndicators)
{
var target = entry.Key;
var indicator = entry.Value;
if (target != null)
{
UpdateTarget(target, indicator);
}
else
{
targetRemoved = true;
}
}
if (!targetRemoved)
return;
GameObject[] targets = _targetIndicators.Keys.ToArray();
for (int i = 0; i < targets.Count(); ++i)
{
if (targets[i] == null)
{
Destroy(_targetIndicators[targets[i]]);
_targetIndicators.Remove(targets[i]);
}
}
}
public void AddTarget(GameObject target)
{
AddTarget(target, DefaultColor);
}
public void AddTarget(GameObject target, Color color)
{
var indicator = Instantiate(IndicatorPrefab);
_meshRenderer = indicator.GetComponentInChildren<MeshRenderer>();
indicator.SetActive(false);
indicator.transform.SetParent(_camera.transform);
_targetIndicators.Add(target, indicator);
MaterialPropertyBlock materialPropertyBlock = new();
materialPropertyBlock.SetColor("_BaseColor", color);
_meshRenderer.SetPropertyBlock(materialPropertyBlock);
}
private void UpdateTarget(GameObject target, GameObject indicator)
{
if (MatchManager.G.matchState != MatchState.Match || target == null
|| !target.activeInHierarchy)
{
indicator.SetActive(false);
return;
}
var screenPos = _camera.WorldToViewportPoint(target.transform.position);
bool isOffScreen = screenPos.x <= 0 || screenPos.x >= 1 ||
screenPos.y <= 0 || screenPos.y >= 1;
if (!isOffScreen)
{
indicator.SetActive(false);
return;
}
indicator.SetActive(true);
float margin_x = 0.05f;
float margin_y = 0.05f;
screenPos.x = Mathf.Clamp(screenPos.x, margin_x, 1 - margin_x);
screenPos.y = Mathf.Clamp(screenPos.y, margin_y, 1 - margin_y);
screenPos.z = Mathf.Clamp(screenPos.z, 0, 1);
var worldPosition = _camera.ViewportToWorldPoint(screenPos);
var cameraDirection = _camera.transform.position - worldPosition;
indicator.transform.position = worldPosition;
var virtualIndicatorPosition = worldPosition + _camera.transform.localPosition.z * cameraDirection;
Vector3 direction = target.transform.position - virtualIndicatorPosition;
indicator.transform.rotation = Quaternion.FromToRotation(new Vector3(0, 0, 1), direction);
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 2a453b9260772e8488c230aa7eeca5ff
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,50 @@
using System;
using System.Collections;
using System.Collections.Generic;
using Unity.Mathematics;
using UnityEngine;
using UnityEngine.UI;
[ExecuteInEditMode]
public class SegmentIndicator : MonoBehaviour
{
public List<Image> SegmentImages;
public Color color;
private float _currentFill = 1;
void Start()
{
foreach (Image i in SegmentImages)
{
i.color = color;
}
}
public void SetFill(float value)
{
_currentFill = value;
float totalResultFill = value * SegmentImages.Count;
int targetSegment = (int)Math.Truncate(totalResultFill);
float targetSegmentFill = totalResultFill - targetSegment;
for (int i = 0; i < SegmentImages.Count; i++)
{
if (i < targetSegment)
{
SegmentImages[i].fillAmount = 1;
continue;
}
if (i > targetSegment)
{
SegmentImages[i].fillAmount = 0;
continue;
}
SegmentImages[i].fillAmount = targetSegmentFill;
}
}
}

View File

@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 9a5d49dfaf5356b4fa8f481c5f832213
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -12,7 +12,7 @@ https://github.com/Unity-Technologies/Graphics/blob/master/Packages/com.unity.re
// You can spawn and edit a ripple on the surface manually over the inspector // You can spawn and edit a ripple on the surface manually over the inspector
// or use the properties accessible via script, to spawn and animate up to 5 waves simultaneously. // or use the properties accessible via script, to spawn and animate up to 5 waves simultaneously.
Shader "CustomShaders/GlossyPBRRipples" { Shader "CustomShaders/URPLitRipples" {
Properties { Properties {
// In the regular URP shaders provided by unity, a custom shader GUI manages // In the regular URP shaders provided by unity, a custom shader GUI manages

View File

@ -0,0 +1,72 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1107 &-2602967340271623804
AnimatorStateMachine:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Base Layer
m_ChildStates:
- serializedVersion: 1
m_State: {fileID: 7658566830235223166}
m_Position: {x: 200, y: 0, z: 0}
m_ChildStateMachines: []
m_AnyStateTransitions: []
m_EntryTransitions: []
m_StateMachineTransitions: {}
m_StateMachineBehaviours: []
m_AnyStatePosition: {x: 50, y: 20, z: 0}
m_EntryPosition: {x: 50, y: 120, z: 0}
m_ExitPosition: {x: 800, y: 120, z: 0}
m_ParentStateMachinePosition: {x: 800, y: 20, z: 0}
m_DefaultState: {fileID: 7658566830235223166}
--- !u!91 &9100000
AnimatorController:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Spaceship9_Hull
serializedVersion: 5
m_AnimatorParameters: []
m_AnimatorLayers:
- serializedVersion: 5
m_Name: Base Layer
m_StateMachine: {fileID: -2602967340271623804}
m_Mask: {fileID: 0}
m_Motions: []
m_Behaviours: []
m_BlendingMode: 0
m_SyncedLayerIndex: -1
m_DefaultWeight: 0
m_IKPass: 0
m_SyncedLayerAffectsTiming: 0
m_Controller: {fileID: 9100000}
--- !u!1102 &7658566830235223166
AnimatorState:
serializedVersion: 6
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: ShipDeath
m_Speed: 1
m_CycleOffset: 0
m_Transitions: []
m_StateMachineBehaviours: []
m_Position: {x: 50, y: 50, z: 0}
m_IKOnFeet: 0
m_WriteDefaultValues: 1
m_Mirror: 0
m_SpeedParameterActive: 0
m_MirrorParameterActive: 0
m_CycleOffsetParameterActive: 0
m_TimeParameterActive: 0
m_Motion: {fileID: 7400000, guid: 067a1c656ca2031478f9dcf5add13e8b, type: 2}
m_Tag:
m_SpeedParameter:
m_MirrorParameter:
m_CycleOffsetParameter:
m_TimeParameter:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 288d962b3e5cba741ab4306071882ee7
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 9100000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,111 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: FiraCode-Bold SDF - Bloom
m_Shader: {fileID: 4800000, guid: 68e6db2ebdc24f95958faec2be5558d6, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords:
- GLOW_ON
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _Cube:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _FaceTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 2297055238097788391, guid: 6c1a8bee20f1d004a92b6a8f016d4fe5, type: 2}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OutlineTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 1, y: 1}
m_Ints: []
m_Floats:
- _Ambient: 1
- _Bevel: 0.5
- _BevelClamp: 0
- _BevelOffset: 0
- _BevelRoundness: 0
- _BevelWidth: 0
- _BumpFace: 0
- _BumpOutline: 0
- _ColorMask: 15
- _CullMode: 0
- _Diffuse: 0.437
- _FaceDilate: 0
- _FaceUVSpeedX: 0
- _FaceUVSpeedY: 0
- _GlowInner: 0.226
- _GlowOffset: 0
- _GlowOuter: 1
- _GlowPower: 0.531
- _GradientScale: 6
- _LightAngle: 3.23
- _MaskSoftnessX: 0
- _MaskSoftnessY: 0
- _OutlineSoftness: 0
- _OutlineUVSpeedX: 0
- _OutlineUVSpeedY: 0
- _OutlineWidth: 0
- _PerspectiveFilter: 0.875
- _Reflectivity: 5
- _ScaleRatioA: 0.8333333
- _ScaleRatioB: 0.6770833
- _ScaleRatioC: 0.6770833
- _ScaleX: 1
- _ScaleY: 1
- _ShaderFlags: 0
- _Sharpness: -0
- _SpecularPower: 0
- _Stencil: 0
- _StencilComp: 8
- _StencilOp: 0
- _StencilReadMask: 255
- _StencilWriteMask: 255
- _TextureHeight: 512
- _TextureWidth: 512
- _UnderlayDilate: 0
- _UnderlayOffsetX: 0
- _UnderlayOffsetY: 0
- _UnderlaySoftness: 0
- _VertexOffsetX: 1
- _VertexOffsetY: 1
- _WeightBold: 0.75
- _WeightNormal: 0
m_Colors:
- _ClipRect: {r: -32767, g: -32767, b: 32767, a: 32767}
- _EnvMatrixRotation: {r: 0, g: 0, b: 0, a: 0}
- _FaceColor: {r: 84.44851, g: 84.44851, b: 84.44851, a: 1}
- _GlowColor: {r: 0.4339623, g: 0.4339623, b: 0.4339623, a: 0.5}
- _MaskCoord: {r: 0, g: 0, b: 32767, a: 32767}
- _OutlineColor: {r: 0, g: 0, b: 0, a: 1}
- _ReflectFaceColor: {r: 0, g: 0, b: 0, a: 1}
- _ReflectOutlineColor: {r: 0, g: 0, b: 0, a: 1}
- _SpecularColor: {r: 1, g: 1, b: 1, a: 1}
- _UnderlayColor: {r: 0, g: 0, b: 0, a: 0.5}
m_BuildTextureStacks: []

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: c7962198e7250ac4aa49ada46a887571
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

View File

@ -2750,8 +2750,7 @@ Material:
m_Shader: {fileID: 4800000, guid: 68e6db2ebdc24f95958faec2be5558d6, type: 3} m_Shader: {fileID: 4800000, guid: 68e6db2ebdc24f95958faec2be5558d6, type: 3}
m_Parent: {fileID: 0} m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0 m_ModifiedSerializedProperties: 0
m_ValidKeywords: m_ValidKeywords: []
- BEVEL_ON
m_InvalidKeywords: [] m_InvalidKeywords: []
m_LightmapFlags: 4 m_LightmapFlags: 4
m_EnableInstancingVariants: 0 m_EnableInstancingVariants: 0
@ -2782,7 +2781,7 @@ Material:
- _OutlineTex: - _OutlineTex:
m_Texture: {fileID: 0} m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1} m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0} m_Offset: {x: 1, y: 1}
m_Ints: [] m_Ints: []
m_Floats: m_Floats:
- _Ambient: 1 - _Ambient: 1
@ -2799,10 +2798,10 @@ Material:
- _FaceDilate: 0 - _FaceDilate: 0
- _FaceUVSpeedX: 0 - _FaceUVSpeedX: 0
- _FaceUVSpeedY: 0 - _FaceUVSpeedY: 0
- _GlowInner: 0.05 - _GlowInner: 0.226
- _GlowOffset: 0 - _GlowOffset: 0
- _GlowOuter: 0.05 - _GlowOuter: 1
- _GlowPower: 0.75 - _GlowPower: 0.531
- _GradientScale: 6 - _GradientScale: 6
- _LightAngle: 3.23 - _LightAngle: 3.23
- _MaskSoftnessX: 0 - _MaskSoftnessX: 0
@ -2819,7 +2818,7 @@ Material:
- _ScaleX: 1 - _ScaleX: 1
- _ScaleY: 1 - _ScaleY: 1
- _ShaderFlags: 0 - _ShaderFlags: 0
- _Sharpness: 0 - _Sharpness: -0
- _SpecularPower: 0 - _SpecularPower: 0
- _Stencil: 0 - _Stencil: 0
- _StencilComp: 8 - _StencilComp: 8
@ -2832,15 +2831,15 @@ Material:
- _UnderlayOffsetX: 0 - _UnderlayOffsetX: 0
- _UnderlayOffsetY: 0 - _UnderlayOffsetY: 0
- _UnderlaySoftness: 0 - _UnderlaySoftness: 0
- _VertexOffsetX: 0 - _VertexOffsetX: 1
- _VertexOffsetY: 0 - _VertexOffsetY: 1
- _WeightBold: 0.75 - _WeightBold: 0.75
- _WeightNormal: 0 - _WeightNormal: 0
m_Colors: m_Colors:
- _ClipRect: {r: -32767, g: -32767, b: 32767, a: 32767} - _ClipRect: {r: -32767, g: -32767, b: 32767, a: 32767}
- _EnvMatrixRotation: {r: 0, g: 0, b: 0, a: 0} - _EnvMatrixRotation: {r: 0, g: 0, b: 0, a: 0}
- _FaceColor: {r: 1.319508, g: 1.319508, b: 1.319508, a: 1} - _FaceColor: {r: 1.4980394, g: 1.4980394, b: 1.4980394, a: 1}
- _GlowColor: {r: 0, g: 1, b: 0, a: 0.5} - _GlowColor: {r: 0.4339623, g: 0.4339623, b: 0.4339623, a: 0.5}
- _MaskCoord: {r: 0, g: 0, b: 32767, a: 32767} - _MaskCoord: {r: 0, g: 0, b: 32767, a: 32767}
- _OutlineColor: {r: 0, g: 0, b: 0, a: 1} - _OutlineColor: {r: 0, g: 0, b: 0, a: 1}
- _ReflectFaceColor: {r: 0, g: 0, b: 0, a: 1} - _ReflectFaceColor: {r: 0, g: 0, b: 0, a: 1}

Binary file not shown.

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: cba0c70a2ad5c8e4c99a3097986dddd3
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -2,7 +2,7 @@
"dependencies": { "dependencies": {
"com.gasgiant.camera-shake": "https://github.com/gasgiant/Camera-Shake.git#upm", "com.gasgiant.camera-shake": "https://github.com/gasgiant/Camera-Shake.git#upm",
"com.kyrylokuzyk.primetween": "file:../Assets/Plugins/PrimeTween/internal/com.kyrylokuzyk.primetween.tgz", "com.kyrylokuzyk.primetween": "file:../Assets/Plugins/PrimeTween/internal/com.kyrylokuzyk.primetween.tgz",
"com.singularitygroup.hotreload": "git+https://gitlab.hotreload.net/root/hot-reload-releases.git", "com.singularitygroup.hotreload": "git+https://gitlab.hotreload.net/root/hot-reload-releases.git#1.12.10",
"com.unity.2d.sprite": "1.0.0", "com.unity.2d.sprite": "1.0.0",
"com.unity.adaptiveperformance": "5.0.2", "com.unity.adaptiveperformance": "5.0.2",
"com.unity.cloud.gltfast": "6.0.1", "com.unity.cloud.gltfast": "6.0.1",

View File

@ -14,14 +14,14 @@
"dependencies": {} "dependencies": {}
}, },
"com.singularitygroup.hotreload": { "com.singularitygroup.hotreload": {
"version": "git+https://gitlab.hotreload.net/root/hot-reload-releases.git", "version": "git+https://gitlab.hotreload.net/root/hot-reload-releases.git#1.12.10",
"depth": 0, "depth": 0,
"source": "git", "source": "git",
"dependencies": { "dependencies": {
"com.unity.ugui": "1.0.0", "com.unity.ugui": "1.0.0",
"com.unity.modules.unitywebrequest": "1.0.0" "com.unity.modules.unitywebrequest": "1.0.0"
}, },
"hash": "15115347b80179b483f7f4022c18fe48604dee8d" "hash": "718d71c8e79b15ee45341fe5bc3a24148904f9e9"
}, },
"com.unity.2d.sprite": { "com.unity.2d.sprite": {
"version": "1.0.0", "version": "1.0.0",

View File

@ -140,7 +140,9 @@ PlayerSettings:
visionOSBundleVersion: 1.0 visionOSBundleVersion: 1.0
tvOSBundleVersion: 1.0 tvOSBundleVersion: 1.0
bundleVersion: 0.1 bundleVersion: 0.1
preloadedAssets: [] preloadedAssets:
- {fileID: 11400000, guid: 7d6dd64b5f2213d4f8cc395ae58ffb43, type: 2}
- {fileID: -4938997134116425971, guid: 4b98f800e99c70140ac675a637d71d3a, type: 2}
metroInputSource: 0 metroInputSource: 0
wsaTransparentSwapchain: 0 wsaTransparentSwapchain: 0
m_HolographicPauseOnTrackingLoss: 1 m_HolographicPauseOnTrackingLoss: 1

View File

@ -20,7 +20,7 @@ TagManager:
- Collider - Collider
- Detector - Detector
- Character - Character
- - SeperatlyRendered
- -
- -
- -