diff --git a/Assets/CoreSystems b/Assets/CoreSystems index c473d58..d1c0a4f 160000 --- a/Assets/CoreSystems +++ b/Assets/CoreSystems @@ -1 +1 @@ -Subproject commit c473d58817fa7c0cdd6d6f488cf6c8b9ffd5c52e +Subproject commit d1c0a4fa4f8781b98c228a70943f0f9431559f80 diff --git a/Assets/Entities/Enemies/Enemy.prefab b/Assets/Entities/Enemies/Enemy.prefab index ea6957a..54ad472 100644 --- a/Assets/Entities/Enemies/Enemy.prefab +++ b/Assets/Entities/Enemies/Enemy.prefab @@ -32,6 +32,7 @@ Transform: - {fileID: 5355765884551595638} - {fileID: 91949040360545666} - {fileID: 8001059947964412310} + - {fileID: 2513054780709503419} m_Father: {fileID: 7780103704517281592} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &700493555145955010 @@ -111,8 +112,9 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: a845ca774f1a2d341b32451b100c0d1c, type: 3} m_Name: m_EditorClassIdentifier: - k__BackingField: 0 - k__BackingField: 0 + _activeDamageableRuntimeSet: {fileID: 11400000, guid: 8332d81762d09114eac45ca6f3b2c4af, type: 2} + k__BackingField: 10 + k__BackingField: 10 k__BackingField: 0 --- !u!1 &1856154329861502355 GameObject: @@ -228,6 +230,7 @@ Transform: m_Children: - {fileID: 4626427865743511805} - {fileID: 3486364872742429245} + - {fileID: 5845428820912776804} m_Father: {fileID: 2692714622321691895} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &3867128990362458971 @@ -366,6 +369,37 @@ BoxCollider: serializedVersion: 3 m_Size: {x: 1.3168308, y: 1, z: 1.3902934} m_Center: {x: 0.15841538, y: 0, z: -0.0017904043} +--- !u!1 &4733920494088122715 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 2513054780709503419} + m_Layer: 0 + m_Name: Ref:CenterPosition + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &2513054780709503419 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4733920494088122715} + 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: 3291032053430181389} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &4921375452445824178 GameObject: m_ObjectHideFlags: 0 @@ -458,7 +492,7 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 3486364872742429245} - - component: {fileID: 4691274110434226497} + - component: {fileID: 4816616723634589559} m_Layer: 0 m_Name: Targetable m_TagString: Untagged @@ -481,7 +515,7 @@ Transform: m_Children: [] m_Father: {fileID: 5123077350175375293} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!114 &4691274110434226497 +--- !u!114 &4816616723634589559 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} @@ -490,12 +524,13 @@ MonoBehaviour: m_GameObject: {fileID: 5367121395816538489} m_Enabled: 1 m_EditorHideFlags: 0 - m_Script: {fileID: 11500000, guid: a845ca774f1a2d341b32451b100c0d1c, type: 3} + m_Script: {fileID: 11500000, guid: 8410932d22e18624787af61d3a4cd191, type: 3} m_Name: m_EditorClassIdentifier: - k__BackingField: 0 - k__BackingField: 0 - k__BackingField: 0 + _activeTargetableRuntimeSet: {fileID: 11400000, guid: 85e03587d1a940f438ceac70a3d544d5, type: 2} + k__BackingField: {fileID: 0} + _centerPosition: {fileID: 2513054780709503419} + _basePosition: {fileID: 561887346552595101} --- !u!1 &5599539567497807159 GameObject: m_ObjectHideFlags: 0 @@ -506,6 +541,7 @@ GameObject: m_Component: - component: {fileID: 2692714622321691895} - component: {fileID: 1411216412654489461} + - component: {fileID: 103375416814990516} m_Layer: 0 m_Name: Enemy m_TagString: Enemy @@ -542,18 +578,35 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: a8e2a3a5a069cea4cbe59c093201d8dc, type: 3} m_Name: m_EditorClassIdentifier: - _health: 10 - _maxHealth: 0 - _isInvulnerable: 0 - _centerPosition: {fileID: 3291032053430181389} - _basePosition: {fileID: 2692714622321691895} + k__BackingField: {fileID: 4299120351774448665} + k__BackingField: {fileID: 4816616723634589559} _uiFriendlyName: Enemy _entityBaseSet: {fileID: 11400000, guid: c5542e77624472441a67b1f34e19a116, type: 2} _enemyBaseSet: {fileID: 11400000, guid: e5f25127d92be074aac6e7b745fae107, type: 2} - _targeterConfig: {fileID: 11400000, guid: d5813a38da3962d4498fc71ef33361b6, type: 2} - _targeter: {fileID: 0} - _target: {fileID: 0} - _navMeshAgent: {fileID: 0} + k__BackingField: {fileID: 2802974253471165353} + _navMeshAgent: {fileID: 103375416814990516} +--- !u!195 &103375416814990516 +NavMeshAgent: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5599539567497807159} + m_Enabled: 1 + m_AgentTypeID: 0 + m_Radius: 0.5 + m_Speed: 3.5 + m_Acceleration: 8 + avoidancePriority: 50 + m_AngularSpeed: 120 + m_StoppingDistance: 0 + m_AutoTraverseOffMeshLink: 1 + m_AutoBraking: 1 + m_AutoRepath: 1 + m_Height: 2 + m_BaseOffset: 0 + m_WalkableMask: 4294967295 + m_ObstacleAvoidanceType: 4 --- !u!1 &6015068770338930083 GameObject: m_ObjectHideFlags: 0 @@ -584,6 +637,7 @@ Transform: m_ConstrainProportionsScale: 0 m_Children: - {fileID: 191376514769192977} + - {fileID: 561887346552595101} m_Father: {fileID: 2692714622321691895} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &6940800288144322101 @@ -650,6 +704,87 @@ Transform: - {fileID: 3291032053430181389} m_Father: {fileID: 191376514769192977} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &7098420778236141238 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5845428820912776804} + - component: {fileID: 2802974253471165353} + m_Layer: 0 + m_Name: Targeter + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5845428820912776804 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7098420778236141238} + 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: 5123077350175375293} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &2802974253471165353 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7098420778236141238} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 28bcd65de1e3cf744a3ac9b53c030319, type: 3} + m_Name: + m_EditorClassIdentifier: + _targeterConfig: {fileID: 11400000, guid: d5813a38da3962d4498fc71ef33361b6, type: 2} + _range: 0 + _targetStrategy: 0 + _activeTargetable: {fileID: 0} + _targeterParent: {fileID: 4816616723634589559} + k__BackingField: {fileID: 0} +--- !u!1 &7670619634857166053 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 561887346552595101} + m_Layer: 0 + m_Name: Ref:BasePosition + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &561887346552595101 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7670619634857166053} + 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: 4114072049224310043} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &8831453991117079309 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Entities/Enemies/EnemyTargeterConfiguration.asset b/Assets/Entities/Enemies/EnemyTargeterConfiguration.asset index 2629179..8f3bd7d 100644 --- a/Assets/Entities/Enemies/EnemyTargeterConfiguration.asset +++ b/Assets/Entities/Enemies/EnemyTargeterConfiguration.asset @@ -12,6 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 02781660543c12d4ebddaf334eb0d730, type: 3} m_Name: EnemyTargeterConfiguration m_EditorClassIdentifier: - _range: 30 + _maxRange: 30 + _minRange: 0.5 _selectedTargetStrategy: 0 - _activeEntities: {fileID: 11400000, guid: 1925957d2bc2f0c4a9210131f2d2c4e5, type: 2} + _activeEntities: {fileID: 11400000, guid: dda2fd5e970bbd642a5ceead1e82783c, type: 2} diff --git a/Assets/Entities/Enemies/Scripts/EnemyBase.cs b/Assets/Entities/Enemies/Scripts/EnemyBase.cs index d1374c9..a9b800e 100644 --- a/Assets/Entities/Enemies/Scripts/EnemyBase.cs +++ b/Assets/Entities/Enemies/Scripts/EnemyBase.cs @@ -1,5 +1,4 @@ using AsteroidGame.ScriptableObjects; -using GameDev.CoreSystems; using UnityEngine; using UnityEngine.AI; @@ -10,7 +9,6 @@ namespace AsteroidGame.Entities [SerializeField] private SoEntityBaseRuntimeSet _enemyBaseSet; [field: Header("Targeter")] - [SerializeField] private SoTargeterConfig _targeterConfig; [field: SerializeField] public Targeter Targeter { get; set; } [field: Header("NavMeshAgent")] @@ -27,17 +25,24 @@ namespace AsteroidGame.Entities InitializeNavMeshAgent(); } - private void InitializeNavMeshAgent() - { - _navMeshAgent = gameObject.AddComponent(); - _navMeshAgent.speed = 0.1f; - } - private void InitializeTargeter() { - Targeter = gameObject.AddComponent(); - Targeter.SetParent(this); - Targeter.SetConfig(_targeterConfig); + if (Targeter != null) + { + Targeter = gameObject.GetComponentInChildren(); + } + + Targeter.SetParent(Targetable); + } + + private void InitializeNavMeshAgent() + { + if (_navMeshAgent != null) + { + _navMeshAgent = gameObject.GetComponentInChildren(); + } + + _navMeshAgent.speed = 0.1f; } protected override void OnDisable() @@ -50,8 +55,8 @@ namespace AsteroidGame.Entities { if (!Targeter.FoundTarget()) return; - Target = Targeter.GetTarget(); - _navMeshAgent.SetDestination(_target.GetBasePosition()); + Targetable = Targeter.GetTarget(); + _navMeshAgent.SetDestination(Targetable.GetBasePosition()); } } } \ No newline at end of file diff --git a/Assets/Entities/RuntimeSet/newEnemyBaseRuntimeSet.asset b/Assets/Entities/RuntimeSet/newEnemyBaseRuntimeSet.asset deleted file mode 100644 index 20c85a0..0000000 --- a/Assets/Entities/RuntimeSet/newEnemyBaseRuntimeSet.asset +++ /dev/null @@ -1,15 +0,0 @@ -%YAML 1.1 -%TAG !u! tag:unity3d.com,2011: ---- !u!114 &11400000 -MonoBehaviour: - m_ObjectHideFlags: 0 - m_CorrespondingSourceObject: {fileID: 0} - m_PrefabInstance: {fileID: 0} - m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 0} - m_Enabled: 1 - m_EditorHideFlags: 0 - m_Script: {fileID: 0} - m_Name: newEnemyBaseRuntimeSet - m_EditorClassIdentifier: - _list: [] diff --git a/Assets/Entities/RuntimeSet/newEnemyBaseRuntimeSet.asset.meta b/Assets/Entities/RuntimeSet/newEnemyBaseRuntimeSet.asset.meta deleted file mode 100644 index 9492ee3..0000000 --- a/Assets/Entities/RuntimeSet/newEnemyBaseRuntimeSet.asset.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: d681acab3b5d24f458e9c1c281d375cb -NativeFormatImporter: - externalObjects: {} - mainObjectFileID: 11400000 - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Entities/ScriptableObjects/SoTargeterConfig.cs b/Assets/Entities/ScriptableObjects/SoTargeterConfig.cs index 11d3bbb..8951174 100644 --- a/Assets/Entities/ScriptableObjects/SoTargeterConfig.cs +++ b/Assets/Entities/ScriptableObjects/SoTargeterConfig.cs @@ -1,12 +1,15 @@ using GameDev.CoreSystems; using UnityEngine; +using UnityEngine.Serialization; namespace AsteroidGame.ScriptableObjects { [CreateAssetMenu(fileName = "newTargeterConfiguration", menuName = "Configuration/Targeter")] public class SoTargeterConfig : ScriptableObject { - public float _range; + [FormerlySerializedAs("_range")] + public float _maxRange; + public float _minRange; public TargetStrategy _selectedTargetStrategy; public SoTargetableRuntimeSet _activeEntities; diff --git a/Assets/Entities/Scripts/EntityBase.cs b/Assets/Entities/Scripts/EntityBase.cs index 03e4780..ba9f087 100644 --- a/Assets/Entities/Scripts/EntityBase.cs +++ b/Assets/Entities/Scripts/EntityBase.cs @@ -24,13 +24,18 @@ namespace AsteroidGame.Entities #endregion - protected virtual void OnEnable() + private void Awake() { - _entityBaseSet.Add(this); - InitializeDamageable(); InitializeTargetable(); + + AssignDamageable(); + } + + protected virtual void OnEnable() + { + _entityBaseSet.Add(this); } protected virtual void OnDisable() @@ -38,14 +43,23 @@ namespace AsteroidGame.Entities _entityBaseSet.Remove(this); } + private void InitializeDamageable() + { + if (Damageable != null) return; + Damageable = gameObject.AddComponent(); + } + private void InitializeTargetable() { + if (Targetable != null) return; Targetable = gameObject.AddComponent(); } - private void InitializeDamageable() + private void AssignDamageable() { - Damageable = gameObject.AddComponent(); + if (Targetable.Damageable != null) return; + + Targetable.Damageable = Damageable; } } } \ No newline at end of file diff --git a/Assets/Entities/Scripts/Targeter.cs b/Assets/Entities/Scripts/Targeter.cs index 9bdfbeb..15f63eb 100644 --- a/Assets/Entities/Scripts/Targeter.cs +++ b/Assets/Entities/Scripts/Targeter.cs @@ -1,69 +1,77 @@ using AsteroidGame.ScriptableObjects; using GameDev.CoreSystems; using UnityEngine; +using UnityEngine.Serialization; namespace AsteroidGame.Entities { public class Targeter : MonoBehaviour { + [SerializeField] private SoTargeterConfig _targeterConfig; + [SerializeField] private float _range; [SerializeField] private SoTargeterConfig.TargetStrategy _targetStrategy; - [SerializeField] private SoTargetableRuntimeSet _activeEntities; + [FormerlySerializedAs("_activeEntities")] + [SerializeField] private SoTargetableRuntimeSet _activeTargetable; [SerializeField] private Targetable _targeterParent; - [SerializeField] private Targetable _targetEntity; + [field: SerializeField] public Targetable TargetEntity { get; set; } - public void SetParent(Transform newParent) => _targeterParent.transform.parent = newParent; + private void OnEnable() + { + SetConfig(_targeterConfig); + } + + public void SetParent(Targetable newParent) => _targeterParent = newParent; public void SetConfig(SoTargeterConfig config) { - _range = config._range; + _range = config._maxRange; _targetStrategy = config._selectedTargetStrategy; - _activeEntities = config._activeEntities; + _activeTargetable = config._activeEntities; } public Targetable GetTarget() { - return _targetEntity; + return TargetEntity; } public bool FoundTarget() { - float currentBestValue = Mathf.Infinity; + var currentBestValue = Mathf.Infinity; var targetFound = false; - foreach (var targetEntity in _activeEntities._list) + foreach (var targetEntity in _activeTargetable._list) { - float distanceToTarget = + var distanceToTarget = Vector3.Magnitude(targetEntity.GetCenterPosition() - _targeterParent.GetCenterPosition()); - bool withinRange = distanceToTarget < _range; + var withinRange = distanceToTarget < _range; if (withinRange) { switch (_targetStrategy) { case SoTargeterConfig.TargetStrategy.LowestRange: { - bool isClosest = distanceToTarget < currentBestValue; + var isClosest = distanceToTarget < currentBestValue; if (isClosest) { targetFound = true; currentBestValue = distanceToTarget; - _targetEntity = targetEntity; + TargetEntity = targetEntity; } break; } case SoTargeterConfig.TargetStrategy.LowestHealth: { - float enemyHealth = targetEntity.transform.parent.GetComponent() - .GetCurrentHealth(); + float enemyHealth = targetEntity.Damageable.GetCurrentHealth(); - bool isLowestHealth = enemyHealth < currentBestValue; + var isLowestHealth = enemyHealth < currentBestValue; if (isLowestHealth) { targetFound = true; currentBestValue = enemyHealth; - _targetEntity = targetEntity; + TargetEntity = targetEntity; } break; diff --git a/Assets/Entities/Structures/PowerPlant/PowerPlant.prefab b/Assets/Entities/Structures/PowerPlant/PowerPlant.prefab index 7612afb..4380ff9 100644 --- a/Assets/Entities/Structures/PowerPlant/PowerPlant.prefab +++ b/Assets/Entities/Structures/PowerPlant/PowerPlant.prefab @@ -24,15 +24,15 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1134055636167264334} + 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: - - {fileID: 7701460482385480461} - - {fileID: 1841478903898566568} + - {fileID: 5262269693041317168} + - {fileID: 8823548950904274780} m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &5166195223278443568 MonoBehaviour: @@ -46,11 +46,8 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: b5b8b24a2cbe7294c90fb34afeca78e7, type: 3} m_Name: m_EditorClassIdentifier: - _health: 10 - _maxHealth: 0 - _isInvulnerable: 0 - _centerPosition: {fileID: 1841478903898566568} - _basePosition: {fileID: 493861824998956378} + k__BackingField: {fileID: 4803755810606958043} + k__BackingField: {fileID: 4098794156838288170} _uiFriendlyName: Power\nPlant _entityBaseSet: {fileID: 11400000, guid: c5542e77624472441a67b1f34e19a116, type: 2} _cost: 100 @@ -60,6 +57,54 @@ MonoBehaviour: _powerBaseSet: {fileID: 11400000, guid: 127d26f1f3536e94da36af662f63fa0b, type: 2} _powerConfig: {fileID: 11400000, guid: 742a00ce6f6a8e04cae160bc40f09e24, type: 2} _power: {fileID: 0} +--- !u!1 &1139200854042314162 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 705421445933726062} + - component: {fileID: 4098794156838288170} + m_Layer: 0 + m_Name: Targetable + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &705421445933726062 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1139200854042314162} + 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: 5262269693041317168} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &4098794156838288170 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1139200854042314162} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8410932d22e18624787af61d3a4cd191, type: 3} + m_Name: + m_EditorClassIdentifier: + _activeTargetableRuntimeSet: {fileID: 11400000, guid: dda2fd5e970bbd642a5ceead1e82783c, type: 2} + k__BackingField: {fileID: 0} + _centerPosition: {fileID: 4810890945869411434} + _basePosition: {fileID: 4377705888661834325} --- !u!1 &1863277996181035512 GameObject: m_ObjectHideFlags: 0 @@ -85,13 +130,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1863277996181035512} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0.28822982, w: 0.95756125} m_LocalPosition: {x: 0.556, y: 0.30948326, z: 0} m_LocalScale: {x: 0.22924483, y: 0.41812927, z: 0.34} m_ConstrainProportionsScale: 1 m_Children: [] m_Father: {fileID: 7701460482385480461} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: -33.504} --- !u!33 &3492591049058222371 MeshFilter: @@ -143,6 +188,87 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &2456059784061569785 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5262269693041317168} + m_Layer: 0 + m_Name: Functions + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5262269693041317168 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 2456059784061569785} + 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: + - {fileID: 5508661882298666976} + - {fileID: 705421445933726062} + m_Father: {fileID: 493861824998956378} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &4141114696578461492 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5508661882298666976} + - component: {fileID: 4803755810606958043} + m_Layer: 0 + m_Name: Damageable + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5508661882298666976 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4141114696578461492} + 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: 5262269693041317168} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &4803755810606958043 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4141114696578461492} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a845ca774f1a2d341b32451b100c0d1c, type: 3} + m_Name: + m_EditorClassIdentifier: + _activeDamageableRuntimeSet: {fileID: 11400000, guid: 8332d81762d09114eac45ca6f3b2c4af, type: 2} + k__BackingField: 10 + k__BackingField: 10 + k__BackingField: 0 --- !u!1 &5696605131341260023 GameObject: m_ObjectHideFlags: 0 @@ -168,13 +294,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5696605131341260023} + serializedVersion: 2 m_LocalRotation: {x: -0.28822976, y: -0, z: -0, w: 0.95756125} m_LocalPosition: {x: 0, y: 0.30948326, z: -0.556} m_LocalScale: {x: 0.34, y: 0.4181292, z: 0.22924486} m_ConstrainProportionsScale: 1 m_Children: [] m_Father: {fileID: 7701460482385480461} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: -33.504, y: 0, z: 0} --- !u!33 &5703693206798415631 MeshFilter: @@ -252,13 +378,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5716373424675870408} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 1.2132, z: 0} m_LocalScale: {x: 1.85, y: 2.601712, z: 1.85} m_ConstrainProportionsScale: 1 m_Children: [] - m_Father: {fileID: 493861824998956378} - m_RootOrder: 1 + m_Father: {fileID: 8823548950904274780} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &1304836505922952958 MeshFilter: @@ -318,11 +444,50 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5716373424675870408} 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: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &6555413761965443330 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4377705888661834325} + m_Layer: 0 + m_Name: Ref:BasePosition + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4377705888661834325 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6555413761965443330} + 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: 8823548950904274780} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &6620524653909535726 GameObject: m_ObjectHideFlags: 0 @@ -348,7 +513,8 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6620524653909535726} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 1.2108, z: 0} m_LocalScale: {x: 1, y: 2.5856, z: 1} m_ConstrainProportionsScale: 0 @@ -357,8 +523,8 @@ Transform: - {fileID: 1754268235013326116} - {fileID: 4775041521610446741} - {fileID: 1159293590819248905} - m_Father: {fileID: 493861824998956378} - m_RootOrder: 0 + - {fileID: 4810890945869411434} + m_Father: {fileID: 8823548950904274780} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &7914752025160220231 MeshFilter: @@ -410,6 +576,40 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &7370732990009067680 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 8823548950904274780} + m_Layer: 0 + m_Name: Rig + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &8823548950904274780 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7370732990009067680} + 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: + - {fileID: 7701460482385480461} + - {fileID: 1841478903898566568} + - {fileID: 4377705888661834325} + m_Father: {fileID: 493861824998956378} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &7575591860203478988 GameObject: m_ObjectHideFlags: 0 @@ -435,13 +635,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7575591860203478988} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: 0.2882297, w: 0.9575613} m_LocalPosition: {x: -0.556, y: 0.30948326, z: 0} m_LocalScale: {x: 0.2292449, y: 0.41812924, z: 0.34} m_ConstrainProportionsScale: 1 m_Children: [] m_Father: {fileID: 7701460482385480461} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 33.504} --- !u!33 &3078844436335607959 MeshFilter: @@ -518,13 +718,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7795813068735269079} + serializedVersion: 2 m_LocalRotation: {x: 0.2882297, y: -0, z: -0, w: 0.9575613} m_LocalPosition: {x: 0, y: 0.30948326, z: 0.556} m_LocalScale: {x: 0.34, y: 0.41812924, z: 0.2292449} m_ConstrainProportionsScale: 1 m_Children: [] m_Father: {fileID: 7701460482385480461} - m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 33.504, y: 0, z: 0} --- !u!33 &81163167810301819 MeshFilter: @@ -576,3 +776,34 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &8647181050937376645 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4810890945869411434} + m_Layer: 0 + m_Name: Ref:CenterPosition + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4810890945869411434 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8647181050937376645} + 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: 7701460482385480461} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} diff --git a/Assets/Entities/Structures/Turret/Turret.cs b/Assets/Entities/Structures/Turret/Turret.cs index b5e0f39..a9c6f01 100644 --- a/Assets/Entities/Structures/Turret/Turret.cs +++ b/Assets/Entities/Structures/Turret/Turret.cs @@ -1,5 +1,3 @@ -using AsteroidGame.ScriptableObjects; -using GameDev.CoreSystems; using UnityEngine; namespace AsteroidGame.Entities @@ -19,10 +17,8 @@ namespace AsteroidGame.Entities [SerializeField] private Transform _turretHead; [SerializeField] private Transform _barrel; - [Header("Targeter")] - [SerializeField] private SoTargeterConfig _targeterConfig; - [SerializeField] private Targeter _targeter; - [SerializeField] private Targetable _target; + [field: Header("Targeter")] + [field: SerializeField] public Targeter Targeter { get; set; } #region Publics @@ -42,17 +38,13 @@ namespace AsteroidGame.Entities private void InitializeTargeter() { - _targeter = gameObject.AddComponent(); - //_targeter.SetParent(this); - _targeter.SetConfig(_targeterConfig); + Targeter.SetParent(Targetable); } private void Update() { - if (!_targeter.FoundTarget()) return; - - _target = _targeter.GetTarget(); - _turretHead.transform.LookAt(_target.GetCenterPosition()); + if (!Targeter.FoundTarget()) return; + _turretHead.transform.LookAt(Targeter.GetTarget().GetCenterPosition()); } } } \ No newline at end of file diff --git a/Assets/Entities/Structures/Turret/Turret.prefab b/Assets/Entities/Structures/Turret/Turret.prefab index 6211817..7d1faae 100644 --- a/Assets/Entities/Structures/Turret/Turret.prefab +++ b/Assets/Entities/Structures/Turret/Turret.prefab @@ -1,5 +1,118 @@ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: +--- !u!1 &258812495471396799 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5898541643653152293} + m_Layer: 0 + m_Name: Functions + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5898541643653152293 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 258812495471396799} + 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: + - {fileID: 6280290603549554065} + - {fileID: 1742443095838507103} + - {fileID: 989884077484375908} + m_Father: {fileID: 8324879816836607384} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1118725470430693759 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1742443095838507103} + - component: {fileID: 3738931345656042189} + m_Layer: 0 + m_Name: Targetable + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &1742443095838507103 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1118725470430693759} + 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: 5898541643653152293} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &3738931345656042189 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1118725470430693759} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 8410932d22e18624787af61d3a4cd191, type: 3} + m_Name: + m_EditorClassIdentifier: + _activeTargetableRuntimeSet: {fileID: 11400000, guid: dda2fd5e970bbd642a5ceead1e82783c, type: 2} + k__BackingField: {fileID: 0} + _centerPosition: {fileID: 6894291031605712785} + _basePosition: {fileID: 9116849480152445015} +--- !u!1 &1413342146147867861 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 9116849480152445015} + m_Layer: 0 + m_Name: Ref:BasePosition + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &9116849480152445015 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1413342146147867861} + 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: 914060668543750284} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1664455431739434982 GameObject: m_ObjectHideFlags: 0 @@ -25,13 +138,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1664455431739434982} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: -1.079, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 5103935544653627402} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &8859758648044048825 MeshFilter: @@ -108,13 +221,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4124039516271301344} - m_LocalRotation: {x: 0, y: -0, z: -0, w: 1} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 1, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 8324879816836607384} - m_RootOrder: 1 + m_Father: {fileID: 914060668543750284} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &1304876018251197107 MeshFilter: @@ -166,6 +279,54 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &4179579253724962159 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6280290603549554065} + - component: {fileID: 3620345197547817675} + m_Layer: 0 + m_Name: Damageable + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6280290603549554065 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4179579253724962159} + 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: 5898541643653152293} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &3620345197547817675 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 4179579253724962159} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a845ca774f1a2d341b32451b100c0d1c, type: 3} + m_Name: + m_EditorClassIdentifier: + _activeDamageableRuntimeSet: {fileID: 11400000, guid: 8332d81762d09114eac45ca6f3b2c4af, type: 2} + k__BackingField: 10 + k__BackingField: 10 + k__BackingField: 0 --- !u!1 &5103935544653627403 GameObject: m_ObjectHideFlags: 0 @@ -189,6 +350,7 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5103935544653627403} + 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} @@ -199,7 +361,6 @@ Transform: - {fileID: 1987518899328085188} - {fileID: 6648276078230438600} m_Father: {fileID: 5103935544759496321} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &5103935544759496322 GameObject: @@ -224,14 +385,15 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5103935544759496322} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 2.079, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: - {fileID: 5103935544653627402} - m_Father: {fileID: 8324879816836607384} - m_RootOrder: 3 + - {fileID: 6894291031605712785} + m_Father: {fileID: 914060668543750284} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &5103935545559248080 GameObject: @@ -256,6 +418,7 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5103935545559248080} + 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} @@ -263,7 +426,6 @@ Transform: m_Children: - {fileID: 2391693866166879097} m_Father: {fileID: 5103935544653627402} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &5357542139584026431 GameObject: @@ -290,13 +452,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5357542139584026431} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: -1.079, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 5103935544653627402} - m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &775574265991703308 MeshFilter: @@ -373,13 +535,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5596001871688408902} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: -1.079, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 5103935545559248087} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &723672318811111496 MeshFilter: @@ -456,13 +618,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5789912094253160437} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: 1, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 8324879816836607384} - m_RootOrder: 0 + m_Father: {fileID: 914060668543750284} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &5270923650227924917 MeshFilter: @@ -514,6 +676,37 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &6108461410568607280 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 6894291031605712785} + m_Layer: 0 + m_Name: Ref:CenterPosition + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &6894291031605712785 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6108461410568607280} + 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: 5103935544759496321} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &6567584540310777777 GameObject: m_ObjectHideFlags: 0 @@ -539,13 +732,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6567584540310777777} + serializedVersion: 2 m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} m_LocalPosition: {x: 0, y: -1.079, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 5103935544653627402} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &5589015655606442813 MeshFilter: @@ -597,6 +790,56 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &7318577146850956278 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 989884077484375908} + - component: {fileID: 310569669314672228} + m_Layer: 0 + m_Name: Targeter + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &989884077484375908 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7318577146850956278} + 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: 5898541643653152293} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &310569669314672228 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 7318577146850956278} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 28bcd65de1e3cf744a3ac9b53c030319, type: 3} + m_Name: + m_EditorClassIdentifier: + _targeterConfig: {fileID: 11400000, guid: 9df40bc219ab8f04cb4e86558bc0df86, type: 2} + _range: 0 + _targetStrategy: 0 + _activeTargetable: {fileID: 0} + _targeterParent: {fileID: 0} + k__BackingField: {fileID: 0} --- !u!1 &8385032484663529878 GameObject: m_ObjectHideFlags: 0 @@ -623,13 +866,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8385032484663529878} - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} - m_LocalPosition: {x: 0, y: 1.55, z: 0} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 1.5500001, z: 0} m_LocalScale: {x: 4.75, y: 3, z: 4.75} m_ConstrainProportionsScale: 0 m_Children: [] - m_Father: {fileID: 8324879816836607384} - m_RootOrder: 2 + m_Father: {fileID: 914060668543750284} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &3888725377378342825 MeshFilter: @@ -689,11 +932,55 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8385032484663529878} 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: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1.0236204, z: 1} m_Center: {x: 0, y: 0, z: 0} +--- !u!1 &8401904230309918259 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 914060668543750284} + m_Layer: 0 + m_Name: Rig + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &914060668543750284 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8401904230309918259} + 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: + - {fileID: 3853332211859768904} + - {fileID: 8338452631907263897} + - {fileID: 2545305406868440440} + - {fileID: 5103935544759496321} + - {fileID: 9116849480152445015} + m_Father: {fileID: 8324879816836607384} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &8704396752535238434 GameObject: m_ObjectHideFlags: 0 @@ -718,17 +1005,15 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8704396752535238434} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.3, y: 0.3, z: 0.3} m_ConstrainProportionsScale: 1 m_Children: - - {fileID: 3853332211859768904} - - {fileID: 8338452631907263897} - - {fileID: 2545305406868440440} - - {fileID: 5103935544759496321} + - {fileID: 5898541643653152293} + - {fileID: 914060668543750284} m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &8787361557661825162 MonoBehaviour: @@ -742,11 +1027,8 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: d3a16cf44e28f02409c23498ed14acf5, type: 3} m_Name: m_EditorClassIdentifier: - _health: 10 - _maxHealth: 0 - _isInvulnerable: 0 - _centerPosition: {fileID: 5103935544759496321} - _basePosition: {fileID: 8324879816836607384} + k__BackingField: {fileID: 3620345197547817675} + k__BackingField: {fileID: 3738931345656042189} _uiFriendlyName: Turret _entityBaseSet: {fileID: 11400000, guid: c5542e77624472441a67b1f34e19a116, type: 2} _cost: 10 @@ -763,6 +1045,4 @@ MonoBehaviour: _damageDealt: 0 _turretHead: {fileID: 5103935544653627402} _barrel: {fileID: 5103935545559248087} - _targeterConfig: {fileID: 11400000, guid: 9df40bc219ab8f04cb4e86558bc0df86, type: 2} - _targeter: {fileID: 0} - _target: {fileID: 0} + k__BackingField: {fileID: 310569669314672228} diff --git a/Assets/Entities/Structures/Turret/TurretStandardTargeterConfiguration.asset b/Assets/Entities/Structures/Turret/TurretStandardTargeterConfiguration.asset index e30cd39..1148d54 100644 --- a/Assets/Entities/Structures/Turret/TurretStandardTargeterConfiguration.asset +++ b/Assets/Entities/Structures/Turret/TurretStandardTargeterConfiguration.asset @@ -12,6 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 02781660543c12d4ebddaf334eb0d730, type: 3} m_Name: TurretStandardTargeterConfiguration m_EditorClassIdentifier: - _range: 15 + _maxRange: 15 + _minRange: 0.5 _selectedTargetStrategy: 0 - _activeEntities: {fileID: 11400000, guid: e5f25127d92be074aac6e7b745fae107, type: 2} + _activeEntities: {fileID: 11400000, guid: 85e03587d1a940f438ceac70a3d544d5, type: 2} diff --git a/Assets/Scenes/Playground 1.unity b/Assets/Scenes/Playground 1.unity index 43073b2..c83acd9 100644 --- a/Assets/Scenes/Playground 1.unity +++ b/Assets/Scenes/Playground 1.unity @@ -38,7 +38,7 @@ RenderSettings: m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} - m_IndirectSpecularColor: {r: 262.3369, g: 325.0498, b: 430.21924, a: 1} + m_IndirectSpecularColor: {r: 262.33694, g: 325.04984, b: 430.2193, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: @@ -104,7 +104,7 @@ NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: - serializedVersion: 2 + serializedVersion: 3 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 @@ -117,7 +117,7 @@ NavMeshSettings: cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 - accuratePlacement: 0 + buildHeightMesh: 0 maxJobWorkers: 0 preserveTilesOutsideBounds: 0 debug: @@ -146,6 +146,7 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 38176945} + 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} @@ -155,7 +156,6 @@ Transform: - {fileID: 1158682046} - {fileID: 624469242} m_Father: {fileID: 0} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &95533810 GameObject: @@ -227,13 +227,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 95533810} + 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: 0} - m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &157782260 GameObject: @@ -258,6 +258,7 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 157782260} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -4.6326556, y: 0.98203504, z: 6.9309382} m_LocalScale: {x: 1, y: 1, z: 1} @@ -269,7 +270,6 @@ Transform: - {fileID: 1421503444} - {fileID: 1494435109} m_Father: {fileID: 0} - m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!4 &624469242 stripped Transform: @@ -312,13 +312,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1089364665} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -11.3755, y: 1.3935, z: 3.9827} m_LocalScale: {x: 6.1543775, y: 3.7869, z: 5.7455} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1702078697} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!65 &1089364667 BoxCollider: @@ -328,9 +328,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1089364665} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &1089364668 @@ -393,8 +401,13 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 0} m_Modifications: + - target: {fileID: 8083988910449603036, guid: c2b4fe01faa847f4b976b5539477e1ec, type: 3} + propertyPath: m_Version + value: 9 + objectReference: {fileID: 0} - target: {fileID: 8083988910661828845, guid: c2b4fe01faa847f4b976b5539477e1ec, type: 3} propertyPath: m_Name value: CameraRigBase @@ -444,6 +457,9 @@ PrefabInstance: value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: c2b4fe01faa847f4b976b5539477e1ec, type: 3} --- !u!1 &1402420031 GameObject: @@ -471,13 +487,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1402420031} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 5.32, y: 5.32, z: 5.32} m_ConstrainProportionsScale: 1 m_Children: [] m_Father: {fileID: 1702078697} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!64 &1402420033 MeshCollider: @@ -487,9 +503,17 @@ MeshCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1402420031} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 4 + serializedVersion: 5 m_Convex: 0 m_CookingOptions: 30 m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} @@ -548,6 +572,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 157782261} m_Modifications: - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} @@ -598,7 +623,14 @@ PrefabInstance: propertyPath: m_Name value: Enemy (1) objectReference: {fileID: 0} + - target: {fileID: 5599539567497807159, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} --- !u!4 &1421503444 stripped Transform: @@ -610,6 +642,7 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 157782261} m_Modifications: - target: {fileID: 191376514769192977, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} @@ -668,7 +701,14 @@ PrefabInstance: propertyPath: m_Name value: Enemy (2) objectReference: {fileID: 0} + - target: {fileID: 5599539567497807159, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} + propertyPath: m_IsActive + value: 0 + objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} --- !u!4 &1494435109 stripped Transform: @@ -698,6 +738,7 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1702078696} + 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} @@ -708,19 +749,15 @@ Transform: - {fileID: 1813727660} - {fileID: 1779908011} m_Father: {fileID: 0} - m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1001 &1715656625 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 157782261} m_Modifications: - - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} - propertyPath: m_RootOrder - value: 1 - objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.x value: -1.8 @@ -765,8 +802,10 @@ PrefabInstance: propertyPath: m_Name value: Enemy objectReference: {fileID: 0} - m_RemovedComponents: - - {fileID: 0} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} --- !u!4 &1715656626 stripped Transform: @@ -799,13 +838,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1779908010} + serializedVersion: 2 m_LocalRotation: {x: -0, y: 0.42212784, z: -0, w: 0.9065364} m_LocalPosition: {x: 5.39, y: 0.6702, z: 4.91} m_LocalScale: {x: 9.746384, y: 2.3403041, z: 1.8018664} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1702078697} - m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 49.938, z: 0} --- !u!65 &1779908012 BoxCollider: @@ -815,9 +854,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1779908010} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &1779908013 @@ -896,13 +943,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1813727659} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -1.4706, y: 0.6702, z: 6.79} m_LocalScale: {x: 9.746384, y: 2.3403041, z: 1.8018664} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 1702078697} - m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!65 &1813727661 BoxCollider: @@ -912,9 +959,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1813727659} m_Material: {fileID: 0} + m_IncludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_ExcludeLayers: + serializedVersion: 2 + m_Bits: 0 + m_LayerOverridePriority: 0 m_IsTrigger: 0 + m_ProvidesContacts: 0 m_Enabled: 1 - serializedVersion: 2 + serializedVersion: 3 m_Size: {x: 1, y: 1, z: 1} m_Center: {x: 0, y: 0, z: 0} --- !u!23 &1813727662 @@ -1054,13 +1109,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 2047541735} + serializedVersion: 2 m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} m_LocalPosition: {x: 0, y: 3, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: [] m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} --- !u!114 &2047541738 MonoBehaviour: @@ -1194,23 +1249,12 @@ PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 157782261} m_Modifications: - - target: {fileID: 3252872069634226352, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} - propertyPath: m_Enabled - value: 0 - objectReference: {fileID: 0} - - target: {fileID: 4256226406833302537, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} - propertyPath: m_IsTrigger - value: 1 - objectReference: {fileID: 0} - - target: {fileID: 8324879816836607384, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} - propertyPath: m_RootOrder - value: 0 - objectReference: {fileID: 0} - target: {fileID: 8324879816836607384, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} propertyPath: m_LocalPosition.x - value: 4.6326556 + value: 5.89 objectReference: {fileID: 0} - target: {fileID: 8324879816836607384, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} propertyPath: m_LocalPosition.y @@ -1218,7 +1262,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 8324879816836607384, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} propertyPath: m_LocalPosition.z - value: -2.8909383 + value: -9.56 objectReference: {fileID: 0} - target: {fileID: 8324879816836607384, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} propertyPath: m_LocalRotation.w @@ -1248,22 +1292,21 @@ PrefabInstance: propertyPath: m_LocalEulerAnglesHint.z value: 0 objectReference: {fileID: 0} - - target: {fileID: 8385032484663529878, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} - propertyPath: m_IsActive - value: 1 - objectReference: {fileID: 0} - target: {fileID: 8704396752535238434, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} propertyPath: m_Name value: Turret objectReference: {fileID: 0} - m_RemovedComponents: - - {fileID: 1344974744014620977, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} + m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} --- !u!1001 &664620741625697858 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 38176946} m_Modifications: - target: {fileID: 664620742648054780, guid: 3a89f87af6ee84a459d98a4c296dd1be, type: 3} @@ -1327,12 +1370,16 @@ PrefabInstance: value: BuildingHandler objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 3a89f87af6ee84a459d98a4c296dd1be, type: 3} --- !u!1001 &3627079579018641133 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 0} m_Modifications: - target: {fileID: 3627079578080913704, guid: 1170a91b91039d6429d389468bd72c6f, type: 3} @@ -1384,12 +1431,16 @@ PrefabInstance: value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 1170a91b91039d6429d389468bd72c6f, type: 3} --- !u!1001 &5200388200885062254 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 38176946} m_Modifications: - target: {fileID: 5200388201450229074, guid: 07826307af1971948b98dd42d1e9457a, type: 3} @@ -1441,12 +1492,16 @@ PrefabInstance: value: EnemyHandler objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 07826307af1971948b98dd42d1e9457a, type: 3} --- !u!1001 &5263199549561108292 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 38176946} m_Modifications: - target: {fileID: 5263199550015624125, guid: 2e352ad6389b4234083764d15d4e6a5f, type: 3} @@ -1498,18 +1553,18 @@ PrefabInstance: value: 0 objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 2e352ad6389b4234083764d15d4e6a5f, type: 3} --- !u!1001 &8451896670512076735 PrefabInstance: m_ObjectHideFlags: 0 serializedVersion: 2 m_Modification: + serializedVersion: 3 m_TransformParent: {fileID: 157782261} m_Modifications: - - target: {fileID: 493861824998956378, guid: 57a75520298c47140a928041b05d7f3c, type: 3} - propertyPath: m_RootOrder - value: 2 - objectReference: {fileID: 0} - target: {fileID: 493861824998956378, guid: 57a75520298c47140a928041b05d7f3c, type: 3} propertyPath: m_LocalPosition.x value: -0.07734442 @@ -1555,4 +1610,18 @@ PrefabInstance: value: PowerPlant objectReference: {fileID: 0} m_RemovedComponents: [] + m_RemovedGameObjects: [] + m_AddedGameObjects: [] + m_AddedComponents: [] m_SourcePrefab: {fileID: 100100000, guid: 57a75520298c47140a928041b05d7f3c, type: 3} +--- !u!1660057539 &9223372036854775807 +SceneRoots: + m_ObjectHideFlags: 0 + m_Roots: + - {fileID: 2047541737} + - {fileID: 38176946} + - {fileID: 1191794244} + - {fileID: 3627079579018641133} + - {fileID: 95533813} + - {fileID: 157782261} + - {fileID: 1702078697}