From f4887be792903fdfb12e7f2756bcc2ceb2f61c3c Mon Sep 17 00:00:00 2001 From: Stedd Date: Sun, 18 Sep 2022 11:47:55 +0200 Subject: [PATCH] Updates *Changed assemblydefinitions *Added Enemy *Turrets target enemies --- ...ntities.Enemies.asmdef.meta => Drone.meta} | 5 +- Assets/Entities/Enemies/Enemy.prefab | 647 ++++++++++++++---- Assets/Entities/Enemies/EnemyHandler.prefab | 56 -- .../Entities/Enemies/EnemyHandler.prefab.meta | 7 - Assets/Entities/Enemies/ObjectPool.prefab | 45 -- .../Entities/Enemies/ObjectPool.prefab.meta | 7 - Assets/Entities/Enemies/Scripts/EnemyBase.cs | 9 + .../Entities/Enemies/Scripts/EnemyHealth.cs | 7 +- .../Entities/Enemies/Scripts/EnemyMovement.cs | 17 +- .../Enemies/Scripts/Entities.Enemies.asmdef | 19 - Assets/Entities/Enemies/Scripts/ObjectPool.cs | 33 - .../Enemies/Scripts/ObjectPool.cs.meta | 11 - Assets/Entities/EntityBase.cs | 2 +- .../Structures/Entities.Structures.asmdef | 14 - .../Entities.Structures.asmdef.meta | 7 - .../Structures/Scripts/StructureBase.cs | 10 +- Assets/Entities/Structures/Tower/Turret.cs | 55 +- .../Entities/Structures/Tower/Turret.prefab | 5 +- Assets/Handlers/Handlers.asmdef | 7 +- Assets/Scenes/Playground.unity | 65 +- 20 files changed, 635 insertions(+), 393 deletions(-) rename Assets/Entities/Enemies/{Scripts/Entities.Enemies.asmdef.meta => Drone.meta} (57%) delete mode 100644 Assets/Entities/Enemies/EnemyHandler.prefab delete mode 100644 Assets/Entities/Enemies/EnemyHandler.prefab.meta delete mode 100644 Assets/Entities/Enemies/ObjectPool.prefab delete mode 100644 Assets/Entities/Enemies/ObjectPool.prefab.meta delete mode 100644 Assets/Entities/Enemies/Scripts/Entities.Enemies.asmdef delete mode 100644 Assets/Entities/Enemies/Scripts/ObjectPool.cs delete mode 100644 Assets/Entities/Enemies/Scripts/ObjectPool.cs.meta delete mode 100644 Assets/Entities/Structures/Entities.Structures.asmdef delete mode 100644 Assets/Entities/Structures/Entities.Structures.asmdef.meta diff --git a/Assets/Entities/Enemies/Scripts/Entities.Enemies.asmdef.meta b/Assets/Entities/Enemies/Drone.meta similarity index 57% rename from Assets/Entities/Enemies/Scripts/Entities.Enemies.asmdef.meta rename to Assets/Entities/Enemies/Drone.meta index 74b29d7..17a280a 100644 --- a/Assets/Entities/Enemies/Scripts/Entities.Enemies.asmdef.meta +++ b/Assets/Entities/Enemies/Drone.meta @@ -1,6 +1,7 @@ fileFormatVersion: 2 -guid: 5041af1ee0cf75e4a9a52f5f23a0bfae -AssemblyDefinitionImporter: +guid: 22c766fdadc55c449b5311282a681a64 +folderAsset: yes +DefaultImporter: externalObjects: {} userData: assetBundleName: diff --git a/Assets/Entities/Enemies/Enemy.prefab b/Assets/Entities/Enemies/Enemy.prefab index 86d0da1..1b59c50 100644 --- a/Assets/Entities/Enemies/Enemy.prefab +++ b/Assets/Entities/Enemies/Enemy.prefab @@ -1,6 +1,6 @@ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: ---- !u!1 &3984945248064815929 +--- !u!1 &631532845000205954 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -8,58 +8,127 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 5330979831303032834} - - component: {fileID: 7002075653054196040} - - component: {fileID: 5767392122669354460} + - component: {fileID: 3291032053430181389} m_Layer: 0 - m_Name: default + m_Name: Pivot:EnemyBody m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!4 &5330979831303032834 +--- !u!4 &3291032053430181389 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3984945248064815929} - m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} - m_LocalPosition: {x: -0, y: 0, z: 0} + m_GameObject: {fileID: 631532845000205954} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 4722945444804288858} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 5355765884551595638} + - {fileID: 91949040360545666} + - {fileID: 8001059947964412310} + m_Father: {fileID: 7780103704517281592} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!33 &7002075653054196040 +--- !u!1 &700493555145955010 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5355765884551595638} + m_Layer: 0 + m_Name: HingeZ:WeaponAngle + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5355765884551595638 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 700493555145955010} + 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: 1671077540319194627} + - {fileID: 3955427233603104958} + m_Father: {fileID: 3291032053430181389} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1856154329861502355 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1671077540319194627} + - component: {fileID: 4938033185760690219} + - component: {fileID: 1664947916392979033} + m_Layer: 0 + m_Name: Model:LeftCanon + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1671077540319194627 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1856154329861502355} + m_LocalRotation: {x: -0, y: -0, z: -0.7071068, w: 0.7071068} + m_LocalPosition: {x: 0.341, y: 0, z: 0.587} + m_LocalScale: {x: 0.24, y: 0.4597677, z: 0.19977282} + m_ConstrainProportionsScale: 1 + m_Children: [] + m_Father: {fileID: 5355765884551595638} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: -90} +--- !u!33 &4938033185760690219 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3984945248064815929} - m_Mesh: {fileID: -2432090755550338912, guid: 0eaf0955d0035664c87a3d4177a41887, type: 3} ---- !u!23 &5767392122669354460 + m_GameObject: {fileID: 1856154329861502355} + m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &1664947916392979033 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3984945248064815929} + m_GameObject: {fileID: 1856154329861502355} 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_RenderingLayerMask: 257 m_RendererPriority: 0 m_Materials: - - {fileID: 6842584044724275946, guid: 0eaf0955d0035664c87a3d4177a41887, type: 3} + - {fileID: 2100000, guid: de72d1e429005ab45a0928a468b68cbb, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 @@ -81,7 +150,7 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} ---- !u!1 &5386469493770533856 +--- !u!1 &3867128990362458971 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -89,29 +158,209 @@ GameObject: m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - - component: {fileID: 4722945444804288858} + - component: {fileID: 7956298909069556562} + - component: {fileID: 8811483340839899384} + - component: {fileID: 8521635121025219023} m_Layer: 0 - m_Name: Ram + m_Name: Cube m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ---- !u!4 &4722945444804288858 +--- !u!4 &7956298909069556562 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5386469493770533856} + m_GameObject: {fileID: 3867128990362458971} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 6.25, y: 6.25, z: 6.25} - m_Children: - - {fileID: 5330979831303032834} - m_Father: {fileID: 2692714622321691895} + m_LocalPosition: {x: 0.536, y: 0.206, z: -0.193} + m_LocalScale: {x: 0.1, y: 0.1, z: 0.1} + m_ConstrainProportionsScale: 1 + m_Children: [] + m_Father: {fileID: 91949040360545666} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &8811483340839899384 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3867128990362458971} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &8521635121025219023 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3867128990362458971} + 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: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 2ba8e0e4f5aec294cb4320682b1b3296, 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 &4192276824634724634 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8001059947964412310} + - component: {fileID: 5604178963170827772} + m_Layer: 0 + m_Name: Collider:Enemy + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8001059947964412310 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4192276824634724634} + 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: 3291032053430181389} + m_RootOrder: 2 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!65 &5604178963170827772 +BoxCollider: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4192276824634724634} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1.3168308, y: 1, z: 1.3902934} + m_Center: {x: 0.15841538, y: 0, z: -0.0017904043} +--- !u!1 &4921375452445824178 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4518982824339893338} + - component: {fileID: 274824493129163367} + - component: {fileID: 3134550727623289937} + m_Layer: 0 + m_Name: Cube (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4518982824339893338 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4921375452445824178} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0.536, y: 0.206, z: 0.205} + m_LocalScale: {x: 0.1, y: 0.1, z: 0.1} + m_ConstrainProportionsScale: 1 + m_Children: [] + m_Father: {fileID: 91949040360545666} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &274824493129163367 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4921375452445824178} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &3134550727623289937 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4921375452445824178} + 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: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 2ba8e0e4f5aec294cb4320682b1b3296, 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 &5599539567497807159 GameObject: m_ObjectHideFlags: 0 @@ -121,18 +370,14 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 2692714622321691895} - - component: {fileID: 8306990489970303076} - - component: {fileID: -1839871183979442494} - - component: {fileID: 6819292882879353878} - - component: {fileID: 6251302194646931819} - - component: {fileID: 3339486200269071965} + - component: {fileID: 1411216412654489461} m_Layer: 0 m_Name: Enemy m_TagString: Enemy m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 0 + m_IsActive: 1 --- !u!4 &2692714622321691895 Transform: m_ObjectHideFlags: 0 @@ -141,103 +386,15 @@ Transform: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5599539567497807159} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 10} - m_LocalScale: {x: 1, y: 1, z: 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: 4722945444804288858} + - {fileID: 191376514769192977} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!65 &8306990489970303076 -BoxCollider: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5599539567497807159} - m_Material: {fileID: 0} - m_IsTrigger: 0 - m_Enabled: 1 - serializedVersion: 2 - m_Size: {x: 5, y: 4.3, z: 5} - m_Center: {x: 0, y: 2.2, z: 0} ---- !u!54 &-1839871183979442494 -Rigidbody: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5599539567497807159} - serializedVersion: 2 - m_Mass: 1 - m_Drag: 0 - m_AngularDrag: 0.05 - m_UseGravity: 0 - m_IsKinematic: 0 - m_Interpolate: 0 - m_Constraints: 126 - m_CollisionDetection: 0 ---- !u!114 &6819292882879353878 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5599539567497807159} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 8e691044df4c75f4cb07af0551efa2c6, type: 3} - m_Name: - m_EditorClassIdentifier: - speed: 0.4 - damage: 2 - enemyHandler: {fileID: 0} - scoreHandler: {fileID: 0} - path: - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} - - {fileID: 0} ---- !u!114 &6251302194646931819 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5599539567497807159} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: ac0f42db9d6c21540a5ef3107e36946a, type: 3} - m_Name: - m_EditorClassIdentifier: - enemyHandler: {fileID: 0} - scoreHandler: {fileID: 0} - maxHealth: 10 - wealthValue: 5 - currentHealth: 0 ---- !u!114 &3339486200269071965 +--- !u!114 &1411216412654489461 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -249,3 +406,239 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: a8e2a3a5a069cea4cbe59c093201d8dc, type: 3} m_Name: m_EditorClassIdentifier: + health: 0 + maxHealth: 0 + isInvulnerable: 0 + _centerPosition: {fileID: 3291032053430181389} +--- !u!1 &6940800288144322101 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 191376514769192977} + m_Layer: 0 + m_Name: TransY:Height + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &191376514769192977 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6940800288144322101} + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 2.01, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: + - {fileID: 7780103704517281592} + m_Father: {fileID: 2692714622321691895} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &7089677990206923544 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 7780103704517281592} + m_Layer: 0 + m_Name: HingeY:FacingDirection + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &7780103704517281592 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7089677990206923544} + 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: 3291032053430181389} + m_Father: {fileID: 191376514769192977} + m_RootOrder: 0 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &8831453991117079309 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 91949040360545666} + - component: {fileID: 5128498621595353232} + - component: {fileID: 4606730699798770587} + m_Layer: 0 + m_Name: Model:EnemyBody + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &91949040360545666 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8831453991117079309} + 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: 7956298909069556562} + - {fileID: 4518982824339893338} + m_Father: {fileID: 3291032053430181389} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!33 &5128498621595353232 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8831453991117079309} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &4606730699798770587 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8831453991117079309} + 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: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: 3867f558129618340bb47640302b930d, 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 &8931538593362537433 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3955427233603104958} + - component: {fileID: 6582230243926515993} + - component: {fileID: 5612662195004650437} + m_Layer: 0 + m_Name: Model:RightCanon + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3955427233603104958 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8931538593362537433} + m_LocalRotation: {x: -0, y: -0, z: -0.7071068, w: 0.7071068} + m_LocalPosition: {x: 0.34100002, y: 0, z: -0.603} + m_LocalScale: {x: 0.24, y: 0.4597677, z: 0.19977282} + m_ConstrainProportionsScale: 1 + m_Children: [] + m_Father: {fileID: 5355765884551595638} + m_RootOrder: 1 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: -90} +--- !u!33 &6582230243926515993 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8931538593362537433} + m_Mesh: {fileID: 10206, guid: 0000000000000000e000000000000000, type: 0} +--- !u!23 &5612662195004650437 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8931538593362537433} + 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: 257 + m_RendererPriority: 0 + m_Materials: + - {fileID: 2100000, guid: de72d1e429005ab45a0928a468b68cbb, 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} diff --git a/Assets/Entities/Enemies/EnemyHandler.prefab b/Assets/Entities/Enemies/EnemyHandler.prefab deleted file mode 100644 index 3636038..0000000 --- a/Assets/Entities/Enemies/EnemyHandler.prefab +++ /dev/null @@ -1,56 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!1 &3532497916441651499 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 6522036412611271300} - - component: {fileID: 5740012543617437938} - m_Layer: 0 - m_Name: EnemyHandler - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &6522036412611271300 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3532497916441651499} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 0} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &5740012543617437938 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 3532497916441651499} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: 62a3dc5f11a44cb4d9faccb4fda8599f, type: 3} - m_Name: - m_EditorClassIdentifier: - gridManager: {fileID: 0} - spawnRate: 1 - objectPoolSize: 20 - objectPool: {fileID: 5933799035485059591, guid: f788405216a67b14ead70299a821f731, type: 3} - enemyPrefabs: - - {fileID: 5599539567497807159, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} - - {fileID: 1460346957670431539, guid: d00403ece6c81e3409adb225c74eb396, type: 3} - - {fileID: 6975173952531158912, guid: 0918a47a96be6ad4e853d83c60acda6d, type: 3} - path: [] - enemyPools: [] - allEnemies: [] diff --git a/Assets/Entities/Enemies/EnemyHandler.prefab.meta b/Assets/Entities/Enemies/EnemyHandler.prefab.meta deleted file mode 100644 index 9a3b85c..0000000 --- a/Assets/Entities/Enemies/EnemyHandler.prefab.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 7ef7610a148db694982d168933de0f4b -PrefabImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Entities/Enemies/ObjectPool.prefab b/Assets/Entities/Enemies/ObjectPool.prefab deleted file mode 100644 index e0fe34e..0000000 --- a/Assets/Entities/Enemies/ObjectPool.prefab +++ /dev/null @@ -1,45 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!1 &5933799035485059591 -GameObject: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - serializedVersion: 6 - m_Component: - - component: {fileID: 8076414275049475842} - - component: {fileID: -6231193182959693008} - m_Layer: 0 - m_Name: ObjectPool - m_TagString: Untagged - m_Icon: {fileID: 0} - m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 - m_IsActive: 1 ---- !u!4 &8076414275049475842 -Transform: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5933799035485059591} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 0, z: 0} - m_LocalScale: {x: 1, y: 1, z: 1} - m_Children: [] - m_Father: {fileID: 0} - m_RootOrder: 0 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &-6231193182959693008 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 5933799035485059591} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: b81db1c4747c5b5428da1245d5154a2b, type: 3} - m_Name: - m_EditorClassIdentifier: diff --git a/Assets/Entities/Enemies/ObjectPool.prefab.meta b/Assets/Entities/Enemies/ObjectPool.prefab.meta deleted file mode 100644 index 0b0d0fd..0000000 --- a/Assets/Entities/Enemies/ObjectPool.prefab.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: f788405216a67b14ead70299a821f731 -PrefabImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Entities/Enemies/Scripts/EnemyBase.cs b/Assets/Entities/Enemies/Scripts/EnemyBase.cs index 25d0c58..b8e487f 100644 --- a/Assets/Entities/Enemies/Scripts/EnemyBase.cs +++ b/Assets/Entities/Enemies/Scripts/EnemyBase.cs @@ -1,7 +1,16 @@ +using System; +using UnityEngine; + namespace AsteroidGame.Entities.Enemies.Scripts { public class EnemyBase : EntityBase { + [Header("Connections")] + [SerializeField] private Transform _centerPosition; + public Vector3 GetCenterPosition() + { + return _centerPosition.transform.position; + } } } diff --git a/Assets/Entities/Enemies/Scripts/EnemyHealth.cs b/Assets/Entities/Enemies/Scripts/EnemyHealth.cs index 84d33d0..5dd0a5c 100644 --- a/Assets/Entities/Enemies/Scripts/EnemyHealth.cs +++ b/Assets/Entities/Enemies/Scripts/EnemyHealth.cs @@ -1,5 +1,4 @@ using AsteroidGame.Entities.Structures.Tower; -using AsteroidGame.Handlers; using UnityEngine; namespace AsteroidGame.Entities.Enemies.Scripts @@ -7,7 +6,7 @@ namespace AsteroidGame.Entities.Enemies.Scripts public class EnemyHealth : MonoBehaviour { [Header("Assigned on start")] - [SerializeField] EnemyHandler enemyHandler; + // [SerializeField] EnemyHandler enemyHandler; // [SerializeField] ScoreHandler scoreHandler; [Header("Parameters")] @@ -25,7 +24,7 @@ namespace AsteroidGame.Entities.Enemies.Scripts void OnEnable() { - enemyHandler = FindObjectOfType(); + // enemyHandler = FindObjectOfType(); // scoreHandler = FindObjectOfType(); currentHealth = maxHealth; } @@ -56,7 +55,7 @@ namespace AsteroidGame.Entities.Enemies.Scripts // SpawnFX(deathFX); // scoreHandler.ModifyWealth(wealthValue); - enemyHandler.RemoveEnemy(gameObject); + // enemyHandler.RemoveEnemy(gameObject); // Destroy(gameObject); gameObject.SetActive(false); maxHealth += difficultyRamp; diff --git a/Assets/Entities/Enemies/Scripts/EnemyMovement.cs b/Assets/Entities/Enemies/Scripts/EnemyMovement.cs index d93b701..b738858 100644 --- a/Assets/Entities/Enemies/Scripts/EnemyMovement.cs +++ b/Assets/Entities/Enemies/Scripts/EnemyMovement.cs @@ -1,5 +1,4 @@ using System.Collections; -using AsteroidGame.Handlers; using UnityEngine; namespace AsteroidGame.Entities.Enemies @@ -11,8 +10,8 @@ namespace AsteroidGame.Entities.Enemies [SerializeField] int damage = 1; - [SerializeField] EnemyHandler enemyHandler; - [SerializeField] ScoreHandler scoreHandler; + // [SerializeField] EnemyHandler enemyHandler; + // [SerializeField] ScoreHandler scoreHandler; Vector3 startPosition; @@ -23,14 +22,14 @@ namespace AsteroidGame.Entities.Enemies void Awake() { - enemyHandler = FindObjectOfType(); - scoreHandler = FindObjectOfType(); + // enemyHandler = FindObjectOfType(); + // scoreHandler = FindObjectOfType(); } void OnEnable() { - enemyHandler.AddEnemyToAllEnemies(gameObject); + // enemyHandler.AddEnemyToAllEnemies(gameObject); } @@ -46,9 +45,9 @@ namespace AsteroidGame.Entities.Enemies void HandleReachedEndOfPath() { - scoreHandler.ModifyHealth(-damage); - scoreHandler.ModifyWealth(-100); - enemyHandler.RemoveEnemy(gameObject); + // scoreHandler.ModifyHealth(-damage); + // scoreHandler.ModifyWealth(-100); + // enemyHandler.RemoveEnemy(gameObject); //Destroy(gameObject); gameObject.SetActive(false); } diff --git a/Assets/Entities/Enemies/Scripts/Entities.Enemies.asmdef b/Assets/Entities/Enemies/Scripts/Entities.Enemies.asmdef deleted file mode 100644 index 3124a54..0000000 --- a/Assets/Entities/Enemies/Scripts/Entities.Enemies.asmdef +++ /dev/null @@ -1,19 +0,0 @@ -{ - "name": "Entities.Enemy", - "rootNamespace": "AsteroidGame", - "references": [ - "GUID:bc7863ca0989b494d84426bfd28432fa", - "GUID:857695c8a9ee988459c9b50e4e75e660", - "GUID:17a5862fcd6383b4b97bad4dcb1e2e5d", - "GUID:f26d68a0bdefa1043b120b820f55e190" - ], - "includePlatforms": [], - "excludePlatforms": [], - "allowUnsafeCode": false, - "overrideReferences": false, - "precompiledReferences": [], - "autoReferenced": true, - "defineConstraints": [], - "versionDefines": [], - "noEngineReferences": false -} \ No newline at end of file diff --git a/Assets/Entities/Enemies/Scripts/ObjectPool.cs b/Assets/Entities/Enemies/Scripts/ObjectPool.cs deleted file mode 100644 index fc226df..0000000 --- a/Assets/Entities/Enemies/Scripts/ObjectPool.cs +++ /dev/null @@ -1,33 +0,0 @@ -using System.Collections; -using System.Collections.Generic; -using UnityEngine; - -public class ObjectPool : MonoBehaviour -{ - [SerializeField] List objects; - - public void AddObject(GameObject _object){ - //objects.Add(_object); - _object.SetActive(false); - GameObject newObject = Instantiate(_object, transform); - objects.Add(newObject); - } - - public void RemoveObject(GameObject _object){ - //objects.Remove(_object); - } - - public void EnableFirstAvailableObject(){ - // gameObject.GetComponentsInChildren(); - foreach (GameObject _object in objects) - { - if(!_object.activeSelf) - { - _object.SetActive(true); - break; - } - - // Debug.Log($"Tried activating enemy but no free object in pool:{gameObject.name}"); - } - } -} diff --git a/Assets/Entities/Enemies/Scripts/ObjectPool.cs.meta b/Assets/Entities/Enemies/Scripts/ObjectPool.cs.meta deleted file mode 100644 index 88509ca..0000000 --- a/Assets/Entities/Enemies/Scripts/ObjectPool.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: b81db1c4747c5b5428da1245d5154a2b -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Entities/EntityBase.cs b/Assets/Entities/EntityBase.cs index 8b8c53e..804ee2c 100644 --- a/Assets/Entities/EntityBase.cs +++ b/Assets/Entities/EntityBase.cs @@ -9,7 +9,7 @@ namespace AsteroidGame.Entities [SerializeField] protected int maxHealth; [SerializeField] protected bool isInvulnerable; - public bool IsInvulnerable { get; } + public bool IsInvulnerable => isInvulnerable; public void ModifyHealth(int healthChange) { diff --git a/Assets/Entities/Structures/Entities.Structures.asmdef b/Assets/Entities/Structures/Entities.Structures.asmdef deleted file mode 100644 index e8705f8..0000000 --- a/Assets/Entities/Structures/Entities.Structures.asmdef +++ /dev/null @@ -1,14 +0,0 @@ -{ - "name": "Entities.Structures", - "rootNamespace": "AsteroidGame", - "references": ["GUID:17a5862fcd6383b4b97bad4dcb1e2e5d","GUID:f26d68a0bdefa1043b120b820f55e190","GUID:896bd127e4aae4c4d86d99385f967c0c"], - "includePlatforms": [], - "excludePlatforms": [], - "allowUnsafeCode": false, - "overrideReferences": false, - "precompiledReferences": [], - "autoReferenced": true, - "defineConstraints": [], - "versionDefines": [], - "noEngineReferences": false -} \ No newline at end of file diff --git a/Assets/Entities/Structures/Entities.Structures.asmdef.meta b/Assets/Entities/Structures/Entities.Structures.asmdef.meta deleted file mode 100644 index 2f33053..0000000 --- a/Assets/Entities/Structures/Entities.Structures.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: bc7863ca0989b494d84426bfd28432fa -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Entities/Structures/Scripts/StructureBase.cs b/Assets/Entities/Structures/Scripts/StructureBase.cs index 9d6ecd8..d1a506b 100644 --- a/Assets/Entities/Structures/Scripts/StructureBase.cs +++ b/Assets/Entities/Structures/Scripts/StructureBase.cs @@ -1,16 +1,11 @@ -using System; -using AsteroidGame.Entities; using UnityEngine; namespace AsteroidGame.Entities.Structures.Scripts { public class StructureBase : EntityBase { - [Header("StructureInformation")] [SerializeField] - protected string name; - - - [Header("BuildParameters")] [SerializeField] + [Header("BuildParameters")] + [SerializeField] protected int cost; [SerializeField] protected float buildTimer; @@ -21,6 +16,5 @@ namespace AsteroidGame.Entities.Structures.Scripts public int Cost { get; set; } #endregion - } } \ No newline at end of file diff --git a/Assets/Entities/Structures/Tower/Turret.cs b/Assets/Entities/Structures/Tower/Turret.cs index 1088b88..b60a1bf 100644 --- a/Assets/Entities/Structures/Tower/Turret.cs +++ b/Assets/Entities/Structures/Tower/Turret.cs @@ -1,4 +1,4 @@ -using System.Collections; +using AsteroidGame.Entities.Enemies.Scripts; using AsteroidGame.Entities.Structures.Scripts; using UnityEngine; @@ -7,22 +7,25 @@ namespace AsteroidGame.Entities.Structures.Tower public class Turret : StructureBase { [Header("WeaponParameters")] [SerializeField] - float weaponRange = 40f; + private float weaponRange = 40f; - [SerializeField] int damage = 1; - [SerializeField] float fireRate = 1; - [SerializeField] float projectileSpeed = 5; - [SerializeField] TargetStrategy targetStrategy = TargetStrategy.LowestHealth; + [SerializeField] private int damage = 1; + [SerializeField] private float fireRate = 1; + [SerializeField] private float projectileSpeed = 5; + [SerializeField] private TargetStrategy targetStrategy = TargetStrategy.LowestHealth; [Header("Stats")] - [SerializeField] float score = 0f; + [SerializeField] + private float score = 0f; + [Header("RigConnections")] - [SerializeField] Transform _turretHead; - [SerializeField] Transform _barrel; + [SerializeField] private Transform turretHead; + [SerializeField] private Transform barrel; #region Privates - + + [SerializeField] enum TargetStrategy { @@ -30,7 +33,7 @@ namespace AsteroidGame.Entities.Structures.Tower LowestHealth }; - [SerializeField] private GameObject targetEnemy; + [SerializeField] private EnemyBase targetEnemy; [SerializeField] private Transform[] buildingParts; #endregion @@ -51,31 +54,21 @@ namespace AsteroidGame.Entities.Structures.Tower private void Awake() { - targetEnemy = FindObjectOfType().gameObject; + targetEnemy = FindObjectOfType(); } - void Start() + private void Start() { // enemyHandler = FindObjectOfType(); // scoreHandler = FindObjectOfType(); UpdateWeaponParameters(fireRate, projectileSpeed); } - void Update() + private void Update() { - _turretHead.transform.LookAt(targetEnemy.transform.position); + turretHead.transform.LookAt(targetEnemy.GetCenterPosition()); } - IEnumerator Build() - { - foreach (var buildingPart in buildingParts) - { - buildingPart.gameObject.SetActive(true); - yield return new WaitForSeconds(buildTimer); - } - - } - private void UpdateWeaponParameters(float _fireRate, float _projectileSpeed) { // var main = _projectile.main; @@ -131,16 +124,6 @@ namespace AsteroidGame.Entities.Structures.Tower // ShootProjectile(true); // } // } - - void ShootProjectile(bool _state) - { - // var emissionModule = _projectile.emission; - // emissionModule.enabled = _state; - } - - public void UpdateScore(float _score) - { - score += _score; - } + } } diff --git a/Assets/Entities/Structures/Tower/Turret.prefab b/Assets/Entities/Structures/Tower/Turret.prefab index 5d756f8..7ecb550 100644 --- a/Assets/Entities/Structures/Tower/Turret.prefab +++ b/Assets/Entities/Structures/Tower/Turret.prefab @@ -647,7 +647,6 @@ MonoBehaviour: health: 50 maxHealth: 50 isInvulnerable: 0 - name: cost: 20 buildTimer: 1 weaponRange: 40 @@ -656,7 +655,7 @@ MonoBehaviour: projectileSpeed: 5 targetStrategy: 1 score: 0 - _turretHead: {fileID: 5103935544653627402} - _barrel: {fileID: 5103935545559248087} + turretHead: {fileID: 5103935544653627402} + barrel: {fileID: 5103935545559248087} targetEnemy: {fileID: 0} buildingParts: [] diff --git a/Assets/Handlers/Handlers.asmdef b/Assets/Handlers/Handlers.asmdef index 722a938..bba9bb7 100644 --- a/Assets/Handlers/Handlers.asmdef +++ b/Assets/Handlers/Handlers.asmdef @@ -3,10 +3,11 @@ "rootNamespace": "AsteroidGame", "references": [ "GUID:6055be8ebefd69e48b49212b09b47b2f", - "GUID:f26d68a0bdefa1043b120b820f55e190", - "GUID:bc7863ca0989b494d84426bfd28432fa", "GUID:75469ad4d38634e559750d17036d5f7c", - "GUID:f008ecc6829887e478aeb5eb004eb01b" + "GUID:f008ecc6829887e478aeb5eb004eb01b", + "GUID:f26d68a0bdefa1043b120b820f55e190", + "GUID:5041af1ee0cf75e4a9a52f5f23a0bfae", + "GUID:bc7863ca0989b494d84426bfd28432fa" ], "includePlatforms": [], "excludePlatforms": [], diff --git a/Assets/Scenes/Playground.unity b/Assets/Scenes/Playground.unity index be5888c..3e248fc 100644 --- a/Assets/Scenes/Playground.unity +++ b/Assets/Scenes/Playground.unity @@ -184,7 +184,8 @@ Transform: m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 - m_Children: [] + m_Children: + - {fileID: 1715656626} m_Father: {fileID: 38176946} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -317,6 +318,68 @@ GameObject: m_CorrespondingSourceObject: {fileID: 8083988910325146965, guid: c2b4fe01faa847f4b976b5539477e1ec, type: 3} m_PrefabInstance: {fileID: 1191794244} m_PrefabAsset: {fileID: 0} +--- !u!1001 &1715656625 +PrefabInstance: + m_ObjectHideFlags: 0 + serializedVersion: 2 + m_Modification: + m_TransformParent: {fileID: 1047643964} + m_Modifications: + - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} + propertyPath: m_RootOrder + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} + propertyPath: m_LocalPosition.x + value: -4.95 + objectReference: {fileID: 0} + - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} + propertyPath: m_LocalPosition.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} + propertyPath: m_LocalPosition.z + value: 6.97 + objectReference: {fileID: 0} + - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} + propertyPath: m_LocalRotation.w + value: 1 + objectReference: {fileID: 0} + - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} + propertyPath: m_LocalRotation.x + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} + propertyPath: m_LocalRotation.y + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} + propertyPath: m_LocalRotation.z + value: -0 + objectReference: {fileID: 0} + - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} + propertyPath: m_LocalEulerAnglesHint.x + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} + propertyPath: m_LocalEulerAnglesHint.z + value: 0 + objectReference: {fileID: 0} + - target: {fileID: 5599539567497807159, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} + propertyPath: m_Name + value: Enemy + objectReference: {fileID: 0} + m_RemovedComponents: [] + m_SourcePrefab: {fileID: 100100000, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} +--- !u!4 &1715656626 stripped +Transform: + m_CorrespondingSourceObject: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} + m_PrefabInstance: {fileID: 1715656625} + m_PrefabAsset: {fileID: 0} --- !u!1 &2047541735 GameObject: m_ObjectHideFlags: 0