From 4027bf3c97978e76ceb6939ba4f6a67d367495d5 Mon Sep 17 00:00:00 2001 From: Stedd Date: Wed, 5 Oct 2022 23:56:48 +0200 Subject: [PATCH 01/14] WIP PowerSystem --- .../RuntimeSet/ActivePowerStructures.asset | 15 +++++++ .../ActivePowerStructures.asset.meta | 8 ++++ .../ScriptableObjects/SPowerBaseRuntimeSet.cs | 10 +++++ .../SPowerBaseRuntimeSet.cs.meta | 3 ++ .../ScriptableObjects/SPowerConfig.cs | 14 +++++++ .../ScriptableObjects/SPowerConfig.cs.meta | 11 +++++ Assets/Entities/Scripts.meta | 3 ++ Assets/Entities/{ => Scripts}/EntityBase.cs | 0 .../Entities/{ => Scripts}/EntityBase.cs.meta | 0 Assets/Entities/Scripts/PowerBase.cs | 42 +++++++++++++++++++ Assets/Entities/Scripts/PowerBase.cs.meta | 3 ++ .../Structures/PowerPlant/PowerPlant.prefab | 7 ++-- .../PowerplantPowerConfiguration.asset | 18 ++++++++ .../PowerplantPowerConfiguration.asset.meta | 8 ++++ .../Structures/Scripts/StructureBase.cs | 41 ++++++++---------- .../Entities/Structures/Turret/Turret.prefab | 10 ++--- .../Turret/TurretPowerConfiguration.asset | 18 ++++++++ .../TurretPowerConfiguration.asset.meta | 8 ++++ Assets/Handlers/PowerHandler.cs | 4 +- Assets/Handlers/PowerHandler.prefab | 3 +- 20 files changed, 189 insertions(+), 37 deletions(-) create mode 100644 Assets/Entities/RuntimeSet/ActivePowerStructures.asset create mode 100644 Assets/Entities/RuntimeSet/ActivePowerStructures.asset.meta create mode 100644 Assets/Entities/ScriptableObjects/SPowerBaseRuntimeSet.cs create mode 100644 Assets/Entities/ScriptableObjects/SPowerBaseRuntimeSet.cs.meta create mode 100644 Assets/Entities/ScriptableObjects/SPowerConfig.cs create mode 100644 Assets/Entities/ScriptableObjects/SPowerConfig.cs.meta create mode 100644 Assets/Entities/Scripts.meta rename Assets/Entities/{ => Scripts}/EntityBase.cs (100%) rename Assets/Entities/{ => Scripts}/EntityBase.cs.meta (100%) create mode 100644 Assets/Entities/Scripts/PowerBase.cs create mode 100644 Assets/Entities/Scripts/PowerBase.cs.meta create mode 100644 Assets/Entities/Structures/PowerPlant/PowerplantPowerConfiguration.asset create mode 100644 Assets/Entities/Structures/PowerPlant/PowerplantPowerConfiguration.asset.meta create mode 100644 Assets/Entities/Structures/Turret/TurretPowerConfiguration.asset create mode 100644 Assets/Entities/Structures/Turret/TurretPowerConfiguration.asset.meta diff --git a/Assets/Entities/RuntimeSet/ActivePowerStructures.asset b/Assets/Entities/RuntimeSet/ActivePowerStructures.asset new file mode 100644 index 0000000..f01ab89 --- /dev/null +++ b/Assets/Entities/RuntimeSet/ActivePowerStructures.asset @@ -0,0 +1,15 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 3c46c7dedba14f3da958a2e6a3d3feaa, type: 3} + m_Name: ActivePowerStructures + m_EditorClassIdentifier: + _list: [] diff --git a/Assets/Entities/RuntimeSet/ActivePowerStructures.asset.meta b/Assets/Entities/RuntimeSet/ActivePowerStructures.asset.meta new file mode 100644 index 0000000..665b2a4 --- /dev/null +++ b/Assets/Entities/RuntimeSet/ActivePowerStructures.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 127d26f1f3536e94da36af662f63fa0b +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Entities/ScriptableObjects/SPowerBaseRuntimeSet.cs b/Assets/Entities/ScriptableObjects/SPowerBaseRuntimeSet.cs new file mode 100644 index 0000000..c87013f --- /dev/null +++ b/Assets/Entities/ScriptableObjects/SPowerBaseRuntimeSet.cs @@ -0,0 +1,10 @@ +using AsteroidGame.ScriptableObjects; +using UnityEngine; + +namespace AsteroidGame.Entities +{ + [CreateAssetMenu(fileName = "newPowerBaseRuntimeSet", menuName = "RuntimeSet/PowerBase")] + public class SPowerBaseRuntimeSet : SRuntimeSet + { + } +} \ No newline at end of file diff --git a/Assets/Entities/ScriptableObjects/SPowerBaseRuntimeSet.cs.meta b/Assets/Entities/ScriptableObjects/SPowerBaseRuntimeSet.cs.meta new file mode 100644 index 0000000..c05d2f4 --- /dev/null +++ b/Assets/Entities/ScriptableObjects/SPowerBaseRuntimeSet.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 3c46c7dedba14f3da958a2e6a3d3feaa +timeCreated: 1665006553 \ No newline at end of file diff --git a/Assets/Entities/ScriptableObjects/SPowerConfig.cs b/Assets/Entities/ScriptableObjects/SPowerConfig.cs new file mode 100644 index 0000000..9c7c072 --- /dev/null +++ b/Assets/Entities/ScriptableObjects/SPowerConfig.cs @@ -0,0 +1,14 @@ +using AsteroidGame.Interfaces; +using UnityEngine; + +namespace AsteroidGame.Entities +{ + [CreateAssetMenu(fileName = "newPowerConfiguration", menuName = "Configuration/Power")] + public class SPowerConfig : ScriptableObject + { + public SPowerBaseRuntimeSet _activePowerStructures; + public bool isGenerator; + public bool isConsumer; + public int maxPower; + } +} \ No newline at end of file diff --git a/Assets/Entities/ScriptableObjects/SPowerConfig.cs.meta b/Assets/Entities/ScriptableObjects/SPowerConfig.cs.meta new file mode 100644 index 0000000..ceb8c6e --- /dev/null +++ b/Assets/Entities/ScriptableObjects/SPowerConfig.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 87159085b5778b14482ec38673729d95 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Entities/Scripts.meta b/Assets/Entities/Scripts.meta new file mode 100644 index 0000000..dabcc8a --- /dev/null +++ b/Assets/Entities/Scripts.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 087e96d3ceec42f9aba85753a4b8d15f +timeCreated: 1665005789 \ No newline at end of file diff --git a/Assets/Entities/EntityBase.cs b/Assets/Entities/Scripts/EntityBase.cs similarity index 100% rename from Assets/Entities/EntityBase.cs rename to Assets/Entities/Scripts/EntityBase.cs diff --git a/Assets/Entities/EntityBase.cs.meta b/Assets/Entities/Scripts/EntityBase.cs.meta similarity index 100% rename from Assets/Entities/EntityBase.cs.meta rename to Assets/Entities/Scripts/EntityBase.cs.meta diff --git a/Assets/Entities/Scripts/PowerBase.cs b/Assets/Entities/Scripts/PowerBase.cs new file mode 100644 index 0000000..5291f94 --- /dev/null +++ b/Assets/Entities/Scripts/PowerBase.cs @@ -0,0 +1,42 @@ +using System; +using AsteroidGame.Interfaces; +using UnityEngine; + +namespace AsteroidGame.Entities +{ + public class PowerBase : MonoBehaviour, IPowerSystem + { + [Header("State")] + [SerializeField] protected bool _isGenerator = true; + [SerializeField] protected bool _isConsumer = true; + [SerializeField] protected int _maxPower; + [SerializeField] protected int _currentPower; + + public void SetConfig(SPowerConfig config) + { + _isGenerator = config.isGenerator; + _isConsumer = config.isConsumer; + _maxPower = config.maxPower; + } + + #region Setters + + public void SetMaxPower(int newValue) => _maxPower = newValue; + + #endregion + + #region Getters + + public bool IsGenerator => _isGenerator; + + public bool IsConsumer => _isConsumer; + + public int GetMaxPower() => _maxPower; + + public int GetCurrentPower() => _currentPower; + + public float GetPowerFactor() => (float)_currentPower / _maxPower; + + #endregion + } +} \ No newline at end of file diff --git a/Assets/Entities/Scripts/PowerBase.cs.meta b/Assets/Entities/Scripts/PowerBase.cs.meta new file mode 100644 index 0000000..c45b37a --- /dev/null +++ b/Assets/Entities/Scripts/PowerBase.cs.meta @@ -0,0 +1,3 @@ +fileFormatVersion: 2 +guid: 5aca1826fdd547e1afd4a67d55a0f25c +timeCreated: 1665006027 \ No newline at end of file diff --git a/Assets/Entities/Structures/PowerPlant/PowerPlant.prefab b/Assets/Entities/Structures/PowerPlant/PowerPlant.prefab index 05a48e5..7612afb 100644 --- a/Assets/Entities/Structures/PowerPlant/PowerPlant.prefab +++ b/Assets/Entities/Structures/PowerPlant/PowerPlant.prefab @@ -56,11 +56,10 @@ MonoBehaviour: _cost: 100 _buildPlacementBlocked: 0 _buildTimer: 0 - _isGenerator: 1 - _isConsumer: 0 - _maxPower: 100 - _currentPower: 0 _structureBaseSet: {fileID: 11400000, guid: 1925957d2bc2f0c4a9210131f2d2c4e5, type: 2} + _powerBaseSet: {fileID: 11400000, guid: 127d26f1f3536e94da36af662f63fa0b, type: 2} + _powerConfig: {fileID: 11400000, guid: 742a00ce6f6a8e04cae160bc40f09e24, type: 2} + _power: {fileID: 0} --- !u!1 &1863277996181035512 GameObject: m_ObjectHideFlags: 0 diff --git a/Assets/Entities/Structures/PowerPlant/PowerplantPowerConfiguration.asset b/Assets/Entities/Structures/PowerPlant/PowerplantPowerConfiguration.asset new file mode 100644 index 0000000..341585f --- /dev/null +++ b/Assets/Entities/Structures/PowerPlant/PowerplantPowerConfiguration.asset @@ -0,0 +1,18 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 87159085b5778b14482ec38673729d95, type: 3} + m_Name: PowerplantPowerConfiguration + m_EditorClassIdentifier: + _activePowerStructures: {fileID: 11400000, guid: 127d26f1f3536e94da36af662f63fa0b, type: 2} + isGenerator: 1 + isConsumer: 0 + maxPower: 100 diff --git a/Assets/Entities/Structures/PowerPlant/PowerplantPowerConfiguration.asset.meta b/Assets/Entities/Structures/PowerPlant/PowerplantPowerConfiguration.asset.meta new file mode 100644 index 0000000..3a1bb0c --- /dev/null +++ b/Assets/Entities/Structures/PowerPlant/PowerplantPowerConfiguration.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 742a00ce6f6a8e04cae160bc40f09e24 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Entities/Structures/Scripts/StructureBase.cs b/Assets/Entities/Structures/Scripts/StructureBase.cs index a55c5af..fcc3ee8 100644 --- a/Assets/Entities/Structures/Scripts/StructureBase.cs +++ b/Assets/Entities/Structures/Scripts/StructureBase.cs @@ -1,33 +1,27 @@ - +using System; using AsteroidGame.Interfaces; using UnityEngine; namespace AsteroidGame.Entities { - public class StructureBase : EntityBase, IBuildable, IPowerSystem + public class StructureBase : EntityBase, IBuildable { [Header("BuildParameters")] [SerializeField] protected int _cost; [SerializeField] private bool _buildPlacementBlocked; [SerializeField] protected float _buildTimer; - [Header("Power")] - [SerializeField] protected bool _isGenerator; - [SerializeField] protected bool _isConsumer; - [SerializeField] protected int _maxPower; - [SerializeField] protected int _currentPower; - [Header("Configuration")] [SerializeField] private SEntityBaseRuntimeSet _structureBaseSet; - - #region Private + [SerializeField] private SPowerBaseRuntimeSet _powerBaseSet; - #endregion + [Header("Power")] + [SerializeField] private SPowerConfig _powerConfig; + [SerializeField] private PowerBase _power; #region Publics - public bool IsGenerator => _isGenerator; - public bool IsConsumer => _isConsumer; + public PowerBase Power => _power; public bool BuildPlacementBlocked => _buildPlacementBlocked; #endregion @@ -35,17 +29,23 @@ namespace AsteroidGame.Entities protected override void OnEnable() { base.OnEnable(); - if (!_isConsumer && !_isGenerator) - { - Debug.LogWarning("Power consumer/generator not set!"); - } _structureBaseSet.Add(this); + InitializePower(); + } + + private void InitializePower() + { + _power = gameObject.AddComponent(); + _power.SetConfig(_powerConfig); + _powerBaseSet.Add(_power); + } protected override void OnDisable() { base.OnDisable(); _structureBaseSet.Remove(this); + _powerBaseSet.Remove(_power); } private void OnTriggerStay(Collider other) @@ -66,19 +66,12 @@ namespace AsteroidGame.Entities #region Setters - public void SetMaxPower(int newValue) => _maxPower = newValue; public int SetCost(int newCost) => _cost = newCost; #endregion #region Getters - public int GetMaxPower() => _maxPower; - - public int GetCurrentPower() => _currentPower; - - public float GetPowerFactor() => (float)_currentPower / _maxPower; - public int GetCost() => _cost; #endregion diff --git a/Assets/Entities/Structures/Turret/Turret.prefab b/Assets/Entities/Structures/Turret/Turret.prefab index 0132361..6211817 100644 --- a/Assets/Entities/Structures/Turret/Turret.prefab +++ b/Assets/Entities/Structures/Turret/Turret.prefab @@ -752,12 +752,10 @@ MonoBehaviour: _cost: 10 _buildPlacementBlocked: 0 _buildTimer: 0 - _isGenerator: 0 - _isConsumer: 1 - _maxPower: 10 - _currentPower: 0 _structureBaseSet: {fileID: 11400000, guid: 1925957d2bc2f0c4a9210131f2d2c4e5, type: 2} - _weaponRange: 10 + _powerBaseSet: {fileID: 11400000, guid: 127d26f1f3536e94da36af662f63fa0b, type: 2} + _powerConfig: {fileID: 11400000, guid: 9dc2a0f5f29a11a4d9cabe19e18bdd42, type: 2} + _power: {fileID: 0} _damage: 1 _fireRate: 1 _projectileSpeed: 5 @@ -767,4 +765,4 @@ MonoBehaviour: _barrel: {fileID: 5103935545559248087} _targeterConfig: {fileID: 11400000, guid: 9df40bc219ab8f04cb4e86558bc0df86, type: 2} _targeter: {fileID: 0} - _targetEnemy: {fileID: 0} + _target: {fileID: 0} diff --git a/Assets/Entities/Structures/Turret/TurretPowerConfiguration.asset b/Assets/Entities/Structures/Turret/TurretPowerConfiguration.asset new file mode 100644 index 0000000..25e6019 --- /dev/null +++ b/Assets/Entities/Structures/Turret/TurretPowerConfiguration.asset @@ -0,0 +1,18 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 87159085b5778b14482ec38673729d95, type: 3} + m_Name: TurretPowerConfiguration + m_EditorClassIdentifier: + _activePowerStructures: {fileID: 11400000, guid: 127d26f1f3536e94da36af662f63fa0b, type: 2} + isGenerator: 0 + isConsumer: 1 + maxPower: 10 diff --git a/Assets/Entities/Structures/Turret/TurretPowerConfiguration.asset.meta b/Assets/Entities/Structures/Turret/TurretPowerConfiguration.asset.meta new file mode 100644 index 0000000..710fddb --- /dev/null +++ b/Assets/Entities/Structures/Turret/TurretPowerConfiguration.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9dc2a0f5f29a11a4d9cabe19e18bdd42 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Handlers/PowerHandler.cs b/Assets/Handlers/PowerHandler.cs index dc3e9f4..3f0c2c5 100644 --- a/Assets/Handlers/PowerHandler.cs +++ b/Assets/Handlers/PowerHandler.cs @@ -13,14 +13,14 @@ namespace AsteroidGame.Handlers [SerializeField] private float _powerFactor; [Header("Connections")] - [SerializeField] private SStructureBaseRuntimeSet _activeStructures; + [SerializeField] private SPowerBaseRuntimeSet _activePowerStructures; private void Update() { _powerConsumption = 0; _powerConsumptionPeak = 0; _powerCapacity = 0; - foreach (var structure in _activeStructures._list) + foreach (var structure in _activePowerStructures._list) { if (structure.IsConsumer) { diff --git a/Assets/Handlers/PowerHandler.prefab b/Assets/Handlers/PowerHandler.prefab index 7ea268e..cb7a2c0 100644 --- a/Assets/Handlers/PowerHandler.prefab +++ b/Assets/Handlers/PowerHandler.prefab @@ -45,6 +45,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: _powerConsumption: 0 + _powerConsumptionPeak: 0 _powerCapacity: 0 _powerFactor: 0 - _activeStructures: {fileID: 11400000, guid: bccdf438a1004a444bc24492728d6fbd, type: 2} + _activePowerStructures: {fileID: 11400000, guid: 127d26f1f3536e94da36af662f63fa0b, type: 2} From 9237031dc62dd9c38623c1537ef411ea2a016e3d Mon Sep 17 00:00:00 2001 From: Stedd Date: Thu, 6 Oct 2022 00:40:50 +0200 Subject: [PATCH 02/14] Some cleanups --- .../Entities/Enemies/AvailableEnemies.asset | 3 +- .../Enemies/EnemyTargeterConfiguration.asset | 4 +- Assets/Entities/{ => Scripts}/Targeter.cs | 0 .../Entities/{ => Scripts}/Targeter.cs.meta | 0 Assets/Handlers/EnemyHandler.cs | 2 +- Assets/Handlers/EnemyHandler.prefab | 2 +- Assets/Scenes/Playground 1.unity | 232 +++++++++++++++--- Entities.csproj.DotSettings | 1 + 8 files changed, 208 insertions(+), 36 deletions(-) rename Assets/Entities/{ => Scripts}/Targeter.cs (100%) rename Assets/Entities/{ => Scripts}/Targeter.cs.meta (100%) diff --git a/Assets/Entities/Enemies/AvailableEnemies.asset b/Assets/Entities/Enemies/AvailableEnemies.asset index 391cdb0..35367a8 100644 --- a/Assets/Entities/Enemies/AvailableEnemies.asset +++ b/Assets/Entities/Enemies/AvailableEnemies.asset @@ -12,4 +12,5 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 1260fd8b7346bdf41a685d24b968a231, type: 3} m_Name: AvailableEnemies m_EditorClassIdentifier: - _list: [] + _list: + - {fileID: 1411216412654489461, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} diff --git a/Assets/Entities/Enemies/EnemyTargeterConfiguration.asset b/Assets/Entities/Enemies/EnemyTargeterConfiguration.asset index 92129b5..2629179 100644 --- a/Assets/Entities/Enemies/EnemyTargeterConfiguration.asset +++ b/Assets/Entities/Enemies/EnemyTargeterConfiguration.asset @@ -12,6 +12,6 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 02781660543c12d4ebddaf334eb0d730, type: 3} m_Name: EnemyTargeterConfiguration m_EditorClassIdentifier: - _range: 0 + _range: 30 _selectedTargetStrategy: 0 - _activeEntities: {fileID: 0} + _activeEntities: {fileID: 11400000, guid: 1925957d2bc2f0c4a9210131f2d2c4e5, type: 2} diff --git a/Assets/Entities/Targeter.cs b/Assets/Entities/Scripts/Targeter.cs similarity index 100% rename from Assets/Entities/Targeter.cs rename to Assets/Entities/Scripts/Targeter.cs diff --git a/Assets/Entities/Targeter.cs.meta b/Assets/Entities/Scripts/Targeter.cs.meta similarity index 100% rename from Assets/Entities/Targeter.cs.meta rename to Assets/Entities/Scripts/Targeter.cs.meta diff --git a/Assets/Handlers/EnemyHandler.cs b/Assets/Handlers/EnemyHandler.cs index ed2e6a7..302e223 100644 --- a/Assets/Handlers/EnemyHandler.cs +++ b/Assets/Handlers/EnemyHandler.cs @@ -13,6 +13,6 @@ namespace AsteroidGame.Handlers [SerializeField] private SEnemyBaseList _availableEnemies; [Header("Lists")] - [SerializeField] private SEnemyBaseRuntimeSet _activeEnemies; + [SerializeField] private SEntityBaseRuntimeSet _activeEnemies; } } \ No newline at end of file diff --git a/Assets/Handlers/EnemyHandler.prefab b/Assets/Handlers/EnemyHandler.prefab index 64e155d..81be6a2 100644 --- a/Assets/Handlers/EnemyHandler.prefab +++ b/Assets/Handlers/EnemyHandler.prefab @@ -47,4 +47,4 @@ MonoBehaviour: _spawnRate: 60 _objectPoolSize: 15 _availableEnemies: {fileID: 11400000, guid: 00c435d92e1df55499826c91b4f1e62f, type: 2} - _activeEnemies: {fileID: 11400000, guid: 5f6dc84d75dbd9a459e519de42279066, type: 2} + _activeEnemies: {fileID: 11400000, guid: e5f25127d92be074aac6e7b745fae107, type: 2} diff --git a/Assets/Scenes/Playground 1.unity b/Assets/Scenes/Playground 1.unity index 4802c2e..43073b2 100644 --- a/Assets/Scenes/Playground 1.unity +++ b/Assets/Scenes/Playground 1.unity @@ -271,11 +271,6 @@ Transform: m_Father: {fileID: 0} m_RootOrder: 5 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} ---- !u!1 &208658293 stripped -GameObject: - m_CorrespondingSourceObject: {fileID: 5599539567497807159, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} - m_PrefabInstance: {fileID: 1715656625} - m_PrefabAsset: {fileID: 0} --- !u!4 &624469242 stripped Transform: m_CorrespondingSourceObject: {fileID: 5263199550015624126, guid: 2e352ad6389b4234083764d15d4e6a5f, type: 3} @@ -561,7 +556,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.x - value: 5.96 + value: 9.57 objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.y @@ -569,7 +564,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.z - value: -1.35 + value: 5.23 objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalRotation.w @@ -617,6 +612,10 @@ PrefabInstance: m_Modification: m_TransformParent: {fileID: 157782261} m_Modifications: + - target: {fileID: 191376514769192977, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} + propertyPath: m_LocalEulerAnglesHint.y + value: -90 + objectReference: {fileID: 0} - target: {fileID: 1411216412654489461, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: _health value: 2 @@ -627,7 +626,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.x - value: 4.51 + value: 3.91 objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.y @@ -635,7 +634,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.z - value: 1.03 + value: 3.71 objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalRotation.w @@ -706,6 +705,8 @@ Transform: m_Children: - {fileID: 1402420032} - {fileID: 1089364666} + - {fileID: 1813727660} + - {fileID: 1779908011} m_Father: {fileID: 0} m_RootOrder: 6 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} @@ -716,10 +717,6 @@ PrefabInstance: m_Modification: m_TransformParent: {fileID: 157782261} m_Modifications: - - target: {fileID: 1411216412654489461, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} - propertyPath: _entityBaseSet - value: - objectReference: {fileID: 11400000, guid: e5f25127d92be074aac6e7b745fae107, type: 2} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_RootOrder value: 1 @@ -768,35 +765,208 @@ PrefabInstance: propertyPath: m_Name value: Enemy objectReference: {fileID: 0} - m_RemovedComponents: [] + m_RemovedComponents: + - {fileID: 0} 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!195 &1715656628 -NavMeshAgent: +--- !u!1 &1779908010 +GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} - m_GameObject: {fileID: 208658293} + serializedVersion: 6 + m_Component: + - component: {fileID: 1779908011} + - component: {fileID: 1779908014} + - component: {fileID: 1779908013} + - component: {fileID: 1779908012} + m_Layer: 0 + m_Name: Cube (2) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 2147483647 + m_IsActive: 1 +--- !u!4 &1779908011 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1779908010} + 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: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1779908010} + m_Material: {fileID: 0} + m_IsTrigger: 0 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 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1779908013 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1779908010} + 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: 73c176f402d2c2f4d929aa5da7585d17, 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!33 &1779908014 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1779908010} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!1 &1813727659 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1813727660} + - component: {fileID: 1813727663} + - component: {fileID: 1813727662} + - component: {fileID: 1813727661} + m_Layer: 0 + m_Name: Cube (1) + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 2147483647 + m_IsActive: 1 +--- !u!4 &1813727660 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1813727659} + 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: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1813727659} + m_Material: {fileID: 0} + m_IsTrigger: 0 + m_Enabled: 1 + serializedVersion: 2 + m_Size: {x: 1, y: 1, z: 1} + m_Center: {x: 0, y: 0, z: 0} +--- !u!23 &1813727662 +MeshRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1813727659} + 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: 73c176f402d2c2f4d929aa5da7585d17, 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!33 &1813727663 +MeshFilter: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1813727659} + m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} --- !u!1 &2047541735 GameObject: m_ObjectHideFlags: 0 diff --git a/Entities.csproj.DotSettings b/Entities.csproj.DotSettings index 80d98ab..4abec3d 100644 --- a/Entities.csproj.DotSettings +++ b/Entities.csproj.DotSettings @@ -2,6 +2,7 @@ True True True + True True True True From ce40da5de0d0597456269bfdb193586704889fed Mon Sep 17 00:00:00 2001 From: Stedd Date: Sun, 8 Oct 2023 13:01:21 +0200 Subject: [PATCH 03/14] Unity 2022.3.10 --- .../Environment/Art/Materials/Blue_Mat.mat | 20 +- .../Art/Materials/GreyBlue_Mat.mat | 20 +- .../Art/Materials/GridBlue_01_Mat.mat | 20 +- .../Art/Materials/GridOrange_01_Mat.mat | 20 +- .../Art/Materials/GridWhite_01_Mat.mat | 20 +- .../ShaderGraphGrid_01_Mat.mat | 5 +- Assets/Handlers/BuildingHandler.cs | 24 +- Assets/Handlers/PowerHandler.cs | 3 +- Assets/InputSystem/CameraControllActions.cs | 274 ++++++++---------- Assets/InputSystem/HandlerControls.cs | 244 +++++++++------- Assets/Materials/ColliderIndicator.mat | 20 +- Assets/Materials/GhostMaterial.mat | 20 +- Assets/Materials/Opaque_Blue.mat | 20 +- Assets/Materials/Opaque_Gray.mat | 20 +- Assets/Materials/Opaque_Red.mat | 20 +- Assets/Materials/Transparent_Green.mat | 20 +- .../DefaultSettingsVolumeProfile.asset | 56 +++- Packages/manifest.json | 17 +- Packages/packages-lock.json | 107 +++---- .../BurstAotSettings_StandaloneWindows.json | 18 ++ ProjectSettings/CommonBurstAotSettings.json | 6 + ProjectSettings/HDRPProjectSettings.asset | 2 +- .../Settings.json | 2 - ProjectSettings/ProjectSettings.asset | 96 ++++-- ProjectSettings/ProjectVersion.txt | 4 +- ProjectSettings/QualitySettings.asset | 103 ++++++- ProjectSettings/VFXManager.asset | 6 +- ProjectSettings/boot.config | 0 28 files changed, 756 insertions(+), 431 deletions(-) create mode 100644 ProjectSettings/BurstAotSettings_StandaloneWindows.json create mode 100644 ProjectSettings/CommonBurstAotSettings.json delete mode 100644 ProjectSettings/boot.config diff --git a/Assets/AssetPacks/Environment/Art/Materials/Blue_Mat.mat b/Assets/AssetPacks/Environment/Art/Materials/Blue_Mat.mat index da4dc7a..752750b 100644 --- a/Assets/AssetPacks/Environment/Art/Materials/Blue_Mat.mat +++ b/Assets/AssetPacks/Environment/Art/Materials/Blue_Mat.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: @@ -25,6 +25,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: Blue_Mat m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_SSR_TRANSPARENT - _NORMALMAP_TANGENT_SPACE @@ -40,6 +42,7 @@ Material: - TransparentBackface - RayTracingPrepass - MOTIONVECTORS + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -151,6 +154,10 @@ Material: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} + - _TransmissionMaskMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} - _TransmittanceColorMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} @@ -180,6 +187,8 @@ Material: - _AlphaCutoffPrepass: 0.5 - _AlphaCutoffShadow: 0.5 - _AlphaDstBlend: 0 + - _AlphaRemapMax: 1 + - _AlphaRemapMin: 0 - _AlphaSrcBlend: 1 - _AlphaToMask: 0 - _AlphaToMaskInspectorValue: 0 @@ -236,6 +245,8 @@ Material: - _Mode: 0 - _NormalMapSpace: 0 - _NormalScale: 1 + - _ObjectSpaceUVMapping: 0 + - _ObjectSpaceUVMappingEmissive: 0 - _OcclusionStrength: 1 - _OpaqueCullMode: 2 - _PPDLodThreshold: 5 @@ -262,9 +273,9 @@ Material: - _StencilRefGBuffer: 10 - _StencilRefMV: 40 - _StencilWriteMask: 6 - - _StencilWriteMaskDepth: 8 - - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskDepth: 9 + - _StencilWriteMaskGBuffer: 15 + - _StencilWriteMaskMV: 41 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 0 @@ -272,6 +283,7 @@ Material: - _TexWorldScaleEmissive: 1 - _Thickness: 1 - _TransmissionEnable: 1 + - _TransmissionMask: 1 - _TransparentBackfaceEnable: 0 - _TransparentCullMode: 2 - _TransparentDepthPostpassEnable: 0 diff --git a/Assets/AssetPacks/Environment/Art/Materials/GreyBlue_Mat.mat b/Assets/AssetPacks/Environment/Art/Materials/GreyBlue_Mat.mat index 9900f88..88d40a3 100644 --- a/Assets/AssetPacks/Environment/Art/Materials/GreyBlue_Mat.mat +++ b/Assets/AssetPacks/Environment/Art/Materials/GreyBlue_Mat.mat @@ -9,6 +9,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: GreyBlue_Mat m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_SSR_TRANSPARENT - _NORMALMAP_TANGENT_SPACE @@ -24,6 +26,7 @@ Material: - TransparentBackface - RayTracingPrepass - MOTIONVECTORS + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -135,6 +138,10 @@ Material: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} + - _TransmissionMaskMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} - _TransmittanceColorMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} @@ -164,6 +171,8 @@ Material: - _AlphaCutoffPrepass: 0.5 - _AlphaCutoffShadow: 0.5 - _AlphaDstBlend: 0 + - _AlphaRemapMax: 1 + - _AlphaRemapMin: 0 - _AlphaSrcBlend: 1 - _AlphaToMask: 0 - _AlphaToMaskInspectorValue: 0 @@ -220,6 +229,8 @@ Material: - _Mode: 0 - _NormalMapSpace: 0 - _NormalScale: 1 + - _ObjectSpaceUVMapping: 0 + - _ObjectSpaceUVMappingEmissive: 0 - _OcclusionStrength: 1 - _OpaqueCullMode: 2 - _PPDLodThreshold: 5 @@ -246,9 +257,9 @@ Material: - _StencilRefGBuffer: 10 - _StencilRefMV: 40 - _StencilWriteMask: 6 - - _StencilWriteMaskDepth: 8 - - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskDepth: 9 + - _StencilWriteMaskGBuffer: 15 + - _StencilWriteMaskMV: 41 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 0 @@ -256,6 +267,7 @@ Material: - _TexWorldScaleEmissive: 1 - _Thickness: 1 - _TransmissionEnable: 1 + - _TransmissionMask: 1 - _TransparentBackfaceEnable: 0 - _TransparentCullMode: 2 - _TransparentDepthPostpassEnable: 0 @@ -303,7 +315,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: diff --git a/Assets/AssetPacks/Environment/Art/Materials/GridBlue_01_Mat.mat b/Assets/AssetPacks/Environment/Art/Materials/GridBlue_01_Mat.mat index 69e5bbf..5bbebb5 100644 --- a/Assets/AssetPacks/Environment/Art/Materials/GridBlue_01_Mat.mat +++ b/Assets/AssetPacks/Environment/Art/Materials/GridBlue_01_Mat.mat @@ -9,6 +9,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: GridBlue_01_Mat m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_SSR_TRANSPARENT - _EMISSIVE_COLOR_MAP @@ -26,6 +28,7 @@ Material: - TransparentBackface - RayTracingPrepass - MOTIONVECTORS + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -137,6 +140,10 @@ Material: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} + - _TransmissionMaskMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} - _TransmittanceColorMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} @@ -166,6 +173,8 @@ Material: - _AlphaCutoffPrepass: 0.5 - _AlphaCutoffShadow: 0.5 - _AlphaDstBlend: 0 + - _AlphaRemapMax: 1 + - _AlphaRemapMin: 0 - _AlphaSrcBlend: 1 - _AlphaToMask: 0 - _AlphaToMaskInspectorValue: 0 @@ -222,6 +231,8 @@ Material: - _Mode: 0 - _NormalMapSpace: 0 - _NormalScale: 1 + - _ObjectSpaceUVMapping: 0 + - _ObjectSpaceUVMappingEmissive: 0 - _OcclusionStrength: 0 - _OpaqueCullMode: 2 - _PPDLodThreshold: 5 @@ -248,9 +259,9 @@ Material: - _StencilRefGBuffer: 10 - _StencilRefMV: 40 - _StencilWriteMask: 6 - - _StencilWriteMaskDepth: 8 - - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskDepth: 9 + - _StencilWriteMaskGBuffer: 15 + - _StencilWriteMaskMV: 41 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 0 @@ -258,6 +269,7 @@ Material: - _TexWorldScaleEmissive: 1 - _Thickness: 1 - _TransmissionEnable: 1 + - _TransmissionMask: 1 - _TransparentBackfaceEnable: 0 - _TransparentCullMode: 2 - _TransparentDepthPostpassEnable: 0 @@ -305,7 +317,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: diff --git a/Assets/AssetPacks/Environment/Art/Materials/GridOrange_01_Mat.mat b/Assets/AssetPacks/Environment/Art/Materials/GridOrange_01_Mat.mat index 474bb55..3fa31b0 100644 --- a/Assets/AssetPacks/Environment/Art/Materials/GridOrange_01_Mat.mat +++ b/Assets/AssetPacks/Environment/Art/Materials/GridOrange_01_Mat.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: @@ -25,6 +25,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: GridOrange_01_Mat m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_SSR_TRANSPARENT - _EMISSIVE_COLOR_MAP @@ -42,6 +44,7 @@ Material: - TransparentBackface - RayTracingPrepass - MOTIONVECTORS + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -153,6 +156,10 @@ Material: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} + - _TransmissionMaskMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} - _TransmittanceColorMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} @@ -182,6 +189,8 @@ Material: - _AlphaCutoffPrepass: 0.5 - _AlphaCutoffShadow: 0.5 - _AlphaDstBlend: 0 + - _AlphaRemapMax: 1 + - _AlphaRemapMin: 0 - _AlphaSrcBlend: 1 - _AlphaToMask: 0 - _AlphaToMaskInspectorValue: 0 @@ -238,6 +247,8 @@ Material: - _Mode: 0 - _NormalMapSpace: 0 - _NormalScale: 1 + - _ObjectSpaceUVMapping: 0 + - _ObjectSpaceUVMappingEmissive: 0 - _OcclusionStrength: 0 - _OpaqueCullMode: 2 - _PPDLodThreshold: 5 @@ -264,9 +275,9 @@ Material: - _StencilRefGBuffer: 10 - _StencilRefMV: 40 - _StencilWriteMask: 6 - - _StencilWriteMaskDepth: 8 - - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskDepth: 9 + - _StencilWriteMaskGBuffer: 15 + - _StencilWriteMaskMV: 41 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 0 @@ -274,6 +285,7 @@ Material: - _TexWorldScaleEmissive: 1 - _Thickness: 1 - _TransmissionEnable: 1 + - _TransmissionMask: 1 - _TransparentBackfaceEnable: 0 - _TransparentCullMode: 2 - _TransparentDepthPostpassEnable: 0 diff --git a/Assets/AssetPacks/Environment/Art/Materials/GridWhite_01_Mat.mat b/Assets/AssetPacks/Environment/Art/Materials/GridWhite_01_Mat.mat index ba9a9b1..bf10b89 100644 --- a/Assets/AssetPacks/Environment/Art/Materials/GridWhite_01_Mat.mat +++ b/Assets/AssetPacks/Environment/Art/Materials/GridWhite_01_Mat.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: @@ -25,6 +25,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: GridWhite_01_Mat m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_SSR_TRANSPARENT - _EMISSIVE_COLOR_MAP @@ -42,6 +44,7 @@ Material: - TransparentBackface - RayTracingPrepass - MOTIONVECTORS + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -153,6 +156,10 @@ Material: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} + - _TransmissionMaskMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} - _TransmittanceColorMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} @@ -182,6 +189,8 @@ Material: - _AlphaCutoffPrepass: 0.5 - _AlphaCutoffShadow: 0.5 - _AlphaDstBlend: 0 + - _AlphaRemapMax: 1 + - _AlphaRemapMin: 0 - _AlphaSrcBlend: 1 - _AlphaToMask: 0 - _AlphaToMaskInspectorValue: 0 @@ -238,6 +247,8 @@ Material: - _Mode: 0 - _NormalMapSpace: 0 - _NormalScale: 1 + - _ObjectSpaceUVMapping: 0 + - _ObjectSpaceUVMappingEmissive: 0 - _OcclusionStrength: 0 - _OpaqueCullMode: 2 - _PPDLodThreshold: 5 @@ -264,9 +275,9 @@ Material: - _StencilRefGBuffer: 10 - _StencilRefMV: 40 - _StencilWriteMask: 6 - - _StencilWriteMaskDepth: 8 - - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskDepth: 9 + - _StencilWriteMaskGBuffer: 15 + - _StencilWriteMaskMV: 41 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 0 @@ -274,6 +285,7 @@ Material: - _TexWorldScaleEmissive: 1 - _Thickness: 1 - _TransmissionEnable: 1 + - _TransmissionMask: 1 - _TransparentBackfaceEnable: 0 - _TransparentCullMode: 2 - _TransparentDepthPostpassEnable: 0 diff --git a/Assets/AssetPacks/Environment/Art/Materials/URP_HDRP_ShaderGraph/ShaderGraphGrid_01_Mat.mat b/Assets/AssetPacks/Environment/Art/Materials/URP_HDRP_ShaderGraph/ShaderGraphGrid_01_Mat.mat index e2d4470..6c7701a 100644 --- a/Assets/AssetPacks/Environment/Art/Materials/URP_HDRP_ShaderGraph/ShaderGraphGrid_01_Mat.mat +++ b/Assets/AssetPacks/Environment/Art/Materials/URP_HDRP_ShaderGraph/ShaderGraphGrid_01_Mat.mat @@ -9,6 +9,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: ShaderGraphGrid_01_Mat m_Shader: {fileID: -6465566751694194690, guid: b8d7679189d4a5940af46004f3870920, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_DECALS - _DISABLE_SSR_TRANSPARENT @@ -23,6 +25,7 @@ Material: - TransparentDepthPostpass - TransparentBackface - RayTracingPrepass + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -174,7 +177,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: diff --git a/Assets/Handlers/BuildingHandler.cs b/Assets/Handlers/BuildingHandler.cs index df96d9c..48b8a57 100644 --- a/Assets/Handlers/BuildingHandler.cs +++ b/Assets/Handlers/BuildingHandler.cs @@ -21,6 +21,7 @@ namespace AsteroidGame.Handlers [SerializeField] private SStructureBaseList _availableSStructures; #region Private + private Color _colorCurrent; private Camera _camera; private Vector3 _tempVec; @@ -34,14 +35,9 @@ namespace AsteroidGame.Handlers protected override void OnEnable() { base.OnEnable(); - // for (int i = 0; i < _availableStructuresObject._structureList.Count; i++) - // { - // _availableStructures.Add(i, _availableStructuresObject._structureList[i]); - // } _camera = Camera.main; _buildPlane = new Plane(Vector3.up, Vector3.zero); - //_activeStructures.Clear(); } private void Update() @@ -107,7 +103,8 @@ namespace AsteroidGame.Handlers private void SpawnGhostStructure() { - _ghostStructure = Instantiate(_availableSStructures._structureList[_buildingSelector], GetPlanePoint(), Quaternion.identity, + _ghostStructure = Instantiate(_availableSStructures._structureList[_buildingSelector], GetPlanePoint(), + Quaternion.identity, transform); _ghostStructure.name = "GhostStructure"; @@ -131,10 +128,9 @@ namespace AsteroidGame.Handlers private void SpawnStructure() { - _tempStructure = Instantiate(_availableSStructures._structureList[_buildingSelector], GetPlanePoint(), Quaternion.identity, + _tempStructure = Instantiate(_availableSStructures._structureList[_buildingSelector], GetPlanePoint(), + Quaternion.identity, transform); - // _activeStructures.Add(_tempStructure); - // _buildingLists[0].Add(_tempStructure); } #region Getters @@ -151,16 +147,6 @@ namespace AsteroidGame.Handlers return Vector3.zero; } - // public List GetAvailableStructures() - // { - // return _availableStructures._structureList; - // } - - // public List GetActiveStructures() - // { - // return _activeStructures; - // } - #endregion #region Setters diff --git a/Assets/Handlers/PowerHandler.cs b/Assets/Handlers/PowerHandler.cs index 3f0c2c5..5b3ecf1 100644 --- a/Assets/Handlers/PowerHandler.cs +++ b/Assets/Handlers/PowerHandler.cs @@ -15,6 +15,7 @@ namespace AsteroidGame.Handlers [Header("Connections")] [SerializeField] private SPowerBaseRuntimeSet _activePowerStructures; + private void Update() { _powerConsumption = 0; @@ -43,7 +44,7 @@ namespace AsteroidGame.Handlers _powerFactor = 0; } } - + public int GetMaxPower() { throw new NotImplementedException(); diff --git a/Assets/InputSystem/CameraControllActions.cs b/Assets/InputSystem/CameraControllActions.cs index f98e0e7..dfcb260 100644 --- a/Assets/InputSystem/CameraControllActions.cs +++ b/Assets/InputSystem/CameraControllActions.cs @@ -1,7 +1,7 @@ //------------------------------------------------------------------------------ // // This code was auto-generated by com.unity.inputsystem:InputActionCodeGenerator -// version 1.3.0 +// version 1.7.0 // from Assets/InputSystem/CameraControllActions.inputactions // // Changes to this file may cause incorrect behavior and will be lost if @@ -15,15 +15,12 @@ using System.Collections.Generic; using UnityEngine.InputSystem; using UnityEngine.InputSystem.Utilities; -namespace InputSystem +public partial class @CameraControllActions: IInputActionCollection2, IDisposable { - public partial class @CameraControllActions : IInputActionCollection2, IDisposable + public InputActionAsset asset { get; } + public @CameraControllActions() { - public InputActionAsset asset { get; } - - public @CameraControllActions() - { - asset = InputActionAsset.FromJson(@"{ + asset = InputActionAsset.FromJson(@"{ ""name"": ""CameraControllActions"", ""maps"": [ { @@ -141,149 +138,134 @@ namespace InputSystem ], ""controlSchemes"": [] }"); - // Camera - m_Camera = asset.FindActionMap("Camera", throwIfNotFound: true); - m_Camera_Movement = m_Camera.FindAction("Movement", throwIfNotFound: true); - m_Camera_RotateCamera = m_Camera.FindAction("RotateCamera", throwIfNotFound: true); - m_Camera_ZoomCamera = m_Camera.FindAction("ZoomCamera", throwIfNotFound: true); - } - - public void Dispose() - { - UnityEngine.Object.Destroy(asset); - } - - public InputBinding? bindingMask - { - get => asset.bindingMask; - set => asset.bindingMask = value; - } - - public ReadOnlyArray? devices - { - get => asset.devices; - set => asset.devices = value; - } - - public ReadOnlyArray controlSchemes => asset.controlSchemes; - - public bool Contains(InputAction action) - { - return asset.Contains(action); - } - - public IEnumerator GetEnumerator() - { - return asset.GetEnumerator(); - } - - IEnumerator IEnumerable.GetEnumerator() - { - return GetEnumerator(); - } - - public void Enable() - { - asset.Enable(); - } - - public void Disable() - { - asset.Disable(); - } - - public IEnumerable bindings => asset.bindings; - - public InputAction FindAction(string actionNameOrId, bool throwIfNotFound = false) - { - return asset.FindAction(actionNameOrId, throwIfNotFound); - } - - public int FindBinding(InputBinding bindingMask, out InputAction action) - { - return asset.FindBinding(bindingMask, out action); - } - // Camera - private readonly InputActionMap m_Camera; - private ICameraActions m_CameraActionsCallbackInterface; - private readonly InputAction m_Camera_Movement; - private readonly InputAction m_Camera_RotateCamera; - private readonly InputAction m_Camera_ZoomCamera; + m_Camera = asset.FindActionMap("Camera", throwIfNotFound: true); + m_Camera_Movement = m_Camera.FindAction("Movement", throwIfNotFound: true); + m_Camera_RotateCamera = m_Camera.FindAction("RotateCamera", throwIfNotFound: true); + m_Camera_ZoomCamera = m_Camera.FindAction("ZoomCamera", throwIfNotFound: true); + } - public struct CameraActions + public void Dispose() + { + UnityEngine.Object.Destroy(asset); + } + + public InputBinding? bindingMask + { + get => asset.bindingMask; + set => asset.bindingMask = value; + } + + public ReadOnlyArray? devices + { + get => asset.devices; + set => asset.devices = value; + } + + public ReadOnlyArray controlSchemes => asset.controlSchemes; + + public bool Contains(InputAction action) + { + return asset.Contains(action); + } + + public IEnumerator GetEnumerator() + { + return asset.GetEnumerator(); + } + + IEnumerator IEnumerable.GetEnumerator() + { + return GetEnumerator(); + } + + public void Enable() + { + asset.Enable(); + } + + public void Disable() + { + asset.Disable(); + } + + public IEnumerable bindings => asset.bindings; + + public InputAction FindAction(string actionNameOrId, bool throwIfNotFound = false) + { + return asset.FindAction(actionNameOrId, throwIfNotFound); + } + + public int FindBinding(InputBinding bindingMask, out InputAction action) + { + return asset.FindBinding(bindingMask, out action); + } + + // Camera + private readonly InputActionMap m_Camera; + private List m_CameraActionsCallbackInterfaces = new List(); + private readonly InputAction m_Camera_Movement; + private readonly InputAction m_Camera_RotateCamera; + private readonly InputAction m_Camera_ZoomCamera; + public struct CameraActions + { + private @CameraControllActions m_Wrapper; + public CameraActions(@CameraControllActions wrapper) { m_Wrapper = wrapper; } + public InputAction @Movement => m_Wrapper.m_Camera_Movement; + public InputAction @RotateCamera => m_Wrapper.m_Camera_RotateCamera; + public InputAction @ZoomCamera => m_Wrapper.m_Camera_ZoomCamera; + public InputActionMap Get() { return m_Wrapper.m_Camera; } + public void Enable() { Get().Enable(); } + public void Disable() { Get().Disable(); } + public bool enabled => Get().enabled; + public static implicit operator InputActionMap(CameraActions set) { return set.Get(); } + public void AddCallbacks(ICameraActions instance) { - private @CameraControllActions m_Wrapper; - - public CameraActions(@CameraControllActions wrapper) - { - m_Wrapper = wrapper; - } - - public InputAction @Movement => m_Wrapper.m_Camera_Movement; - public InputAction @RotateCamera => m_Wrapper.m_Camera_RotateCamera; - public InputAction @ZoomCamera => m_Wrapper.m_Camera_ZoomCamera; - - public InputActionMap Get() - { - return m_Wrapper.m_Camera; - } - - public void Enable() - { - Get().Enable(); - } - - public void Disable() - { - Get().Disable(); - } - - public bool enabled => Get().enabled; - - public static implicit operator InputActionMap(CameraActions set) - { - return set.Get(); - } - - public void SetCallbacks(ICameraActions instance) - { - if (m_Wrapper.m_CameraActionsCallbackInterface != null) - { - @Movement.started -= m_Wrapper.m_CameraActionsCallbackInterface.OnMovement; - @Movement.performed -= m_Wrapper.m_CameraActionsCallbackInterface.OnMovement; - @Movement.canceled -= m_Wrapper.m_CameraActionsCallbackInterface.OnMovement; - @RotateCamera.started -= m_Wrapper.m_CameraActionsCallbackInterface.OnRotateCamera; - @RotateCamera.performed -= m_Wrapper.m_CameraActionsCallbackInterface.OnRotateCamera; - @RotateCamera.canceled -= m_Wrapper.m_CameraActionsCallbackInterface.OnRotateCamera; - @ZoomCamera.started -= m_Wrapper.m_CameraActionsCallbackInterface.OnZoomCamera; - @ZoomCamera.performed -= m_Wrapper.m_CameraActionsCallbackInterface.OnZoomCamera; - @ZoomCamera.canceled -= m_Wrapper.m_CameraActionsCallbackInterface.OnZoomCamera; - } - - m_Wrapper.m_CameraActionsCallbackInterface = instance; - if (instance != null) - { - @Movement.started += instance.OnMovement; - @Movement.performed += instance.OnMovement; - @Movement.canceled += instance.OnMovement; - @RotateCamera.started += instance.OnRotateCamera; - @RotateCamera.performed += instance.OnRotateCamera; - @RotateCamera.canceled += instance.OnRotateCamera; - @ZoomCamera.started += instance.OnZoomCamera; - @ZoomCamera.performed += instance.OnZoomCamera; - @ZoomCamera.canceled += instance.OnZoomCamera; - } - } + if (instance == null || m_Wrapper.m_CameraActionsCallbackInterfaces.Contains(instance)) return; + m_Wrapper.m_CameraActionsCallbackInterfaces.Add(instance); + @Movement.started += instance.OnMovement; + @Movement.performed += instance.OnMovement; + @Movement.canceled += instance.OnMovement; + @RotateCamera.started += instance.OnRotateCamera; + @RotateCamera.performed += instance.OnRotateCamera; + @RotateCamera.canceled += instance.OnRotateCamera; + @ZoomCamera.started += instance.OnZoomCamera; + @ZoomCamera.performed += instance.OnZoomCamera; + @ZoomCamera.canceled += instance.OnZoomCamera; } - public CameraActions @Camera => new CameraActions(this); - - public interface ICameraActions + private void UnregisterCallbacks(ICameraActions instance) { - void OnMovement(InputAction.CallbackContext context); - void OnRotateCamera(InputAction.CallbackContext context); - void OnZoomCamera(InputAction.CallbackContext context); + @Movement.started -= instance.OnMovement; + @Movement.performed -= instance.OnMovement; + @Movement.canceled -= instance.OnMovement; + @RotateCamera.started -= instance.OnRotateCamera; + @RotateCamera.performed -= instance.OnRotateCamera; + @RotateCamera.canceled -= instance.OnRotateCamera; + @ZoomCamera.started -= instance.OnZoomCamera; + @ZoomCamera.performed -= instance.OnZoomCamera; + @ZoomCamera.canceled -= instance.OnZoomCamera; + } + + public void RemoveCallbacks(ICameraActions instance) + { + if (m_Wrapper.m_CameraActionsCallbackInterfaces.Remove(instance)) + UnregisterCallbacks(instance); + } + + public void SetCallbacks(ICameraActions instance) + { + foreach (var item in m_Wrapper.m_CameraActionsCallbackInterfaces) + UnregisterCallbacks(item); + m_Wrapper.m_CameraActionsCallbackInterfaces.Clear(); + AddCallbacks(instance); } } -} \ No newline at end of file + public CameraActions @Camera => new CameraActions(this); + public interface ICameraActions + { + void OnMovement(InputAction.CallbackContext context); + void OnRotateCamera(InputAction.CallbackContext context); + void OnZoomCamera(InputAction.CallbackContext context); + } +} diff --git a/Assets/InputSystem/HandlerControls.cs b/Assets/InputSystem/HandlerControls.cs index 13b18d2..12a6697 100644 --- a/Assets/InputSystem/HandlerControls.cs +++ b/Assets/InputSystem/HandlerControls.cs @@ -1,7 +1,7 @@ //------------------------------------------------------------------------------ // // This code was auto-generated by com.unity.inputsystem:InputActionCodeGenerator -// version 1.3.0 +// version 1.7.0 // from Assets/InputSystem/HandlerControls.inputactions // // Changes to this file may cause incorrect behavior and will be lost if @@ -17,7 +17,7 @@ using UnityEngine.InputSystem.Utilities; namespace AsteroidGame { - public partial class @HandlerControls : IInputActionCollection2, IDisposable + public partial class @HandlerControls: IInputActionCollection2, IDisposable { public InputActionAsset asset { get; } public @HandlerControls() @@ -964,12 +964,14 @@ namespace AsteroidGame { asset.Disable(); } + public IEnumerable bindings => asset.bindings; public InputAction FindAction(string actionNameOrId, bool throwIfNotFound = false) { return asset.FindAction(actionNameOrId, throwIfNotFound); } + public int FindBinding(InputBinding bindingMask, out InputAction action) { return asset.FindBinding(bindingMask, out action); @@ -977,7 +979,7 @@ namespace AsteroidGame // Player private readonly InputActionMap m_Player; - private IPlayerActions m_PlayerActionsCallbackInterface; + private List m_PlayerActionsCallbackInterfaces = new List(); private readonly InputAction m_Player_Move; private readonly InputAction m_Player_Look; private readonly InputAction m_Player_LeftClick; @@ -997,52 +999,65 @@ namespace AsteroidGame public void Disable() { Get().Disable(); } public bool enabled => Get().enabled; public static implicit operator InputActionMap(PlayerActions set) { return set.Get(); } + public void AddCallbacks(IPlayerActions instance) + { + if (instance == null || m_Wrapper.m_PlayerActionsCallbackInterfaces.Contains(instance)) return; + m_Wrapper.m_PlayerActionsCallbackInterfaces.Add(instance); + @Move.started += instance.OnMove; + @Move.performed += instance.OnMove; + @Move.canceled += instance.OnMove; + @Look.started += instance.OnLook; + @Look.performed += instance.OnLook; + @Look.canceled += instance.OnLook; + @LeftClick.started += instance.OnLeftClick; + @LeftClick.performed += instance.OnLeftClick; + @LeftClick.canceled += instance.OnLeftClick; + @Build.started += instance.OnBuild; + @Build.performed += instance.OnBuild; + @Build.canceled += instance.OnBuild; + @RightClick.started += instance.OnRightClick; + @RightClick.performed += instance.OnRightClick; + @RightClick.canceled += instance.OnRightClick; + } + + private void UnregisterCallbacks(IPlayerActions instance) + { + @Move.started -= instance.OnMove; + @Move.performed -= instance.OnMove; + @Move.canceled -= instance.OnMove; + @Look.started -= instance.OnLook; + @Look.performed -= instance.OnLook; + @Look.canceled -= instance.OnLook; + @LeftClick.started -= instance.OnLeftClick; + @LeftClick.performed -= instance.OnLeftClick; + @LeftClick.canceled -= instance.OnLeftClick; + @Build.started -= instance.OnBuild; + @Build.performed -= instance.OnBuild; + @Build.canceled -= instance.OnBuild; + @RightClick.started -= instance.OnRightClick; + @RightClick.performed -= instance.OnRightClick; + @RightClick.canceled -= instance.OnRightClick; + } + + public void RemoveCallbacks(IPlayerActions instance) + { + if (m_Wrapper.m_PlayerActionsCallbackInterfaces.Remove(instance)) + UnregisterCallbacks(instance); + } + public void SetCallbacks(IPlayerActions instance) { - if (m_Wrapper.m_PlayerActionsCallbackInterface != null) - { - @Move.started -= m_Wrapper.m_PlayerActionsCallbackInterface.OnMove; - @Move.performed -= m_Wrapper.m_PlayerActionsCallbackInterface.OnMove; - @Move.canceled -= m_Wrapper.m_PlayerActionsCallbackInterface.OnMove; - @Look.started -= m_Wrapper.m_PlayerActionsCallbackInterface.OnLook; - @Look.performed -= m_Wrapper.m_PlayerActionsCallbackInterface.OnLook; - @Look.canceled -= m_Wrapper.m_PlayerActionsCallbackInterface.OnLook; - @LeftClick.started -= m_Wrapper.m_PlayerActionsCallbackInterface.OnLeftClick; - @LeftClick.performed -= m_Wrapper.m_PlayerActionsCallbackInterface.OnLeftClick; - @LeftClick.canceled -= m_Wrapper.m_PlayerActionsCallbackInterface.OnLeftClick; - @Build.started -= m_Wrapper.m_PlayerActionsCallbackInterface.OnBuild; - @Build.performed -= m_Wrapper.m_PlayerActionsCallbackInterface.OnBuild; - @Build.canceled -= m_Wrapper.m_PlayerActionsCallbackInterface.OnBuild; - @RightClick.started -= m_Wrapper.m_PlayerActionsCallbackInterface.OnRightClick; - @RightClick.performed -= m_Wrapper.m_PlayerActionsCallbackInterface.OnRightClick; - @RightClick.canceled -= m_Wrapper.m_PlayerActionsCallbackInterface.OnRightClick; - } - m_Wrapper.m_PlayerActionsCallbackInterface = instance; - if (instance != null) - { - @Move.started += instance.OnMove; - @Move.performed += instance.OnMove; - @Move.canceled += instance.OnMove; - @Look.started += instance.OnLook; - @Look.performed += instance.OnLook; - @Look.canceled += instance.OnLook; - @LeftClick.started += instance.OnLeftClick; - @LeftClick.performed += instance.OnLeftClick; - @LeftClick.canceled += instance.OnLeftClick; - @Build.started += instance.OnBuild; - @Build.performed += instance.OnBuild; - @Build.canceled += instance.OnBuild; - @RightClick.started += instance.OnRightClick; - @RightClick.performed += instance.OnRightClick; - @RightClick.canceled += instance.OnRightClick; - } + foreach (var item in m_Wrapper.m_PlayerActionsCallbackInterfaces) + UnregisterCallbacks(item); + m_Wrapper.m_PlayerActionsCallbackInterfaces.Clear(); + AddCallbacks(instance); } } public PlayerActions @Player => new PlayerActions(this); // UI private readonly InputActionMap m_UI; - private IUIActions m_UIActionsCallbackInterface; + private List m_UIActionsCallbackInterfaces = new List(); private readonly InputAction m_UI_Navigate; private readonly InputAction m_UI_Submit; private readonly InputAction m_UI_Cancel; @@ -1072,75 +1087,88 @@ namespace AsteroidGame public void Disable() { Get().Disable(); } public bool enabled => Get().enabled; public static implicit operator InputActionMap(UIActions set) { return set.Get(); } + public void AddCallbacks(IUIActions instance) + { + if (instance == null || m_Wrapper.m_UIActionsCallbackInterfaces.Contains(instance)) return; + m_Wrapper.m_UIActionsCallbackInterfaces.Add(instance); + @Navigate.started += instance.OnNavigate; + @Navigate.performed += instance.OnNavigate; + @Navigate.canceled += instance.OnNavigate; + @Submit.started += instance.OnSubmit; + @Submit.performed += instance.OnSubmit; + @Submit.canceled += instance.OnSubmit; + @Cancel.started += instance.OnCancel; + @Cancel.performed += instance.OnCancel; + @Cancel.canceled += instance.OnCancel; + @Point.started += instance.OnPoint; + @Point.performed += instance.OnPoint; + @Point.canceled += instance.OnPoint; + @Click.started += instance.OnClick; + @Click.performed += instance.OnClick; + @Click.canceled += instance.OnClick; + @ScrollWheel.started += instance.OnScrollWheel; + @ScrollWheel.performed += instance.OnScrollWheel; + @ScrollWheel.canceled += instance.OnScrollWheel; + @MiddleClick.started += instance.OnMiddleClick; + @MiddleClick.performed += instance.OnMiddleClick; + @MiddleClick.canceled += instance.OnMiddleClick; + @RightClick.started += instance.OnRightClick; + @RightClick.performed += instance.OnRightClick; + @RightClick.canceled += instance.OnRightClick; + @TrackedDevicePosition.started += instance.OnTrackedDevicePosition; + @TrackedDevicePosition.performed += instance.OnTrackedDevicePosition; + @TrackedDevicePosition.canceled += instance.OnTrackedDevicePosition; + @TrackedDeviceOrientation.started += instance.OnTrackedDeviceOrientation; + @TrackedDeviceOrientation.performed += instance.OnTrackedDeviceOrientation; + @TrackedDeviceOrientation.canceled += instance.OnTrackedDeviceOrientation; + } + + private void UnregisterCallbacks(IUIActions instance) + { + @Navigate.started -= instance.OnNavigate; + @Navigate.performed -= instance.OnNavigate; + @Navigate.canceled -= instance.OnNavigate; + @Submit.started -= instance.OnSubmit; + @Submit.performed -= instance.OnSubmit; + @Submit.canceled -= instance.OnSubmit; + @Cancel.started -= instance.OnCancel; + @Cancel.performed -= instance.OnCancel; + @Cancel.canceled -= instance.OnCancel; + @Point.started -= instance.OnPoint; + @Point.performed -= instance.OnPoint; + @Point.canceled -= instance.OnPoint; + @Click.started -= instance.OnClick; + @Click.performed -= instance.OnClick; + @Click.canceled -= instance.OnClick; + @ScrollWheel.started -= instance.OnScrollWheel; + @ScrollWheel.performed -= instance.OnScrollWheel; + @ScrollWheel.canceled -= instance.OnScrollWheel; + @MiddleClick.started -= instance.OnMiddleClick; + @MiddleClick.performed -= instance.OnMiddleClick; + @MiddleClick.canceled -= instance.OnMiddleClick; + @RightClick.started -= instance.OnRightClick; + @RightClick.performed -= instance.OnRightClick; + @RightClick.canceled -= instance.OnRightClick; + @TrackedDevicePosition.started -= instance.OnTrackedDevicePosition; + @TrackedDevicePosition.performed -= instance.OnTrackedDevicePosition; + @TrackedDevicePosition.canceled -= instance.OnTrackedDevicePosition; + @TrackedDeviceOrientation.started -= instance.OnTrackedDeviceOrientation; + @TrackedDeviceOrientation.performed -= instance.OnTrackedDeviceOrientation; + @TrackedDeviceOrientation.canceled -= instance.OnTrackedDeviceOrientation; + } + + public void RemoveCallbacks(IUIActions instance) + { + if (m_Wrapper.m_UIActionsCallbackInterfaces.Remove(instance)) + UnregisterCallbacks(instance); + } + public void SetCallbacks(IUIActions instance) { - if (m_Wrapper.m_UIActionsCallbackInterface != null) - { - @Navigate.started -= m_Wrapper.m_UIActionsCallbackInterface.OnNavigate; - @Navigate.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnNavigate; - @Navigate.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnNavigate; - @Submit.started -= m_Wrapper.m_UIActionsCallbackInterface.OnSubmit; - @Submit.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnSubmit; - @Submit.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnSubmit; - @Cancel.started -= m_Wrapper.m_UIActionsCallbackInterface.OnCancel; - @Cancel.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnCancel; - @Cancel.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnCancel; - @Point.started -= m_Wrapper.m_UIActionsCallbackInterface.OnPoint; - @Point.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnPoint; - @Point.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnPoint; - @Click.started -= m_Wrapper.m_UIActionsCallbackInterface.OnClick; - @Click.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnClick; - @Click.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnClick; - @ScrollWheel.started -= m_Wrapper.m_UIActionsCallbackInterface.OnScrollWheel; - @ScrollWheel.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnScrollWheel; - @ScrollWheel.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnScrollWheel; - @MiddleClick.started -= m_Wrapper.m_UIActionsCallbackInterface.OnMiddleClick; - @MiddleClick.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnMiddleClick; - @MiddleClick.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnMiddleClick; - @RightClick.started -= m_Wrapper.m_UIActionsCallbackInterface.OnRightClick; - @RightClick.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnRightClick; - @RightClick.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnRightClick; - @TrackedDevicePosition.started -= m_Wrapper.m_UIActionsCallbackInterface.OnTrackedDevicePosition; - @TrackedDevicePosition.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnTrackedDevicePosition; - @TrackedDevicePosition.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnTrackedDevicePosition; - @TrackedDeviceOrientation.started -= m_Wrapper.m_UIActionsCallbackInterface.OnTrackedDeviceOrientation; - @TrackedDeviceOrientation.performed -= m_Wrapper.m_UIActionsCallbackInterface.OnTrackedDeviceOrientation; - @TrackedDeviceOrientation.canceled -= m_Wrapper.m_UIActionsCallbackInterface.OnTrackedDeviceOrientation; - } - m_Wrapper.m_UIActionsCallbackInterface = instance; - if (instance != null) - { - @Navigate.started += instance.OnNavigate; - @Navigate.performed += instance.OnNavigate; - @Navigate.canceled += instance.OnNavigate; - @Submit.started += instance.OnSubmit; - @Submit.performed += instance.OnSubmit; - @Submit.canceled += instance.OnSubmit; - @Cancel.started += instance.OnCancel; - @Cancel.performed += instance.OnCancel; - @Cancel.canceled += instance.OnCancel; - @Point.started += instance.OnPoint; - @Point.performed += instance.OnPoint; - @Point.canceled += instance.OnPoint; - @Click.started += instance.OnClick; - @Click.performed += instance.OnClick; - @Click.canceled += instance.OnClick; - @ScrollWheel.started += instance.OnScrollWheel; - @ScrollWheel.performed += instance.OnScrollWheel; - @ScrollWheel.canceled += instance.OnScrollWheel; - @MiddleClick.started += instance.OnMiddleClick; - @MiddleClick.performed += instance.OnMiddleClick; - @MiddleClick.canceled += instance.OnMiddleClick; - @RightClick.started += instance.OnRightClick; - @RightClick.performed += instance.OnRightClick; - @RightClick.canceled += instance.OnRightClick; - @TrackedDevicePosition.started += instance.OnTrackedDevicePosition; - @TrackedDevicePosition.performed += instance.OnTrackedDevicePosition; - @TrackedDevicePosition.canceled += instance.OnTrackedDevicePosition; - @TrackedDeviceOrientation.started += instance.OnTrackedDeviceOrientation; - @TrackedDeviceOrientation.performed += instance.OnTrackedDeviceOrientation; - @TrackedDeviceOrientation.canceled += instance.OnTrackedDeviceOrientation; - } + foreach (var item in m_Wrapper.m_UIActionsCallbackInterfaces) + UnregisterCallbacks(item); + m_Wrapper.m_UIActionsCallbackInterfaces.Clear(); + AddCallbacks(instance); } } public UIActions @UI => new UIActions(this); diff --git a/Assets/Materials/ColliderIndicator.mat b/Assets/Materials/ColliderIndicator.mat index 75fcde9..551e8f0 100644 --- a/Assets/Materials/ColliderIndicator.mat +++ b/Assets/Materials/ColliderIndicator.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: @@ -25,6 +25,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: ColliderIndicator m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_SSR_TRANSPARENT - _ENABLE_FOG_ON_TRANSPARENT @@ -43,6 +45,7 @@ Material: - TransparentBackface - RayTracingPrepass - MOTIONVECTORS + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -122,6 +125,10 @@ Material: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} + - _TransmissionMaskMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} - _TransmittanceColorMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} @@ -151,6 +158,8 @@ Material: - _AlphaCutoffPrepass: 0.5 - _AlphaCutoffShadow: 0.5 - _AlphaDstBlend: 10 + - _AlphaRemapMax: 1 + - _AlphaRemapMin: 0 - _AlphaSrcBlend: 1 - _AlphaToMask: 0 - _AlphaToMaskInspectorValue: 0 @@ -201,6 +210,8 @@ Material: - _MetallicRemapMin: 0 - _NormalMapSpace: 0 - _NormalScale: 1 + - _ObjectSpaceUVMapping: 0 + - _ObjectSpaceUVMappingEmissive: 0 - _OpaqueCullMode: 2 - _PPDLodThreshold: 5 - _PPDMaxSamples: 15 @@ -223,9 +234,9 @@ Material: - _StencilRefGBuffer: 2 - _StencilRefMV: 32 - _StencilWriteMask: 6 - - _StencilWriteMaskDepth: 8 - - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskDepth: 9 + - _StencilWriteMaskGBuffer: 15 + - _StencilWriteMaskMV: 41 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 1 @@ -233,6 +244,7 @@ Material: - _TexWorldScaleEmissive: 1 - _Thickness: 1 - _TransmissionEnable: 1 + - _TransmissionMask: 1 - _TransparentBackfaceEnable: 0 - _TransparentCullMode: 2 - _TransparentDepthPostpassEnable: 0 diff --git a/Assets/Materials/GhostMaterial.mat b/Assets/Materials/GhostMaterial.mat index 6b6966c..25effb1 100644 --- a/Assets/Materials/GhostMaterial.mat +++ b/Assets/Materials/GhostMaterial.mat @@ -9,6 +9,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: GhostMaterial m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_SSR_TRANSPARENT - _ENABLE_FOG_ON_TRANSPARENT @@ -27,6 +29,7 @@ Material: - TransparentBackface - RayTracingPrepass - MOTIONVECTORS + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -106,6 +109,10 @@ Material: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} + - _TransmissionMaskMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} - _TransmittanceColorMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} @@ -135,6 +142,8 @@ Material: - _AlphaCutoffPrepass: 0.5 - _AlphaCutoffShadow: 0.5 - _AlphaDstBlend: 10 + - _AlphaRemapMax: 1 + - _AlphaRemapMin: 0 - _AlphaSrcBlend: 1 - _AlphaToMask: 0 - _AlphaToMaskInspectorValue: 0 @@ -185,6 +194,8 @@ Material: - _MetallicRemapMin: 0 - _NormalMapSpace: 0 - _NormalScale: 1 + - _ObjectSpaceUVMapping: 0 + - _ObjectSpaceUVMappingEmissive: 0 - _OpaqueCullMode: 2 - _PPDLodThreshold: 5 - _PPDMaxSamples: 15 @@ -207,9 +218,9 @@ Material: - _StencilRefGBuffer: 2 - _StencilRefMV: 32 - _StencilWriteMask: 6 - - _StencilWriteMaskDepth: 8 - - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskDepth: 9 + - _StencilWriteMaskGBuffer: 15 + - _StencilWriteMaskMV: 41 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 1 @@ -217,6 +228,7 @@ Material: - _TexWorldScaleEmissive: 1 - _Thickness: 1 - _TransmissionEnable: 1 + - _TransmissionMask: 1 - _TransparentBackfaceEnable: 0 - _TransparentCullMode: 2 - _TransparentDepthPostpassEnable: 0 @@ -263,7 +275,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: diff --git a/Assets/Materials/Opaque_Blue.mat b/Assets/Materials/Opaque_Blue.mat index 745392d..49f5d3e 100644 --- a/Assets/Materials/Opaque_Blue.mat +++ b/Assets/Materials/Opaque_Blue.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: @@ -25,6 +25,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: Opaque_Blue m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_SSR_TRANSPARENT - _NORMALMAP_TANGENT_SPACE @@ -40,6 +42,7 @@ Material: - TransparentBackface - RayTracingPrepass - MOTIONVECTORS + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -119,6 +122,10 @@ Material: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} + - _TransmissionMaskMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} - _TransmittanceColorMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} @@ -148,6 +155,8 @@ Material: - _AlphaCutoffPrepass: 0.5 - _AlphaCutoffShadow: 0.5 - _AlphaDstBlend: 0 + - _AlphaRemapMax: 1 + - _AlphaRemapMin: 0 - _AlphaSrcBlend: 1 - _AlphaToMask: 0 - _AlphaToMaskInspectorValue: 0 @@ -198,6 +207,8 @@ Material: - _MetallicRemapMin: 0 - _NormalMapSpace: 0 - _NormalScale: 1 + - _ObjectSpaceUVMapping: 0 + - _ObjectSpaceUVMappingEmissive: 0 - _OpaqueCullMode: 2 - _PPDLodThreshold: 5 - _PPDMaxSamples: 15 @@ -220,9 +231,9 @@ Material: - _StencilRefGBuffer: 10 - _StencilRefMV: 40 - _StencilWriteMask: 6 - - _StencilWriteMaskDepth: 8 - - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskDepth: 9 + - _StencilWriteMaskGBuffer: 15 + - _StencilWriteMaskMV: 41 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 0 @@ -230,6 +241,7 @@ Material: - _TexWorldScaleEmissive: 1 - _Thickness: 1 - _TransmissionEnable: 1 + - _TransmissionMask: 1 - _TransparentBackfaceEnable: 0 - _TransparentCullMode: 2 - _TransparentDepthPostpassEnable: 0 diff --git a/Assets/Materials/Opaque_Gray.mat b/Assets/Materials/Opaque_Gray.mat index 640bcb8..172a3cf 100644 --- a/Assets/Materials/Opaque_Gray.mat +++ b/Assets/Materials/Opaque_Gray.mat @@ -9,6 +9,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: Opaque_Gray m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_SSR_TRANSPARENT - _NORMALMAP_TANGENT_SPACE @@ -24,6 +26,7 @@ Material: - TransparentBackface - RayTracingPrepass - MOTIONVECTORS + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -135,6 +138,10 @@ Material: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} + - _TransmissionMaskMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} - _TransmittanceColorMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} @@ -164,6 +171,8 @@ Material: - _AlphaCutoffPrepass: 0.5 - _AlphaCutoffShadow: 0.5 - _AlphaDstBlend: 0 + - _AlphaRemapMax: 1 + - _AlphaRemapMin: 0 - _AlphaSrcBlend: 1 - _AlphaToMask: 0 - _AlphaToMaskInspectorValue: 0 @@ -220,6 +229,8 @@ Material: - _Mode: 0 - _NormalMapSpace: 0 - _NormalScale: 1.24 + - _ObjectSpaceUVMapping: 0 + - _ObjectSpaceUVMappingEmissive: 0 - _OcclusionStrength: 1 - _OpaqueCullMode: 2 - _PPDLodThreshold: 5 @@ -246,9 +257,9 @@ Material: - _StencilRefGBuffer: 10 - _StencilRefMV: 40 - _StencilWriteMask: 6 - - _StencilWriteMaskDepth: 8 - - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskDepth: 9 + - _StencilWriteMaskGBuffer: 15 + - _StencilWriteMaskMV: 41 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 0 @@ -256,6 +267,7 @@ Material: - _TexWorldScaleEmissive: 1 - _Thickness: 1 - _TransmissionEnable: 1 + - _TransmissionMask: 1 - _TransparentBackfaceEnable: 0 - _TransparentCullMode: 2 - _TransparentDepthPostpassEnable: 0 @@ -303,7 +315,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: diff --git a/Assets/Materials/Opaque_Red.mat b/Assets/Materials/Opaque_Red.mat index 9865554..4f0ab4a 100644 --- a/Assets/Materials/Opaque_Red.mat +++ b/Assets/Materials/Opaque_Red.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: @@ -25,6 +25,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: Opaque_Red m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_SSR_TRANSPARENT - _NORMALMAP_TANGENT_SPACE @@ -40,6 +42,7 @@ Material: - TransparentBackface - RayTracingPrepass - MOTIONVECTORS + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -119,6 +122,10 @@ Material: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} + - _TransmissionMaskMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} - _TransmittanceColorMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} @@ -148,6 +155,8 @@ Material: - _AlphaCutoffPrepass: 0.5 - _AlphaCutoffShadow: 0.5 - _AlphaDstBlend: 0 + - _AlphaRemapMax: 1 + - _AlphaRemapMin: 0 - _AlphaSrcBlend: 1 - _AlphaToMask: 0 - _AlphaToMaskInspectorValue: 0 @@ -198,6 +207,8 @@ Material: - _MetallicRemapMin: 0 - _NormalMapSpace: 0 - _NormalScale: 1 + - _ObjectSpaceUVMapping: 0 + - _ObjectSpaceUVMappingEmissive: 0 - _OpaqueCullMode: 2 - _PPDLodThreshold: 5 - _PPDMaxSamples: 15 @@ -220,9 +231,9 @@ Material: - _StencilRefGBuffer: 10 - _StencilRefMV: 40 - _StencilWriteMask: 6 - - _StencilWriteMaskDepth: 8 - - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskDepth: 9 + - _StencilWriteMaskGBuffer: 15 + - _StencilWriteMaskMV: 41 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 0 @@ -230,6 +241,7 @@ Material: - _TexWorldScaleEmissive: 1 - _Thickness: 1 - _TransmissionEnable: 1 + - _TransmissionMask: 1 - _TransparentBackfaceEnable: 0 - _TransparentCullMode: 2 - _TransparentDepthPostpassEnable: 0 diff --git a/Assets/Materials/Transparent_Green.mat b/Assets/Materials/Transparent_Green.mat index 611c253..7fb8f49 100644 --- a/Assets/Materials/Transparent_Green.mat +++ b/Assets/Materials/Transparent_Green.mat @@ -12,7 +12,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: da692e001514ec24dbc4cca1949ff7e8, type: 3} m_Name: m_EditorClassIdentifier: - version: 12 + version: 13 hdPluginSubTargetMaterialVersions: m_Keys: [] m_Values: @@ -25,6 +25,8 @@ Material: m_PrefabAsset: {fileID: 0} m_Name: Transparent_Green m_Shader: {fileID: 4800000, guid: 6e4ae4064600d784cac1e41a9e6f2e59, type: 3} + m_Parent: {fileID: 0} + m_ModifiedSerializedProperties: 0 m_ValidKeywords: - _DISABLE_SSR_TRANSPARENT - _ENABLE_FOG_ON_TRANSPARENT @@ -43,6 +45,7 @@ Material: - TransparentBackface - RayTracingPrepass - MOTIONVECTORS + m_LockedProperties: m_SavedProperties: serializedVersion: 3 m_TexEnvs: @@ -122,6 +125,10 @@ Material: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} + - _TransmissionMaskMap: + m_Texture: {fileID: 0} + m_Scale: {x: 1, y: 1} + m_Offset: {x: 0, y: 0} - _TransmittanceColorMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} @@ -151,6 +158,8 @@ Material: - _AlphaCutoffPrepass: 0.5 - _AlphaCutoffShadow: 0.5 - _AlphaDstBlend: 10 + - _AlphaRemapMax: 1 + - _AlphaRemapMin: 0 - _AlphaSrcBlend: 1 - _AlphaToMask: 0 - _AlphaToMaskInspectorValue: 0 @@ -201,6 +210,8 @@ Material: - _MetallicRemapMin: 0 - _NormalMapSpace: 0 - _NormalScale: 1 + - _ObjectSpaceUVMapping: 0 + - _ObjectSpaceUVMappingEmissive: 0 - _OpaqueCullMode: 2 - _PPDLodThreshold: 5 - _PPDMaxSamples: 15 @@ -223,9 +234,9 @@ Material: - _StencilRefGBuffer: 2 - _StencilRefMV: 32 - _StencilWriteMask: 6 - - _StencilWriteMaskDepth: 8 - - _StencilWriteMaskGBuffer: 14 - - _StencilWriteMaskMV: 40 + - _StencilWriteMaskDepth: 9 + - _StencilWriteMaskGBuffer: 15 + - _StencilWriteMaskMV: 41 - _SubsurfaceMask: 1 - _SupportDecals: 1 - _SurfaceType: 1 @@ -233,6 +244,7 @@ Material: - _TexWorldScaleEmissive: 1 - _Thickness: 1 - _TransmissionEnable: 1 + - _TransmissionMask: 1 - _TransparentBackfaceEnable: 0 - _TransparentCullMode: 2 - _TransparentDepthPostpassEnable: 0 diff --git a/Assets/Packages/HDRPDefaultResources/DefaultSettingsVolumeProfile.asset b/Assets/Packages/HDRPDefaultResources/DefaultSettingsVolumeProfile.asset index fd16943..f2dec16 100644 --- a/Assets/Packages/HDRPDefaultResources/DefaultSettingsVolumeProfile.asset +++ b/Assets/Packages/HDRPDefaultResources/DefaultSettingsVolumeProfile.asset @@ -46,6 +46,24 @@ MonoBehaviour: m_SampleCount: m_OverrideState: 1 m_Value: 8 +--- !u!114 &-1793858814174886103 +MonoBehaviour: + m_ObjectHideFlags: 3 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7a7ff42a8c5be6646ad3975f3a54c1eb, type: 3} + m_Name: DiffusionProfileList + m_EditorClassIdentifier: + active: 1 + diffusionProfiles: + m_OverrideState: 1 + m_Value: + - {fileID: 11400000, guid: eceab268f6a04e749af041e5e365872a, type: 2} + - {fileID: 11400000, guid: 3370ac1ab02538142af9851e66038745, type: 2} --- !u!114 &-1016694868962581565 MonoBehaviour: m_ObjectHideFlags: 3 @@ -117,6 +135,7 @@ MonoBehaviour: - {fileID: 1932259527246508038} - {fileID: 448115243408767295} - {fileID: -7089757308646879465} + - {fileID: -1793858814174886103} --- !u!114 &448115243408767295 MonoBehaviour: m_ObjectHideFlags: 3 @@ -143,10 +162,10 @@ MonoBehaviour: m_OverrideState: 0 m_Value: 1 upperHemisphereLuxValue: - m_OverrideState: 0 + m_OverrideState: 1 m_Value: 0.4660715 upperHemisphereLuxColor: - m_OverrideState: 0 + m_OverrideState: 1 m_Value: {x: 0.18750614, y: 0.29181972, z: 0.5} desiredLuxValue: m_OverrideState: 0 @@ -511,6 +530,9 @@ MonoBehaviour: m_Value: serializedVersion: 2 m_Bits: 4294967295 + specularOcclusion: + m_OverrideState: 0 + m_Value: 0.5 occluderMotionRejection: m_OverrideState: 0 m_Value: 1 @@ -560,6 +582,9 @@ MonoBehaviour: mode: m_OverrideState: 1 m_Value: 2 + useFullACES: + m_OverrideState: 0 + m_Value: 0 toeStrength: m_OverrideState: 0 m_Value: 0 @@ -584,6 +609,33 @@ MonoBehaviour: lutContribution: m_OverrideState: 0 m_Value: 1 + neutralHDRRangeReductionMode: + m_OverrideState: 0 + m_Value: 2 + acesPreset: + m_OverrideState: 0 + m_Value: 3 + fallbackMode: + m_OverrideState: 0 + m_Value: 1 + hueShiftAmount: + m_OverrideState: 0 + m_Value: 0 + detectPaperWhite: + m_OverrideState: 0 + m_Value: 0 + paperWhite: + m_OverrideState: 0 + m_Value: 300 + detectBrightnessLimits: + m_OverrideState: 0 + m_Value: 1 + minNits: + m_OverrideState: 0 + m_Value: 0.005 + maxNits: + m_OverrideState: 0 + m_Value: 1000 --- !u!114 &7686318427622180703 MonoBehaviour: m_ObjectHideFlags: 3 diff --git a/Packages/manifest.json b/Packages/manifest.json index a9c4ced..bd04add 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -1,19 +1,20 @@ { "dependencies": { - "com.unity.collab-proxy": "1.17.2", + "com.unity.ai.navigation": "1.1.4", + "com.unity.collab-proxy": "2.0.7", "com.unity.feature.development": "1.0.1", - "com.unity.ide.rider": "3.0.15", - "com.unity.ide.visualstudio": "2.0.16", + "com.unity.ide.rider": "3.0.24", + "com.unity.ide.visualstudio": "2.0.18", "com.unity.ide.vscode": "1.2.5", - "com.unity.inputsystem": "1.4.2", - "com.unity.render-pipelines.high-definition": "12.1.7", - "com.unity.test-framework": "1.1.31", + "com.unity.inputsystem": "1.7.0", + "com.unity.render-pipelines.high-definition": "14.0.8", + "com.unity.test-framework": "1.1.33", "com.unity.textmeshpro": "3.0.6", - "com.unity.timeline": "1.6.4", + "com.unity.timeline": "1.7.5", "com.unity.ugui": "1.0.0", "com.unity.ui": "2.0.0", "com.unity.ui.builder": "2.0.0", - "com.unity.visualscripting": "1.7.8", + "com.unity.visualscripting": "1.9.0", "com.unity.modules.ai": "1.0.0", "com.unity.modules.androidjni": "1.0.0", "com.unity.modules.animation": "1.0.0", diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index 2ab3c5f..6b3300a 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -1,7 +1,16 @@ { "dependencies": { + "com.unity.ai.navigation": { + "version": "1.1.4", + "depth": 0, + "source": "registry", + "dependencies": { + "com.unity.modules.ai": "1.0.0" + }, + "url": "https://packages.unity.com" + }, "com.unity.burst": { - "version": "1.6.6", + "version": "1.8.8", "depth": 1, "source": "registry", "dependencies": { @@ -10,12 +19,10 @@ "url": "https://packages.unity.com" }, "com.unity.collab-proxy": { - "version": "1.17.2", + "version": "2.0.7", "depth": 0, "source": "registry", - "dependencies": { - "com.unity.services.core": "1.0.1" - }, + "dependencies": {}, "url": "https://packages.unity.com" }, "com.unity.editorcoroutines": { @@ -37,17 +44,17 @@ "depth": 0, "source": "builtin", "dependencies": { - "com.unity.ide.visualstudio": "2.0.16", - "com.unity.ide.rider": "3.0.15", + "com.unity.ide.visualstudio": "2.0.18", + "com.unity.ide.rider": "3.0.24", "com.unity.ide.vscode": "1.2.5", "com.unity.editorcoroutines": "1.0.0", - "com.unity.performance.profile-analyzer": "1.1.1", - "com.unity.test-framework": "1.1.31", - "com.unity.testtools.codecoverage": "1.0.1" + "com.unity.performance.profile-analyzer": "1.2.2", + "com.unity.test-framework": "1.1.33", + "com.unity.testtools.codecoverage": "1.2.4" } }, "com.unity.ide.rider": { - "version": "3.0.15", + "version": "3.0.24", "depth": 0, "source": "registry", "dependencies": { @@ -56,7 +63,7 @@ "url": "https://packages.unity.com" }, "com.unity.ide.visualstudio": { - "version": "2.0.16", + "version": "2.0.18", "depth": 0, "source": "registry", "dependencies": { @@ -72,7 +79,7 @@ "url": "https://packages.unity.com" }, "com.unity.inputsystem": { - "version": "1.4.2", + "version": "1.7.0", "depth": 0, "source": "registry", "dependencies": { @@ -87,91 +94,74 @@ "dependencies": {}, "url": "https://packages.unity.com" }, - "com.unity.nuget.newtonsoft-json": { - "version": "3.0.2", - "depth": 2, - "source": "registry", - "dependencies": {}, - "url": "https://packages.unity.com" - }, "com.unity.performance.profile-analyzer": { - "version": "1.1.1", + "version": "1.2.2", "depth": 1, "source": "registry", "dependencies": {}, "url": "https://packages.unity.com" }, "com.unity.render-pipelines.core": { - "version": "12.1.7", + "version": "14.0.8", "depth": 1, "source": "builtin", "dependencies": { "com.unity.ugui": "1.0.0", "com.unity.modules.physics": "1.0.0", + "com.unity.modules.terrain": "1.0.0", "com.unity.modules.jsonserialize": "1.0.0" } }, "com.unity.render-pipelines.high-definition": { - "version": "12.1.7", + "version": "14.0.8", "depth": 0, "source": "builtin", "dependencies": { "com.unity.mathematics": "1.2.4", - "com.unity.burst": "1.6.0", + "com.unity.burst": "1.8.4", "com.unity.modules.video": "1.0.0", "com.unity.modules.animation": "1.0.0", "com.unity.modules.imageconversion": "1.0.0", "com.unity.modules.terrain": "1.0.0", - "com.unity.render-pipelines.core": "12.1.7", - "com.unity.shadergraph": "12.1.7", - "com.unity.visualeffectgraph": "12.1.7", - "com.unity.render-pipelines.high-definition-config": "12.1.7" + "com.unity.render-pipelines.core": "14.0.8", + "com.unity.shadergraph": "14.0.8", + "com.unity.visualeffectgraph": "14.0.8", + "com.unity.render-pipelines.high-definition-config": "14.0.8" } }, "com.unity.render-pipelines.high-definition-config": { - "version": "12.1.7", + "version": "14.0.8", "depth": 1, "source": "builtin", "dependencies": { - "com.unity.render-pipelines.core": "12.1.7" + "com.unity.render-pipelines.core": "14.0.8" } }, "com.unity.searcher": { - "version": "4.9.1", + "version": "4.9.2", "depth": 2, "source": "registry", "dependencies": {}, "url": "https://packages.unity.com" }, - "com.unity.services.core": { - "version": "1.4.2", - "depth": 1, - "source": "registry", - "dependencies": { - "com.unity.modules.unitywebrequest": "1.0.0", - "com.unity.nuget.newtonsoft-json": "3.0.2", - "com.unity.modules.androidjni": "1.0.0" - }, - "url": "https://packages.unity.com" - }, "com.unity.settings-manager": { - "version": "1.0.3", + "version": "2.0.1", "depth": 2, "source": "registry", "dependencies": {}, "url": "https://packages.unity.com" }, "com.unity.shadergraph": { - "version": "12.1.7", + "version": "14.0.8", "depth": 1, "source": "builtin", "dependencies": { - "com.unity.render-pipelines.core": "12.1.7", - "com.unity.searcher": "4.9.1" + "com.unity.render-pipelines.core": "14.0.8", + "com.unity.searcher": "4.9.2" } }, "com.unity.test-framework": { - "version": "1.1.31", + "version": "1.1.33", "depth": 0, "source": "registry", "dependencies": { @@ -182,7 +172,7 @@ "url": "https://packages.unity.com" }, "com.unity.testtools.codecoverage": { - "version": "1.0.1", + "version": "1.2.4", "depth": 1, "source": "registry", "dependencies": { @@ -201,7 +191,7 @@ "url": "https://packages.unity.com" }, "com.unity.timeline": { - "version": "1.6.4", + "version": "1.7.5", "depth": 0, "source": "registry", "dependencies": { @@ -234,16 +224,16 @@ "dependencies": {} }, "com.unity.visualeffectgraph": { - "version": "12.1.7", + "version": "14.0.8", "depth": 1, "source": "builtin", "dependencies": { - "com.unity.shadergraph": "12.1.7", - "com.unity.render-pipelines.core": "12.1.7" + "com.unity.shadergraph": "14.0.8", + "com.unity.render-pipelines.core": "14.0.8" } }, "com.unity.visualscripting": { - "version": "1.7.8", + "version": "1.9.0", "depth": 0, "source": "registry", "dependencies": { @@ -384,17 +374,6 @@ "version": "1.0.0", "depth": 0, "source": "builtin", - "dependencies": { - "com.unity.modules.ui": "1.0.0", - "com.unity.modules.imgui": "1.0.0", - "com.unity.modules.jsonserialize": "1.0.0", - "com.unity.modules.uielementsnative": "1.0.0" - } - }, - "com.unity.modules.uielementsnative": { - "version": "1.0.0", - "depth": 1, - "source": "builtin", "dependencies": { "com.unity.modules.ui": "1.0.0", "com.unity.modules.imgui": "1.0.0", diff --git a/ProjectSettings/BurstAotSettings_StandaloneWindows.json b/ProjectSettings/BurstAotSettings_StandaloneWindows.json new file mode 100644 index 0000000..58cf25f --- /dev/null +++ b/ProjectSettings/BurstAotSettings_StandaloneWindows.json @@ -0,0 +1,18 @@ +{ + "MonoBehaviour": { + "Version": 4, + "EnableBurstCompilation": true, + "EnableOptimisations": true, + "EnableSafetyChecks": false, + "EnableDebugInAllBuilds": false, + "DebugDataKind": 1, + "EnableArmv9SecurityFeatures": false, + "CpuMinTargetX32": 0, + "CpuMaxTargetX32": 0, + "CpuMinTargetX64": 0, + "CpuMaxTargetX64": 0, + "CpuTargetsX32": 6, + "CpuTargetsX64": 72, + "OptimizeFor": 0 + } +} diff --git a/ProjectSettings/CommonBurstAotSettings.json b/ProjectSettings/CommonBurstAotSettings.json new file mode 100644 index 0000000..0293daf --- /dev/null +++ b/ProjectSettings/CommonBurstAotSettings.json @@ -0,0 +1,6 @@ +{ + "MonoBehaviour": { + "Version": 4, + "DisabledWarnings": "" + } +} diff --git a/ProjectSettings/HDRPProjectSettings.asset b/ProjectSettings/HDRPProjectSettings.asset index 06c298f..6fb2e80 100644 --- a/ProjectSettings/HDRPProjectSettings.asset +++ b/ProjectSettings/HDRPProjectSettings.asset @@ -14,7 +14,7 @@ MonoBehaviour: m_EditorClassIdentifier: m_ProjectSettingFolderPath: HDRPDefaultResources m_WizardPopupAtStart: 0 - m_LastMaterialVersion: 12 + m_LastMaterialVersion: 13 m_HDShaderGraphLastSeenVersion: 0 m_PluginMaterialVersions: m_Keys: [] diff --git a/ProjectSettings/Packages/com.unity.testtools.codecoverage/Settings.json b/ProjectSettings/Packages/com.unity.testtools.codecoverage/Settings.json index ad11087..3c7b4c1 100644 --- a/ProjectSettings/Packages/com.unity.testtools.codecoverage/Settings.json +++ b/ProjectSettings/Packages/com.unity.testtools.codecoverage/Settings.json @@ -1,6 +1,4 @@ { - "m_Name": "Settings", - "m_Path": "ProjectSettings/Packages/com.unity.testtools.codecoverage/Settings.json", "m_Dictionary": { "m_DictionaryValues": [] } diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset index be3711b..2c71d59 100644 --- a/ProjectSettings/ProjectSettings.asset +++ b/ProjectSettings/ProjectSettings.asset @@ -3,7 +3,7 @@ --- !u!129 &1 PlayerSettings: m_ObjectHideFlags: 0 - serializedVersion: 23 + serializedVersion: 26 productGUID: d003377464fe2f043a1d84fa3cee25a6 AndroidProfiler: 0 AndroidFilterTouchesWhenObscured: 0 @@ -48,14 +48,15 @@ PlayerSettings: defaultScreenHeightWeb: 600 m_StereoRenderingPath: 0 m_ActiveColorSpace: 1 + m_SpriteBatchVertexThreshold: 300 m_MTRendering: 1 mipStripping: 0 numberOfMipsStripped: 0 + numberOfMipsStrippedPerMipmapLimitGroup: {} m_StackTraceTypes: 010000000100000001000000010000000100000001000000 iosShowActivityIndicatorOnLoading: -1 androidShowActivityIndicatorOnLoading: -1 iosUseCustomAppBackgroundBehavior: 0 - iosAllowHTTPDownload: 1 allowedAutorotateToPortrait: 1 allowedAutorotateToPortraitUpsideDown: 1 allowedAutorotateToLandscapeRight: 1 @@ -85,6 +86,7 @@ PlayerSettings: hideHomeButton: 0 submitAnalytics: 1 usePlayerLog: 1 + dedicatedServerOptimizations: 0 bakeCollisionMeshes: 0 forceSingleInstance: 0 useFlipModelSwapchain: 1 @@ -119,8 +121,12 @@ PlayerSettings: switchNVNShaderPoolsGranularity: 33554432 switchNVNDefaultPoolsGranularity: 16777216 switchNVNOtherPoolsGranularity: 16777216 + switchGpuScratchPoolGranularity: 2097152 + switchAllowGpuScratchShrinking: 0 switchNVNMaxPublicTextureIDCount: 0 switchNVNMaxPublicSamplerIDCount: 0 + switchNVNGraphicsFirmwareMemory: 32 + switchMaxWorkerMultiple: 8 stadiaPresentMode: 0 stadiaTargetFramerate: 0 vulkanNumSwapchainBuffers: 3 @@ -128,14 +134,10 @@ PlayerSettings: vulkanEnablePreTransform: 1 vulkanEnableLateAcquireNextImage: 0 vulkanEnableCommandBufferRecycling: 1 - m_SupportedAspectRatios: - 4:3: 1 - 5:4: 1 - 16:10: 1 - 16:9: 1 - Others: 1 + loadStoreDebugModeEnabled: 0 bundleVersion: 0.1 - preloadedAssets: [] + preloadedAssets: + - {fileID: 11400000, guid: 2f27ffbbbd54d9c4b9435071982af520, type: 2} metroInputSource: 0 wsaTransparentSwapchain: 0 m_HolographicPauseOnTrackingLoss: 1 @@ -147,7 +149,7 @@ PlayerSettings: enableFrameTimingStats: 0 enableOpenGLProfilerGPURecorders: 1 useHDRDisplay: 0 - D3DHDRBitDepth: 0 + hdrBitDepth: 0 m_ColorGamuts: 00000000 targetPixelDensity: 30 resolutionScalingMode: 0 @@ -157,6 +159,7 @@ PlayerSettings: applicationIdentifier: {} buildNumber: Standalone: 0 + VisionOS: 0 iPhone: 0 tvOS: 0 overrideDefaultApplicationIdentifier: 0 @@ -174,12 +177,15 @@ PlayerSettings: APKExpansionFiles: 0 keepLoadedShadersAlive: 0 StripUnusedMeshComponents: 1 + strictShaderVariantMatching: 0 VertexChannelCompressionMask: 4054 iPhoneSdkVersion: 988 - iOSTargetOSVersionString: 11.0 + iOSTargetOSVersionString: 12.0 tvOSSdkVersion: 0 tvOSRequireExtendedGameController: 0 - tvOSTargetOSVersionString: 11.0 + tvOSTargetOSVersionString: 12.0 + VisionOSSdkVersion: 0 + VisionOSTargetOSVersionString: 1.0 uIPrerenderedIcon: 0 uIRequiresPersistentWiFi: 0 uIRequiresFullScreen: 1 @@ -227,8 +233,10 @@ PlayerSettings: appleDeveloperTeamID: iOSManualSigningProvisioningProfileID: tvOSManualSigningProvisioningProfileID: + VisionOSManualSigningProvisioningProfileID: iOSManualSigningProvisioningProfileType: 0 tvOSManualSigningProvisioningProfileType: 0 + VisionOSManualSigningProvisioningProfileType: 0 appleEnableAutomaticSigning: 0 iOSRequireARKit: 0 iOSAutomaticallyDetectAndAddCapabilities: 1 @@ -243,6 +251,7 @@ PlayerSettings: useCustomLauncherGradleManifest: 0 useCustomBaseGradleTemplate: 0 useCustomGradlePropertiesTemplate: 0 + useCustomGradleSettingsTemplate: 0 useCustomProguardFile: 0 AndroidTargetArchitectures: 1 AndroidTargetDevices: 0 @@ -250,6 +259,7 @@ PlayerSettings: androidSplashScreen: {fileID: 0} AndroidKeystoreName: AndroidKeyaliasName: + AndroidEnableArmv9SecurityFeatures: 0 AndroidBuildApkPerCpuArchitecture: 0 AndroidTVCompatibility: 0 AndroidIsGame: 1 @@ -263,7 +273,6 @@ PlayerSettings: banner: {fileID: 0} androidGamepadSupportLevel: 0 chromeosInputEmulation: 1 - AndroidMinifyWithR8: 0 AndroidMinifyRelease: 0 AndroidMinifyDebug: 0 AndroidValidateAppBundleSize: 1 @@ -286,6 +295,7 @@ PlayerSettings: - m_BuildTarget: WebGL m_StaticBatching: 0 m_DynamicBatching: 0 + m_BuildTargetShaderSettings: [] m_BuildTargetGraphicsJobs: - m_BuildTarget: MacStandaloneSupport m_GraphicsJobs: 0 @@ -337,6 +347,8 @@ PlayerSettings: m_Devices: - Oculus - OpenVR + m_DefaultShaderChunkSizeInMB: 16 + m_DefaultShaderChunkCount: 0 openGLRequireES31: 0 openGLRequireES31AEP: 0 openGLRequireES32: 0 @@ -358,7 +370,21 @@ PlayerSettings: m_EncodingQuality: 2 - m_BuildTarget: Windows Store Apps m_EncodingQuality: 2 + m_BuildTargetGroupHDRCubemapEncodingQuality: + - m_BuildTarget: Android + m_EncodingQuality: 2 + - m_BuildTarget: iPhone + m_EncodingQuality: 1 + - m_BuildTarget: tvOS + m_EncodingQuality: 1 + - m_BuildTarget: Standalone + m_EncodingQuality: 2 + - m_BuildTarget: Lumin + m_EncodingQuality: 1 + - m_BuildTarget: Windows Store Apps + m_EncodingQuality: 2 m_BuildTargetGroupLightmapSettings: [] + m_BuildTargetGroupLoadStoreDebugModeSettings: [] m_BuildTargetNormalMapEncoding: - m_BuildTarget: Android m_Encoding: 1 @@ -379,6 +405,7 @@ PlayerSettings: locationUsageDescription: microphoneUsageDescription: bluetoothUsageDescription: + macOSTargetOSVersion: 10.13.0 switchNMETAOverride: switchNetLibKey: switchSocketMemoryPoolSize: 6144 @@ -386,10 +413,12 @@ PlayerSettings: switchSocketConcurrencyLimit: 14 switchScreenResolutionBehavior: 2 switchUseCPUProfiler: 0 + switchEnableFileSystemTrace: 0 switchUseGOLDLinker: 0 switchLTOSetting: 0 switchApplicationID: 0x01004b9000490000 switchNSODependencies: + switchCompilerFlags: switchTitleNames_0: switchTitleNames_1: switchTitleNames_2: @@ -463,7 +492,6 @@ PlayerSettings: switchReleaseVersion: 0 switchDisplayVersion: 1.0.0 switchStartupUserAccount: 0 - switchTouchScreenUsage: 0 switchSupportedLanguagesMask: 0 switchLogoType: 0 switchApplicationErrorCodeCategory: @@ -505,6 +533,7 @@ PlayerSettings: switchNativeFsCacheSize: 32 switchIsHoldTypeHorizontal: 0 switchSupportedNpadCount: 8 + switchEnableTouchScreen: 1 switchSocketConfigEnabled: 0 switchTcpInitialSendBufferSize: 32 switchTcpInitialReceiveBufferSize: 64 @@ -517,6 +546,7 @@ PlayerSettings: switchNetworkInterfaceManagerInitializeEnabled: 1 switchPlayerConnectionEnabled: 1 switchUseNewStyleFilepaths: 0 + switchUseLegacyFmodPriorities: 0 switchUseMicroSleepForYield: 1 switchEnableRamDiskSupport: 0 switchMicroSleepForYieldTime: 25 @@ -604,6 +634,7 @@ PlayerSettings: webGLMemorySize: 16 webGLExceptionSupport: 1 webGLNameFilesAsHashes: 0 + webGLShowDiagnostics: 0 webGLDataCaching: 1 webGLDebugSymbols: 0 webGLEmscriptenArgs: @@ -616,21 +647,41 @@ PlayerSettings: webGLLinkerTarget: 1 webGLThreadsSupport: 0 webGLDecompressionFallback: 0 + webGLInitialMemorySize: 32 + webGLMaximumMemorySize: 2048 + webGLMemoryGrowthMode: 2 + webGLMemoryLinearGrowthStep: 16 + webGLMemoryGeometricGrowthStep: 0.2 + webGLMemoryGeometricGrowthCap: 96 + webGLPowerPreference: 2 scriptingDefineSymbols: {} additionalCompilerArguments: {} platformArchitecture: {} scriptingBackend: {} il2cppCompilerConfiguration: {} - managedStrippingLevel: {} + il2cppCodeGeneration: {} + managedStrippingLevel: + EmbeddedLinux: 1 + GameCoreScarlett: 1 + GameCoreXboxOne: 1 + Nintendo Switch: 1 + PS4: 1 + PS5: 1 + QNX: 1 + Stadia: 1 + VisionOS: 1 + WebGL: 1 + Windows Store Apps: 1 + XboxOne: 1 + iPhone: 1 + tvOS: 1 incrementalIl2cppBuild: {} suppressCommonWarnings: 1 allowUnsafeCode: 0 useDeterministicCompilation: 1 - enableRoslynAnalyzers: 1 additionalIl2CppArgs: scriptingRuntimeVersion: 1 gcIncremental: 1 - assemblyVersionValidation: 1 gcWBarrierValidation: 0 apiCompatibilityLevelPerPlatform: {} m_RenderingPath: 1 @@ -703,8 +754,14 @@ PlayerSettings: luminVersion: m_VersionCode: 1 m_VersionName: + hmiPlayerDataPath: + hmiForceSRGBBlit: 1 + embeddedLinuxEnableGamepadInput: 1 + hmiLogStartupTiming: 0 + hmiCpuConfiguration: apiCompatibilityLevel: 6 activeInputHandler: 1 + windowsGamepadBackendHint: 0 cloudProjectId: framebufferDepthMemorylessMode: 0 qualitySettingsNames: [] @@ -712,6 +769,7 @@ PlayerSettings: organizationId: cloudEnabled: 0 legacyClampBlendShapeWeights: 0 - playerDataPath: - forceSRGBBlit: 1 + hmiLoadingImage: {fileID: 0} + platformRequiresReadableAssets: 0 virtualTexturingSupportEnabled: 0 + insecureHttpOption: 0 diff --git a/ProjectSettings/ProjectVersion.txt b/ProjectSettings/ProjectVersion.txt index 8ea1b85..88bb9cf 100644 --- a/ProjectSettings/ProjectVersion.txt +++ b/ProjectSettings/ProjectVersion.txt @@ -1,2 +1,2 @@ -m_EditorVersion: 2021.3.11f1 -m_EditorVersionWithRevision: 2021.3.11f1 (0a5ca18544bf) +m_EditorVersion: 2022.3.10f1 +m_EditorVersionWithRevision: 2022.3.10f1 (ff3792e53c62) diff --git a/ProjectSettings/QualitySettings.asset b/ProjectSettings/QualitySettings.asset index 0505fe1..9549fd2 100644 --- a/ProjectSettings/QualitySettings.asset +++ b/ProjectSettings/QualitySettings.asset @@ -6,7 +6,7 @@ QualitySettings: serializedVersion: 5 m_CurrentQuality: 5 m_QualitySettings: - - serializedVersion: 2 + - serializedVersion: 3 name: Very Low pixelLightCount: 0 shadows: 0 @@ -19,16 +19,20 @@ QualitySettings: shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 0 skinWeights: 1 - textureQuality: 1 + globalTextureMipmapLimit: 1 + textureMipmapLimitSettings: [] anisotropicTextures: 0 antiAliasing: 0 softParticles: 0 softVegetation: 0 realtimeReflectionProbes: 0 billboardsFaceCameraPosition: 0 + useLegacyDetailDistribution: 1 vSyncCount: 0 + realtimeGICPUUsage: 25 lodBias: 0.3 maximumLODLevel: 0 + enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 @@ -41,8 +45,17 @@ QualitySettings: asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 customRenderPipeline: {fileID: 0} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 excludedTargetPlatforms: [] - - serializedVersion: 2 + - serializedVersion: 3 name: Low pixelLightCount: 0 shadows: 0 @@ -55,16 +68,20 @@ QualitySettings: shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 0 skinWeights: 2 - textureQuality: 0 + globalTextureMipmapLimit: 0 + textureMipmapLimitSettings: [] anisotropicTextures: 0 antiAliasing: 0 softParticles: 0 softVegetation: 0 realtimeReflectionProbes: 0 billboardsFaceCameraPosition: 0 + useLegacyDetailDistribution: 1 vSyncCount: 0 + realtimeGICPUUsage: 25 lodBias: 0.4 maximumLODLevel: 0 + enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 @@ -77,8 +94,17 @@ QualitySettings: asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 customRenderPipeline: {fileID: 0} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 excludedTargetPlatforms: [] - - serializedVersion: 2 + - serializedVersion: 3 name: Medium pixelLightCount: 1 shadows: 1 @@ -91,16 +117,20 @@ QualitySettings: shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 0 skinWeights: 2 - textureQuality: 0 + globalTextureMipmapLimit: 0 + textureMipmapLimitSettings: [] anisotropicTextures: 1 antiAliasing: 0 softParticles: 0 softVegetation: 0 realtimeReflectionProbes: 0 billboardsFaceCameraPosition: 0 + useLegacyDetailDistribution: 1 vSyncCount: 1 + realtimeGICPUUsage: 25 lodBias: 0.7 maximumLODLevel: 0 + enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 @@ -113,8 +143,17 @@ QualitySettings: asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 customRenderPipeline: {fileID: 0} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 excludedTargetPlatforms: [] - - serializedVersion: 2 + - serializedVersion: 3 name: High pixelLightCount: 2 shadows: 2 @@ -127,16 +166,20 @@ QualitySettings: shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 1 skinWeights: 2 - textureQuality: 0 + globalTextureMipmapLimit: 0 + textureMipmapLimitSettings: [] anisotropicTextures: 1 antiAliasing: 0 softParticles: 0 softVegetation: 1 realtimeReflectionProbes: 1 billboardsFaceCameraPosition: 1 + useLegacyDetailDistribution: 1 vSyncCount: 1 + realtimeGICPUUsage: 50 lodBias: 1 maximumLODLevel: 0 + enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 @@ -149,8 +192,17 @@ QualitySettings: asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 customRenderPipeline: {fileID: 0} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 excludedTargetPlatforms: [] - - serializedVersion: 2 + - serializedVersion: 3 name: Very High pixelLightCount: 3 shadows: 2 @@ -163,16 +215,20 @@ QualitySettings: shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 1 skinWeights: 4 - textureQuality: 0 + globalTextureMipmapLimit: 0 + textureMipmapLimitSettings: [] anisotropicTextures: 2 antiAliasing: 2 softParticles: 1 softVegetation: 1 realtimeReflectionProbes: 1 billboardsFaceCameraPosition: 1 + useLegacyDetailDistribution: 1 vSyncCount: 1 + realtimeGICPUUsage: 50 lodBias: 1.5 maximumLODLevel: 0 + enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 @@ -185,8 +241,17 @@ QualitySettings: asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 customRenderPipeline: {fileID: 0} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 excludedTargetPlatforms: [] - - serializedVersion: 2 + - serializedVersion: 3 name: Ultra pixelLightCount: 4 shadows: 2 @@ -199,16 +264,20 @@ QualitySettings: shadowCascade4Split: {x: 0.06666667, y: 0.2, z: 0.46666667} shadowmaskMode: 1 skinWeights: 4 - textureQuality: 0 + globalTextureMipmapLimit: 0 + textureMipmapLimitSettings: [] anisotropicTextures: 2 antiAliasing: 2 softParticles: 1 softVegetation: 1 realtimeReflectionProbes: 1 billboardsFaceCameraPosition: 1 + useLegacyDetailDistribution: 1 vSyncCount: 1 + realtimeGICPUUsage: 100 lodBias: 1 maximumLODLevel: 0 + enableLODCrossFade: 1 streamingMipmapsActive: 0 streamingMipmapsAddAllCameras: 1 streamingMipmapsMemoryBudget: 512 @@ -221,7 +290,17 @@ QualitySettings: asyncUploadPersistentBuffer: 1 resolutionScalingFixedDPIFactor: 1 customRenderPipeline: {fileID: 0} + terrainQualityOverrides: 0 + terrainPixelError: 1 + terrainDetailDensityScale: 1 + terrainBasemapDistance: 1000 + terrainDetailDistance: 80 + terrainTreeDistance: 5000 + terrainBillboardStart: 50 + terrainFadeLength: 5 + terrainMaxTrees: 50 excludedTargetPlatforms: [] + m_TextureMipmapLimitGroupNames: [] m_PerPlatformDefaultQuality: Android: 2 Lumin: 5 diff --git a/ProjectSettings/VFXManager.asset b/ProjectSettings/VFXManager.asset index b004c5e..87823a9 100644 --- a/ProjectSettings/VFXManager.asset +++ b/ProjectSettings/VFXManager.asset @@ -10,6 +10,8 @@ VFXManager: m_RenderPipeSettingsPath: m_FixedTimeStep: 0.016666668 m_MaxDeltaTime: 0.05 - m_CompiledVersion: 4 - m_RuntimeVersion: 22 + m_MaxScrubTime: 30 + m_CompiledVersion: 7 + m_RuntimeVersion: 35 m_RuntimeResources: {fileID: 11400000, guid: bc10b42afe3813544bffd38ae2cd893d, type: 2} + m_BatchEmptyLifetime: 300 diff --git a/ProjectSettings/boot.config b/ProjectSettings/boot.config deleted file mode 100644 index e69de29..0000000 From d4aabafbdf8e74dcf87ca54187f20f475f1aac84 Mon Sep 17 00:00:00 2001 From: Stedd Date: Sun, 8 Oct 2023 13:04:33 +0200 Subject: [PATCH 04/14] Updated and removed some packages --- Packages/manifest.json | 8 +++----- Packages/packages-lock.json | 23 +++-------------------- 2 files changed, 6 insertions(+), 25 deletions(-) diff --git a/Packages/manifest.json b/Packages/manifest.json index bd04add..3e245bd 100644 --- a/Packages/manifest.json +++ b/Packages/manifest.json @@ -1,10 +1,9 @@ { "dependencies": { - "com.unity.ai.navigation": "1.1.4", - "com.unity.collab-proxy": "2.0.7", + "com.unity.ai.navigation": "1.1.5", "com.unity.feature.development": "1.0.1", - "com.unity.ide.rider": "3.0.24", - "com.unity.ide.visualstudio": "2.0.18", + "com.unity.ide.rider": "3.0.25", + "com.unity.ide.visualstudio": "2.0.21", "com.unity.ide.vscode": "1.2.5", "com.unity.inputsystem": "1.7.0", "com.unity.render-pipelines.high-definition": "14.0.8", @@ -14,7 +13,6 @@ "com.unity.ugui": "1.0.0", "com.unity.ui": "2.0.0", "com.unity.ui.builder": "2.0.0", - "com.unity.visualscripting": "1.9.0", "com.unity.modules.ai": "1.0.0", "com.unity.modules.androidjni": "1.0.0", "com.unity.modules.animation": "1.0.0", diff --git a/Packages/packages-lock.json b/Packages/packages-lock.json index 6b3300a..dd8058e 100644 --- a/Packages/packages-lock.json +++ b/Packages/packages-lock.json @@ -1,7 +1,7 @@ { "dependencies": { "com.unity.ai.navigation": { - "version": "1.1.4", + "version": "1.1.5", "depth": 0, "source": "registry", "dependencies": { @@ -18,13 +18,6 @@ }, "url": "https://packages.unity.com" }, - "com.unity.collab-proxy": { - "version": "2.0.7", - "depth": 0, - "source": "registry", - "dependencies": {}, - "url": "https://packages.unity.com" - }, "com.unity.editorcoroutines": { "version": "1.0.0", "depth": 1, @@ -54,7 +47,7 @@ } }, "com.unity.ide.rider": { - "version": "3.0.24", + "version": "3.0.25", "depth": 0, "source": "registry", "dependencies": { @@ -63,7 +56,7 @@ "url": "https://packages.unity.com" }, "com.unity.ide.visualstudio": { - "version": "2.0.18", + "version": "2.0.21", "depth": 0, "source": "registry", "dependencies": { @@ -232,16 +225,6 @@ "com.unity.render-pipelines.core": "14.0.8" } }, - "com.unity.visualscripting": { - "version": "1.9.0", - "depth": 0, - "source": "registry", - "dependencies": { - "com.unity.ugui": "1.0.0", - "com.unity.modules.jsonserialize": "1.0.0" - }, - "url": "https://packages.unity.com" - }, "com.unity.modules.ai": { "version": "1.0.0", "depth": 0, From 35d80db948abb8f24e14c446eabca25501a08290 Mon Sep 17 00:00:00 2001 From: Stedd Date: Sun, 8 Oct 2023 13:14:17 +0200 Subject: [PATCH 05/14] Added submodule --- .gitmodules | 3 +++ Assets/CoreSystems | 1 + Assets/CoreSystems.meta | 8 ++++++++ 3 files changed, 12 insertions(+) create mode 100644 .gitmodules create mode 160000 Assets/CoreSystems create mode 100644 Assets/CoreSystems.meta diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..bf244ee --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "Assets/CoreSystems"] + path = Assets/CoreSystems + url = https://gitea.strixhab.net/Stedd/GameDev.CoreSystems.git diff --git a/Assets/CoreSystems b/Assets/CoreSystems new file mode 160000 index 0000000..2fd48d1 --- /dev/null +++ b/Assets/CoreSystems @@ -0,0 +1 @@ +Subproject commit 2fd48d1475f8116434c184e5812392a4c892b387 diff --git a/Assets/CoreSystems.meta b/Assets/CoreSystems.meta new file mode 100644 index 0000000..7767e4d --- /dev/null +++ b/Assets/CoreSystems.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 1ddd6c48e06694441adea0f979e2d194 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: From 357e02ff4fd709103938b8704faa2ae4e0e8d940 Mon Sep 17 00:00:00 2001 From: Stedd Date: Sun, 8 Oct 2023 14:06:15 +0200 Subject: [PATCH 06/14] Changed naming scheme of ScriptableObjects --- Assets/Entities/Enemies/Scripts/EnemyBase.cs | 4 ++-- .../{SEnemyBaseList.cs => SoEnemyBaseList.cs} | 2 +- ...{SEnemyBaseList.cs.meta => SoEnemyBaseList.cs.meta} | 0 ...EnemyBaseRuntimeSet.cs => SoEnemyBaseRuntimeSet.cs} | 2 +- ...untimeSet.cs.meta => SoEnemyBaseRuntimeSet.cs.meta} | 0 ...tityBaseRuntimeSet.cs => SoEntityBaseRuntimeSet.cs} | 2 +- ...ntimeSet.cs.meta => SoEntityBaseRuntimeSet.cs.meta} | 0 ...PowerBaseRuntimeSet.cs => SoPowerBaseRuntimeSet.cs} | 2 +- ...untimeSet.cs.meta => SoPowerBaseRuntimeSet.cs.meta} | 0 .../{SPowerConfig.cs => SoPowerConfig.cs} | 5 ++--- .../{SPowerConfig.cs.meta => SoPowerConfig.cs.meta} | 0 .../{SStructureBaseList.cs => SoStructureBaseList.cs} | 2 +- ...ureBaseList.cs.meta => SoStructureBaseList.cs.meta} | 0 ...eBaseRuntimeSet.cs => SoStructureBaseRuntimeSet.cs} | 2 +- ...meSet.cs.meta => SoStructureBaseRuntimeSet.cs.meta} | 0 .../{STargeterConfig.cs => SoTargeterConfig.cs} | 6 +++--- ...TargeterConfig.cs.meta => SoTargeterConfig.cs.meta} | 0 .../{SWeaponConfig.cs => SoWeaponConfig.cs} | 4 ++-- .../{SWeaponConfig.cs.meta => SoWeaponConfig.cs.meta} | 0 Assets/Entities/Scripts/EntityBase.cs | 2 +- Assets/Entities/Scripts/PowerBase.cs | 2 +- Assets/Entities/Scripts/Targeter.cs | 10 +++++----- Assets/Entities/Structures/Scripts/Disabler.cs | 2 +- Assets/Entities/Structures/Scripts/StructureBase.cs | 6 +++--- Assets/Entities/Structures/Turret/Turret.cs | 2 +- Assets/Handlers/BuildingHandler.cs | 7 ++++--- Assets/Handlers/EnemyHandler.cs | 4 ++-- Assets/Handlers/PowerHandler.cs | 2 +- Assets/UI/BuildMenuUiController.cs | 5 +++-- 29 files changed, 37 insertions(+), 36 deletions(-) rename Assets/Entities/ScriptableObjects/{SEnemyBaseList.cs => SoEnemyBaseList.cs} (83%) rename Assets/Entities/ScriptableObjects/{SEnemyBaseList.cs.meta => SoEnemyBaseList.cs.meta} (100%) rename Assets/Entities/ScriptableObjects/{SEnemyBaseRuntimeSet.cs => SoEnemyBaseRuntimeSet.cs} (78%) rename Assets/Entities/ScriptableObjects/{SEnemyBaseRuntimeSet.cs.meta => SoEnemyBaseRuntimeSet.cs.meta} (100%) rename Assets/Entities/ScriptableObjects/{SEntityBaseRuntimeSet.cs => SoEntityBaseRuntimeSet.cs} (74%) rename Assets/Entities/ScriptableObjects/{SEntityBaseRuntimeSet.cs.meta => SoEntityBaseRuntimeSet.cs.meta} (100%) rename Assets/Entities/ScriptableObjects/{SPowerBaseRuntimeSet.cs => SoPowerBaseRuntimeSet.cs} (75%) rename Assets/Entities/ScriptableObjects/{SPowerBaseRuntimeSet.cs.meta => SoPowerBaseRuntimeSet.cs.meta} (100%) rename Assets/Entities/ScriptableObjects/{SPowerConfig.cs => SoPowerConfig.cs} (64%) rename Assets/Entities/ScriptableObjects/{SPowerConfig.cs.meta => SoPowerConfig.cs.meta} (100%) rename Assets/Entities/ScriptableObjects/{SStructureBaseList.cs => SoStructureBaseList.cs} (81%) rename Assets/Entities/ScriptableObjects/{SStructureBaseList.cs.meta => SoStructureBaseList.cs.meta} (100%) rename Assets/Entities/ScriptableObjects/{SStructureBaseRuntimeSet.cs => SoStructureBaseRuntimeSet.cs} (73%) rename Assets/Entities/ScriptableObjects/{SStructureBaseRuntimeSet.cs.meta => SoStructureBaseRuntimeSet.cs.meta} (100%) rename Assets/Entities/ScriptableObjects/{STargeterConfig.cs => SoTargeterConfig.cs} (71%) rename Assets/Entities/ScriptableObjects/{STargeterConfig.cs.meta => SoTargeterConfig.cs.meta} (100%) rename Assets/Entities/ScriptableObjects/{SWeaponConfig.cs => SoWeaponConfig.cs} (80%) rename Assets/Entities/ScriptableObjects/{SWeaponConfig.cs.meta => SoWeaponConfig.cs.meta} (100%) diff --git a/Assets/Entities/Enemies/Scripts/EnemyBase.cs b/Assets/Entities/Enemies/Scripts/EnemyBase.cs index e6fdd79..f2d192e 100644 --- a/Assets/Entities/Enemies/Scripts/EnemyBase.cs +++ b/Assets/Entities/Enemies/Scripts/EnemyBase.cs @@ -6,14 +6,14 @@ namespace AsteroidGame.Entities { public class EnemyBase : EntityBase { - [SerializeField] private SEntityBaseRuntimeSet _enemyBaseSet; + [SerializeField] private SoEntityBaseRuntimeSet _enemyBaseSet; [Header("Targeter")] - [SerializeField] private STargeterConfig _targeterConfig; [SerializeField] private Targeter _targeter; [SerializeField] private EntityBase _target; [Header("NavMeshAgent")] + [SerializeField] private SoTargeterConfig _targeterConfig; [SerializeField] private NavMeshAgent _navMeshAgent; protected override void OnEnable() diff --git a/Assets/Entities/ScriptableObjects/SEnemyBaseList.cs b/Assets/Entities/ScriptableObjects/SoEnemyBaseList.cs similarity index 83% rename from Assets/Entities/ScriptableObjects/SEnemyBaseList.cs rename to Assets/Entities/ScriptableObjects/SoEnemyBaseList.cs index 1737136..98bf112 100644 --- a/Assets/Entities/ScriptableObjects/SEnemyBaseList.cs +++ b/Assets/Entities/ScriptableObjects/SoEnemyBaseList.cs @@ -5,7 +5,7 @@ using UnityEngine; namespace AsteroidGame.Entities { [CreateAssetMenu(fileName = "newEnemyList", menuName = "Enemies/EnemyList")] - public class SEnemyBaseList : ScriptableObject + public class SoEnemyBaseList : ScriptableObject { public List _list; } diff --git a/Assets/Entities/ScriptableObjects/SEnemyBaseList.cs.meta b/Assets/Entities/ScriptableObjects/SoEnemyBaseList.cs.meta similarity index 100% rename from Assets/Entities/ScriptableObjects/SEnemyBaseList.cs.meta rename to Assets/Entities/ScriptableObjects/SoEnemyBaseList.cs.meta diff --git a/Assets/Entities/ScriptableObjects/SEnemyBaseRuntimeSet.cs b/Assets/Entities/ScriptableObjects/SoEnemyBaseRuntimeSet.cs similarity index 78% rename from Assets/Entities/ScriptableObjects/SEnemyBaseRuntimeSet.cs rename to Assets/Entities/ScriptableObjects/SoEnemyBaseRuntimeSet.cs index c0d4478..1598031 100644 --- a/Assets/Entities/ScriptableObjects/SEnemyBaseRuntimeSet.cs +++ b/Assets/Entities/ScriptableObjects/SoEnemyBaseRuntimeSet.cs @@ -5,7 +5,7 @@ using UnityEngine; namespace AsteroidGame.Entities { [CreateAssetMenu(fileName = "newEnemyBaseRuntimeSet", menuName = "RuntimeSet/EnemyBase")] - public class SEnemyBaseRuntimeSet : SRuntimeSet + public class SoEnemyBaseRuntimeSet : SRuntimeSet { } } \ No newline at end of file diff --git a/Assets/Entities/ScriptableObjects/SEnemyBaseRuntimeSet.cs.meta b/Assets/Entities/ScriptableObjects/SoEnemyBaseRuntimeSet.cs.meta similarity index 100% rename from Assets/Entities/ScriptableObjects/SEnemyBaseRuntimeSet.cs.meta rename to Assets/Entities/ScriptableObjects/SoEnemyBaseRuntimeSet.cs.meta diff --git a/Assets/Entities/ScriptableObjects/SEntityBaseRuntimeSet.cs b/Assets/Entities/ScriptableObjects/SoEntityBaseRuntimeSet.cs similarity index 74% rename from Assets/Entities/ScriptableObjects/SEntityBaseRuntimeSet.cs rename to Assets/Entities/ScriptableObjects/SoEntityBaseRuntimeSet.cs index 371c740..2a8532c 100644 --- a/Assets/Entities/ScriptableObjects/SEntityBaseRuntimeSet.cs +++ b/Assets/Entities/ScriptableObjects/SoEntityBaseRuntimeSet.cs @@ -4,7 +4,7 @@ using UnityEngine; namespace AsteroidGame.Entities { [CreateAssetMenu(fileName = "newEntityBaseRuntimeSet", menuName = "RuntimeSet/EntityBase")] - public class SEntityBaseRuntimeSet : SRuntimeSet + public class SoEntityBaseRuntimeSet : SRuntimeSet { } } \ No newline at end of file diff --git a/Assets/Entities/ScriptableObjects/SEntityBaseRuntimeSet.cs.meta b/Assets/Entities/ScriptableObjects/SoEntityBaseRuntimeSet.cs.meta similarity index 100% rename from Assets/Entities/ScriptableObjects/SEntityBaseRuntimeSet.cs.meta rename to Assets/Entities/ScriptableObjects/SoEntityBaseRuntimeSet.cs.meta diff --git a/Assets/Entities/ScriptableObjects/SPowerBaseRuntimeSet.cs b/Assets/Entities/ScriptableObjects/SoPowerBaseRuntimeSet.cs similarity index 75% rename from Assets/Entities/ScriptableObjects/SPowerBaseRuntimeSet.cs rename to Assets/Entities/ScriptableObjects/SoPowerBaseRuntimeSet.cs index c87013f..f416b5f 100644 --- a/Assets/Entities/ScriptableObjects/SPowerBaseRuntimeSet.cs +++ b/Assets/Entities/ScriptableObjects/SoPowerBaseRuntimeSet.cs @@ -4,7 +4,7 @@ using UnityEngine; namespace AsteroidGame.Entities { [CreateAssetMenu(fileName = "newPowerBaseRuntimeSet", menuName = "RuntimeSet/PowerBase")] - public class SPowerBaseRuntimeSet : SRuntimeSet + public class SoPowerBaseRuntimeSet : SRuntimeSet { } } \ No newline at end of file diff --git a/Assets/Entities/ScriptableObjects/SPowerBaseRuntimeSet.cs.meta b/Assets/Entities/ScriptableObjects/SoPowerBaseRuntimeSet.cs.meta similarity index 100% rename from Assets/Entities/ScriptableObjects/SPowerBaseRuntimeSet.cs.meta rename to Assets/Entities/ScriptableObjects/SoPowerBaseRuntimeSet.cs.meta diff --git a/Assets/Entities/ScriptableObjects/SPowerConfig.cs b/Assets/Entities/ScriptableObjects/SoPowerConfig.cs similarity index 64% rename from Assets/Entities/ScriptableObjects/SPowerConfig.cs rename to Assets/Entities/ScriptableObjects/SoPowerConfig.cs index 9c7c072..3d2295d 100644 --- a/Assets/Entities/ScriptableObjects/SPowerConfig.cs +++ b/Assets/Entities/ScriptableObjects/SoPowerConfig.cs @@ -1,12 +1,11 @@ -using AsteroidGame.Interfaces; using UnityEngine; namespace AsteroidGame.Entities { [CreateAssetMenu(fileName = "newPowerConfiguration", menuName = "Configuration/Power")] - public class SPowerConfig : ScriptableObject + public class SoPowerConfig : ScriptableObject { - public SPowerBaseRuntimeSet _activePowerStructures; + public SoPowerBaseRuntimeSet _activePowerStructures; public bool isGenerator; public bool isConsumer; public int maxPower; diff --git a/Assets/Entities/ScriptableObjects/SPowerConfig.cs.meta b/Assets/Entities/ScriptableObjects/SoPowerConfig.cs.meta similarity index 100% rename from Assets/Entities/ScriptableObjects/SPowerConfig.cs.meta rename to Assets/Entities/ScriptableObjects/SoPowerConfig.cs.meta diff --git a/Assets/Entities/ScriptableObjects/SStructureBaseList.cs b/Assets/Entities/ScriptableObjects/SoStructureBaseList.cs similarity index 81% rename from Assets/Entities/ScriptableObjects/SStructureBaseList.cs rename to Assets/Entities/ScriptableObjects/SoStructureBaseList.cs index 6eb1d0d..564cc35 100644 --- a/Assets/Entities/ScriptableObjects/SStructureBaseList.cs +++ b/Assets/Entities/ScriptableObjects/SoStructureBaseList.cs @@ -4,7 +4,7 @@ using UnityEngine; namespace AsteroidGame.Entities { [CreateAssetMenu(fileName = "newStructureList", menuName = "Structures/StructureList")] - public class SStructureBaseList : ScriptableObject + public class SoStructureBaseList : ScriptableObject { public List _structureList; } diff --git a/Assets/Entities/ScriptableObjects/SStructureBaseList.cs.meta b/Assets/Entities/ScriptableObjects/SoStructureBaseList.cs.meta similarity index 100% rename from Assets/Entities/ScriptableObjects/SStructureBaseList.cs.meta rename to Assets/Entities/ScriptableObjects/SoStructureBaseList.cs.meta diff --git a/Assets/Entities/ScriptableObjects/SStructureBaseRuntimeSet.cs b/Assets/Entities/ScriptableObjects/SoStructureBaseRuntimeSet.cs similarity index 73% rename from Assets/Entities/ScriptableObjects/SStructureBaseRuntimeSet.cs rename to Assets/Entities/ScriptableObjects/SoStructureBaseRuntimeSet.cs index 4f43567..06bbc75 100644 --- a/Assets/Entities/ScriptableObjects/SStructureBaseRuntimeSet.cs +++ b/Assets/Entities/ScriptableObjects/SoStructureBaseRuntimeSet.cs @@ -4,7 +4,7 @@ using UnityEngine; namespace AsteroidGame.Entities { [CreateAssetMenu(fileName = "newStructureBaseRuntimeSet", menuName = "RuntimeSet/StructureBase")] - public class SStructureBaseRuntimeSet : SRuntimeSet + public class SoStructureBaseRuntimeSet : SRuntimeSet { } } \ No newline at end of file diff --git a/Assets/Entities/ScriptableObjects/SStructureBaseRuntimeSet.cs.meta b/Assets/Entities/ScriptableObjects/SoStructureBaseRuntimeSet.cs.meta similarity index 100% rename from Assets/Entities/ScriptableObjects/SStructureBaseRuntimeSet.cs.meta rename to Assets/Entities/ScriptableObjects/SoStructureBaseRuntimeSet.cs.meta diff --git a/Assets/Entities/ScriptableObjects/STargeterConfig.cs b/Assets/Entities/ScriptableObjects/SoTargeterConfig.cs similarity index 71% rename from Assets/Entities/ScriptableObjects/STargeterConfig.cs rename to Assets/Entities/ScriptableObjects/SoTargeterConfig.cs index 461c31f..edc8e95 100644 --- a/Assets/Entities/ScriptableObjects/STargeterConfig.cs +++ b/Assets/Entities/ScriptableObjects/SoTargeterConfig.cs @@ -1,14 +1,14 @@ -using AsteroidGame.Interfaces; using UnityEngine; namespace AsteroidGame.Entities { [CreateAssetMenu(fileName = "newTargeterConfiguration", menuName = "Configuration/Targeter")] - public class STargeterConfig : ScriptableObject + public class SoTargeterConfig : ScriptableObject { public float _range; public TargetStrategy _selectedTargetStrategy; - public SEntityBaseRuntimeSet _activeEntities; + public SoEntityBaseRuntimeSet _activeEntities; + public enum TargetStrategy { LowestRange, diff --git a/Assets/Entities/ScriptableObjects/STargeterConfig.cs.meta b/Assets/Entities/ScriptableObjects/SoTargeterConfig.cs.meta similarity index 100% rename from Assets/Entities/ScriptableObjects/STargeterConfig.cs.meta rename to Assets/Entities/ScriptableObjects/SoTargeterConfig.cs.meta diff --git a/Assets/Entities/ScriptableObjects/SWeaponConfig.cs b/Assets/Entities/ScriptableObjects/SoWeaponConfig.cs similarity index 80% rename from Assets/Entities/ScriptableObjects/SWeaponConfig.cs rename to Assets/Entities/ScriptableObjects/SoWeaponConfig.cs index 29d4104..3cd4700 100644 --- a/Assets/Entities/ScriptableObjects/SWeaponConfig.cs +++ b/Assets/Entities/ScriptableObjects/SoWeaponConfig.cs @@ -1,9 +1,9 @@ -using AsteroidGame.Interfaces; +using AsteroidGame.CoreSystems; using UnityEngine; namespace AsteroidGame.Entities { - public class SWeaponConfig : ScriptableObject, IWeapon + public class SoWeaponConfig : ScriptableObject, IWeapon { [SerializeField] private float _fireRate; [SerializeField] private float _damage; diff --git a/Assets/Entities/ScriptableObjects/SWeaponConfig.cs.meta b/Assets/Entities/ScriptableObjects/SoWeaponConfig.cs.meta similarity index 100% rename from Assets/Entities/ScriptableObjects/SWeaponConfig.cs.meta rename to Assets/Entities/ScriptableObjects/SoWeaponConfig.cs.meta diff --git a/Assets/Entities/Scripts/EntityBase.cs b/Assets/Entities/Scripts/EntityBase.cs index b4ed7ca..3afcb4d 100644 --- a/Assets/Entities/Scripts/EntityBase.cs +++ b/Assets/Entities/Scripts/EntityBase.cs @@ -18,7 +18,7 @@ namespace AsteroidGame.Entities [SerializeField] protected string _uiFriendlyName; [Space] - [SerializeField] private SEntityBaseRuntimeSet _entityBaseSet; + [SerializeField] private SoEntityBaseRuntimeSet _entityBaseSet; #region Props diff --git a/Assets/Entities/Scripts/PowerBase.cs b/Assets/Entities/Scripts/PowerBase.cs index 5291f94..fa579c5 100644 --- a/Assets/Entities/Scripts/PowerBase.cs +++ b/Assets/Entities/Scripts/PowerBase.cs @@ -12,7 +12,7 @@ namespace AsteroidGame.Entities [SerializeField] protected int _maxPower; [SerializeField] protected int _currentPower; - public void SetConfig(SPowerConfig config) + public void SetConfig(SoPowerConfig config) { _isGenerator = config.isGenerator; _isConsumer = config.isConsumer; diff --git a/Assets/Entities/Scripts/Targeter.cs b/Assets/Entities/Scripts/Targeter.cs index 2885c8d..ca0d3c5 100644 --- a/Assets/Entities/Scripts/Targeter.cs +++ b/Assets/Entities/Scripts/Targeter.cs @@ -5,14 +5,14 @@ namespace AsteroidGame.Entities public class Targeter : MonoBehaviour { [SerializeField] private float _range; - [SerializeField] private STargeterConfig.TargetStrategy _targetStrategy; - [SerializeField] private SEntityBaseRuntimeSet _activeEntities; [SerializeField] private EntityBase _targeterParent; [SerializeField] private EntityBase _targetEntity; + [SerializeField] private SoTargeterConfig.TargetStrategy _targetStrategy; + [SerializeField] private SoEntityBaseRuntimeSet _activeEntities; public void SetParent(EntityBase newParent) => _targeterParent = newParent; - public void SetConfig(STargeterConfig config) + public void SetConfig(SoTargeterConfig config) { _range = config._range; _targetStrategy = config._selectedTargetStrategy; @@ -39,7 +39,7 @@ namespace AsteroidGame.Entities { switch (_targetStrategy) { - case STargeterConfig.TargetStrategy.LowestRange: + case SoTargeterConfig.TargetStrategy.LowestRange: { bool isClosest = distanceToTarget < currentBestValue; if (isClosest) @@ -51,7 +51,7 @@ namespace AsteroidGame.Entities break; } - case STargeterConfig.TargetStrategy.LowestHealth: + case SoTargeterConfig.TargetStrategy.LowestHealth: { float enemyHealth = targetEntity.GetHealth(); diff --git a/Assets/Entities/Structures/Scripts/Disabler.cs b/Assets/Entities/Structures/Scripts/Disabler.cs index 34c7410..09e52c8 100644 --- a/Assets/Entities/Structures/Scripts/Disabler.cs +++ b/Assets/Entities/Structures/Scripts/Disabler.cs @@ -6,7 +6,7 @@ namespace AsteroidGame.Entities public class Disabler : MonoBehaviour { [FormerlySerializedAs("Set")] - [SerializeField] private SStructureBaseRuntimeSet _set; + [SerializeField] private SoStructureBaseRuntimeSet _set; [ContextMenu("Disable All")] public void DisableAll() diff --git a/Assets/Entities/Structures/Scripts/StructureBase.cs b/Assets/Entities/Structures/Scripts/StructureBase.cs index fcc3ee8..e1c69d5 100644 --- a/Assets/Entities/Structures/Scripts/StructureBase.cs +++ b/Assets/Entities/Structures/Scripts/StructureBase.cs @@ -12,11 +12,11 @@ namespace AsteroidGame.Entities [SerializeField] protected float _buildTimer; [Header("Configuration")] - [SerializeField] private SEntityBaseRuntimeSet _structureBaseSet; - [SerializeField] private SPowerBaseRuntimeSet _powerBaseSet; + [SerializeField] private SoEntityBaseRuntimeSet _structureBaseSet; + [SerializeField] private SoPowerBaseRuntimeSet _powerBaseSet; [Header("Power")] - [SerializeField] private SPowerConfig _powerConfig; + [SerializeField] private SoPowerConfig _powerConfig; [SerializeField] private PowerBase _power; #region Publics diff --git a/Assets/Entities/Structures/Turret/Turret.cs b/Assets/Entities/Structures/Turret/Turret.cs index bd57a4c..574392c 100644 --- a/Assets/Entities/Structures/Turret/Turret.cs +++ b/Assets/Entities/Structures/Turret/Turret.cs @@ -20,7 +20,7 @@ namespace AsteroidGame.Entities [SerializeField] private Transform _barrel; [Header("Targeter")] - [SerializeField] private STargeterConfig _targeterConfig; + [SerializeField] private SoTargeterConfig _targeterConfig; [SerializeField] private Targeter _targeter; [SerializeField] private EntityBase _target; diff --git a/Assets/Handlers/BuildingHandler.cs b/Assets/Handlers/BuildingHandler.cs index 48b8a57..e93edca 100644 --- a/Assets/Handlers/BuildingHandler.cs +++ b/Assets/Handlers/BuildingHandler.cs @@ -16,9 +16,10 @@ namespace AsteroidGame.Handlers [SerializeField] private bool _isBuilding; [SerializeField] private int _buildingSelector; + [FormerlySerializedAs("_availableSStructures")] [FormerlySerializedAs("_availableStructures")] [Header("Structures")] - [SerializeField] private SStructureBaseList _availableSStructures; + [SerializeField] private SoStructureBaseList _availableSoStructures; #region Private @@ -103,7 +104,7 @@ namespace AsteroidGame.Handlers private void SpawnGhostStructure() { - _ghostStructure = Instantiate(_availableSStructures._structureList[_buildingSelector], GetPlanePoint(), + _ghostStructure = Instantiate(_availableSoStructures._structureList[_buildingSelector], GetPlanePoint(), Quaternion.identity, transform); _ghostStructure.name = "GhostStructure"; @@ -128,7 +129,7 @@ namespace AsteroidGame.Handlers private void SpawnStructure() { - _tempStructure = Instantiate(_availableSStructures._structureList[_buildingSelector], GetPlanePoint(), + _tempStructure = Instantiate(_availableSoStructures._structureList[_buildingSelector], GetPlanePoint(), Quaternion.identity, transform); } diff --git a/Assets/Handlers/EnemyHandler.cs b/Assets/Handlers/EnemyHandler.cs index 302e223..5130fdf 100644 --- a/Assets/Handlers/EnemyHandler.cs +++ b/Assets/Handlers/EnemyHandler.cs @@ -10,9 +10,9 @@ namespace AsteroidGame.Handlers [SerializeField] private int _objectPoolSize = 15; [Header("Configuration")] - [SerializeField] private SEnemyBaseList _availableEnemies; + [SerializeField] private SoEnemyBaseList _availableEnemies; [Header("Lists")] - [SerializeField] private SEntityBaseRuntimeSet _activeEnemies; + [SerializeField] private SoEntityBaseRuntimeSet _activeEnemies; } } \ No newline at end of file diff --git a/Assets/Handlers/PowerHandler.cs b/Assets/Handlers/PowerHandler.cs index 5b3ecf1..1e7bbcb 100644 --- a/Assets/Handlers/PowerHandler.cs +++ b/Assets/Handlers/PowerHandler.cs @@ -13,7 +13,7 @@ namespace AsteroidGame.Handlers [SerializeField] private float _powerFactor; [Header("Connections")] - [SerializeField] private SPowerBaseRuntimeSet _activePowerStructures; + [SerializeField] private SoPowerBaseRuntimeSet _activePowerStructures; private void Update() diff --git a/Assets/UI/BuildMenuUiController.cs b/Assets/UI/BuildMenuUiController.cs index 1e8b3a1..6c1a1cc 100644 --- a/Assets/UI/BuildMenuUiController.cs +++ b/Assets/UI/BuildMenuUiController.cs @@ -9,9 +9,10 @@ namespace AsteroidGame.UI { public class BuildMenuUiController : MonoBehaviour { + [FormerlySerializedAs("_availableSStructuresObject")] [FormerlySerializedAs("_availableStructuresObject")] [Header("Structures")] - [SerializeField] private SStructureBaseList _availableSStructuresObject; + [SerializeField] private SoStructureBaseList _availableSoStructuresObject; private VisualElement _mRoot; private VisualElement _mSlotContainer; @@ -20,7 +21,7 @@ namespace AsteroidGame.UI private void OnEnable() { - _buildings = _availableSStructuresObject._structureList; + _buildings = _availableSoStructuresObject._structureList; _buildingHandler = FindObjectOfType(); //Store the root from the UI Document component From 1bb9d584dd8773d151494af903da2657b45a1a67 Mon Sep 17 00:00:00 2001 From: Stedd Date: Sun, 8 Oct 2023 14:07:18 +0200 Subject: [PATCH 07/14] moved interfaces to CoreSystems --- Assets/CoreSystems | 2 +- Assets/Entities/Entities.asmdef | 3 ++- Assets/Interfaces.meta | 8 ------ Assets/Interfaces/IBuildable.cs | 8 ------ Assets/Interfaces/IBuildable.cs.meta | 11 --------- Assets/Interfaces/IDamageable.cs | 31 ------------------------ Assets/Interfaces/IDamageable.cs.meta | 11 --------- Assets/Interfaces/IPowerSystem.cs | 17 ------------- Assets/Interfaces/IPowerSystem.cs.meta | 11 --------- Assets/Interfaces/ITargetable.cs | 11 --------- Assets/Interfaces/ITargetable.cs.meta | 11 --------- Assets/Interfaces/IWeapon.cs | 8 ------ Assets/Interfaces/IWeapon.cs.meta | 3 --- Assets/Interfaces/Interfaces.asmdef | 14 ----------- Assets/Interfaces/Interfaces.asmdef.meta | 7 ------ 15 files changed, 3 insertions(+), 153 deletions(-) delete mode 100644 Assets/Interfaces.meta delete mode 100644 Assets/Interfaces/IBuildable.cs delete mode 100644 Assets/Interfaces/IBuildable.cs.meta delete mode 100644 Assets/Interfaces/IDamageable.cs delete mode 100644 Assets/Interfaces/IDamageable.cs.meta delete mode 100644 Assets/Interfaces/IPowerSystem.cs delete mode 100644 Assets/Interfaces/IPowerSystem.cs.meta delete mode 100644 Assets/Interfaces/ITargetable.cs delete mode 100644 Assets/Interfaces/ITargetable.cs.meta delete mode 100644 Assets/Interfaces/IWeapon.cs delete mode 100644 Assets/Interfaces/IWeapon.cs.meta delete mode 100644 Assets/Interfaces/Interfaces.asmdef delete mode 100644 Assets/Interfaces/Interfaces.asmdef.meta diff --git a/Assets/CoreSystems b/Assets/CoreSystems index 2fd48d1..f2355fc 160000 --- a/Assets/CoreSystems +++ b/Assets/CoreSystems @@ -1 +1 @@ -Subproject commit 2fd48d1475f8116434c184e5812392a4c892b387 +Subproject commit f2355fc7825d8f09a407b31aaa4178b6fbdd3406 diff --git a/Assets/Entities/Entities.asmdef b/Assets/Entities/Entities.asmdef index 9e0932f..a41f803 100644 --- a/Assets/Entities/Entities.asmdef +++ b/Assets/Entities/Entities.asmdef @@ -3,7 +3,8 @@ "rootNamespace": "AsteroidGame", "references": [ "GUID:17a5862fcd6383b4b97bad4dcb1e2e5d", - "GUID:eb3099ff524d60545a136315a154d67b" + "GUID:eb3099ff524d60545a136315a154d67b", + "GUID:5d38ea13ae8f69a4395d425d401a557a" ], "includePlatforms": [], "excludePlatforms": [], diff --git a/Assets/Interfaces.meta b/Assets/Interfaces.meta deleted file mode 100644 index a3edc8b..0000000 --- a/Assets/Interfaces.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: b20f0794cd5868b4eadf6614b8ab88b9 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Interfaces/IBuildable.cs b/Assets/Interfaces/IBuildable.cs deleted file mode 100644 index 64d55fb..0000000 --- a/Assets/Interfaces/IBuildable.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace AsteroidGame.Interfaces -{ - public interface IBuildable - { - public int GetCost(); - public int SetCost(int newCost); - } -} \ No newline at end of file diff --git a/Assets/Interfaces/IBuildable.cs.meta b/Assets/Interfaces/IBuildable.cs.meta deleted file mode 100644 index 2cd13ee..0000000 --- a/Assets/Interfaces/IBuildable.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 99361805272d7f6419384097857e2bd6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Interfaces/IDamageable.cs b/Assets/Interfaces/IDamageable.cs deleted file mode 100644 index 28e12f5..0000000 --- a/Assets/Interfaces/IDamageable.cs +++ /dev/null @@ -1,31 +0,0 @@ -namespace AsteroidGame.Interfaces -{ - public interface IDamageable - { - public void ModifyHealth(int healthChange); - - #region PublicProperties - - public bool IsInvulnerable { get; } - - #endregion - - #region Setters - public void SetHealth(int newHealth); - - public void SetMaxHealth(int newHealth); - - public void SetInvulnerable (bool newState); - - #endregion - - #region Getters - public int GetHealth(); - - public int GetMaxHealth(); - - public float GetHealthFactor(); - - #endregion - } -} diff --git a/Assets/Interfaces/IDamageable.cs.meta b/Assets/Interfaces/IDamageable.cs.meta deleted file mode 100644 index c2af229..0000000 --- a/Assets/Interfaces/IDamageable.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: d0290b6d2e8462547a0d40b67a1076e3 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Interfaces/IPowerSystem.cs b/Assets/Interfaces/IPowerSystem.cs deleted file mode 100644 index 7eb0331..0000000 --- a/Assets/Interfaces/IPowerSystem.cs +++ /dev/null @@ -1,17 +0,0 @@ -namespace AsteroidGame.Interfaces -{ - public interface IPowerSystem - { - public bool IsGenerator { get; } - - public bool IsConsumer { get; } - - public void SetMaxPower(int newValue); - - public int GetMaxPower(); - - public int GetCurrentPower(); - - public float GetPowerFactor(); - } -} diff --git a/Assets/Interfaces/IPowerSystem.cs.meta b/Assets/Interfaces/IPowerSystem.cs.meta deleted file mode 100644 index 16813a0..0000000 --- a/Assets/Interfaces/IPowerSystem.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: c3e9b410a74a04f4ab85e908d2a684a8 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Interfaces/ITargetable.cs b/Assets/Interfaces/ITargetable.cs deleted file mode 100644 index 397d4db..0000000 --- a/Assets/Interfaces/ITargetable.cs +++ /dev/null @@ -1,11 +0,0 @@ -using UnityEngine; - -namespace AsteroidGame.Interfaces -{ - public interface ITargetable - { - public Vector3 GetCenterPosition(); - - public Vector3 GetBasePosition(); - } -} diff --git a/Assets/Interfaces/ITargetable.cs.meta b/Assets/Interfaces/ITargetable.cs.meta deleted file mode 100644 index 6d6d937..0000000 --- a/Assets/Interfaces/ITargetable.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 3d338501124dcf349b3852a83d20dbe4 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Interfaces/IWeapon.cs b/Assets/Interfaces/IWeapon.cs deleted file mode 100644 index 9aee191..0000000 --- a/Assets/Interfaces/IWeapon.cs +++ /dev/null @@ -1,8 +0,0 @@ -namespace AsteroidGame.Interfaces -{ - public interface IWeapon - { - public float FireRate { get; set; } - public float Damage { get; set; } - } -} \ No newline at end of file diff --git a/Assets/Interfaces/IWeapon.cs.meta b/Assets/Interfaces/IWeapon.cs.meta deleted file mode 100644 index 3c7920f..0000000 --- a/Assets/Interfaces/IWeapon.cs.meta +++ /dev/null @@ -1,3 +0,0 @@ -fileFormatVersion: 2 -guid: a4d06a75a5a64c83aa191a8610f5080f -timeCreated: 1664621279 \ No newline at end of file diff --git a/Assets/Interfaces/Interfaces.asmdef b/Assets/Interfaces/Interfaces.asmdef deleted file mode 100644 index 2bb5daf..0000000 --- a/Assets/Interfaces/Interfaces.asmdef +++ /dev/null @@ -1,14 +0,0 @@ -{ - "name": "Interfaces", - "rootNamespace": "AsteroidGame", - "references": [], - "includePlatforms": [], - "excludePlatforms": [], - "allowUnsafeCode": false, - "overrideReferences": false, - "precompiledReferences": [], - "autoReferenced": true, - "defineConstraints": [], - "versionDefines": [], - "noEngineReferences": false -} \ No newline at end of file diff --git a/Assets/Interfaces/Interfaces.asmdef.meta b/Assets/Interfaces/Interfaces.asmdef.meta deleted file mode 100644 index 19a6da9..0000000 --- a/Assets/Interfaces/Interfaces.asmdef.meta +++ /dev/null @@ -1,7 +0,0 @@ -fileFormatVersion: 2 -guid: 17a5862fcd6383b4b97bad4dcb1e2e5d -AssemblyDefinitionImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: From 0a67caf9be30dd47ea08fd43f670cc3d7faf6fde Mon Sep 17 00:00:00 2001 From: Stedd Date: Sun, 8 Oct 2023 14:54:36 +0200 Subject: [PATCH 08/14] Changed namespaces --- .idea/.idea.AsteroidGame/.idea/vcs.xml | 6 - Assets/AsteroidGame.asmdef | 3 +- Assets/CoreSystems | 2 +- Assets/Entities/Enemies/Enemy.prefab | 198 ++++++++++++++++-- Assets/Entities/Enemies/Scripts/EnemyBase.cs | 30 +-- Assets/Entities/Entities.asmdef | 2 - .../RuntimeSet/newEnemyBaseRuntimeSet.asset | 15 ++ .../newEnemyBaseRuntimeSet.asset.meta} | 5 +- .../ScriptableObjects/SoEnemyBaseList.cs | 4 +- .../SoEnemyBaseRuntimeSet.cs | 6 +- .../SoEntityBaseRuntimeSet.cs | 5 +- .../SoPowerBaseRuntimeSet.cs | 5 +- .../ScriptableObjects/SoPowerConfig.cs | 2 +- .../ScriptableObjects/SoStructureBaseList.cs | 3 +- .../SoStructureBaseRuntimeSet.cs | 5 +- .../ScriptableObjects/SoTargeterConfig.cs | 5 +- .../ScriptableObjects/SoWeaponConfig.cs | 4 +- Assets/Entities/Scripts/EntityBase.cs | 59 ++---- Assets/Entities/Scripts/PowerBase.cs | 4 +- Assets/Entities/Scripts/Targeter.cs | 17 +- .../Entities/Structures/Scripts/Disabler.cs | 1 + .../Structures/Scripts/StructureBase.cs | 4 +- Assets/Entities/Structures/Turret/Turret.cs | 17 +- Assets/Handlers/BuildingHandler.cs | 1 + Assets/Handlers/EnemyHandler.cs | 2 +- Assets/Handlers/PowerHandler.cs | 2 +- Assets/ScriptableObjects.meta | 8 - Assets/ScriptableObjects/SRuntimeSet.cs | 20 -- Assets/ScriptableObjects/SRuntimeSet.cs.meta | 11 - .../ScriptableObjects.asmdef | 14 -- Assets/Scripts/CameraController.cs | 1 - Assets/UI/BuildMenuUiController.cs | 1 + ProjectSettings/ProjectSettings.asset | 3 +- 33 files changed, 287 insertions(+), 178 deletions(-) delete mode 100644 .idea/.idea.AsteroidGame/.idea/vcs.xml create mode 100644 Assets/Entities/RuntimeSet/newEnemyBaseRuntimeSet.asset rename Assets/{ScriptableObjects/ScriptableObjects.asmdef.meta => Entities/RuntimeSet/newEnemyBaseRuntimeSet.asset.meta} (52%) delete mode 100644 Assets/ScriptableObjects.meta delete mode 100644 Assets/ScriptableObjects/SRuntimeSet.cs delete mode 100644 Assets/ScriptableObjects/SRuntimeSet.cs.meta delete mode 100644 Assets/ScriptableObjects/ScriptableObjects.asmdef diff --git a/.idea/.idea.AsteroidGame/.idea/vcs.xml b/.idea/.idea.AsteroidGame/.idea/vcs.xml deleted file mode 100644 index 94a25f7..0000000 --- a/.idea/.idea.AsteroidGame/.idea/vcs.xml +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - \ No newline at end of file diff --git a/Assets/AsteroidGame.asmdef b/Assets/AsteroidGame.asmdef index fa942c3..8bf3aa0 100644 --- a/Assets/AsteroidGame.asmdef +++ b/Assets/AsteroidGame.asmdef @@ -7,7 +7,8 @@ "GUID:f008ecc6829887e478aeb5eb004eb01b", "GUID:17a5862fcd6383b4b97bad4dcb1e2e5d", "GUID:f26d68a0bdefa1043b120b820f55e190", - "GUID:eb3099ff524d60545a136315a154d67b" + "GUID:eb3099ff524d60545a136315a154d67b", + "GUID:5d38ea13ae8f69a4395d425d401a557a" ], "includePlatforms": [], "excludePlatforms": [], diff --git a/Assets/CoreSystems b/Assets/CoreSystems index f2355fc..c473d58 160000 --- a/Assets/CoreSystems +++ b/Assets/CoreSystems @@ -1 +1 @@ -Subproject commit f2355fc7825d8f09a407b31aaa4178b6fbdd3406 +Subproject commit c473d58817fa7c0cdd6d6f488cf6c8b9ffd5c52e diff --git a/Assets/Entities/Enemies/Enemy.prefab b/Assets/Entities/Enemies/Enemy.prefab index afdef29..ea6957a 100644 --- a/Assets/Entities/Enemies/Enemy.prefab +++ b/Assets/Entities/Enemies/Enemy.prefab @@ -23,6 +23,7 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 631532845000205954} + 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} @@ -32,7 +33,6 @@ Transform: - {fileID: 91949040360545666} - {fileID: 8001059947964412310} m_Father: {fileID: 7780103704517281592} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &700493555145955010 GameObject: @@ -57,6 +57,7 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 700493555145955010} + 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} @@ -65,8 +66,54 @@ Transform: - {fileID: 1671077540319194627} - {fileID: 3955427233603104958} m_Father: {fileID: 3291032053430181389} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!1 &1312307913408260796 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4626427865743511805} + - component: {fileID: 4299120351774448665} + m_Layer: 0 + m_Name: Damageable + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4626427865743511805 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1312307913408260796} + 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 &4299120351774448665 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1312307913408260796} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a845ca774f1a2d341b32451b100c0d1c, type: 3} + m_Name: + m_EditorClassIdentifier: + k__BackingField: 0 + k__BackingField: 0 + k__BackingField: 0 --- !u!1 &1856154329861502355 GameObject: m_ObjectHideFlags: 0 @@ -92,13 +139,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1856154329861502355} + serializedVersion: 2 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: @@ -150,6 +197,39 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &1900887375425358919 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5123077350175375293} + m_Layer: 0 + m_Name: Functions + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &5123077350175375293 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1900887375425358919} + 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: 4626427865743511805} + - {fileID: 3486364872742429245} + m_Father: {fileID: 2692714622321691895} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &3867128990362458971 GameObject: m_ObjectHideFlags: 0 @@ -175,13 +255,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3867128990362458971} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 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: @@ -257,13 +337,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4192276824634724634} + 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_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!65 &5604178963170827772 BoxCollider: @@ -273,9 +353,17 @@ BoxCollider: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4192276824634724634} 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.3168308, y: 1, z: 1.3902934} m_Center: {x: 0.15841538, y: 0, z: -0.0017904043} --- !u!1 &4921375452445824178 @@ -303,13 +391,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 4921375452445824178} + serializedVersion: 2 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: @@ -361,6 +449,53 @@ MeshRenderer: m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} +--- !u!1 &5367121395816538489 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 3486364872742429245} + - component: {fileID: 4691274110434226497} + m_Layer: 0 + m_Name: Targetable + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &3486364872742429245 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5367121395816538489} + 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 &4691274110434226497 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 5367121395816538489} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: a845ca774f1a2d341b32451b100c0d1c, type: 3} + m_Name: + m_EditorClassIdentifier: + k__BackingField: 0 + k__BackingField: 0 + k__BackingField: 0 --- !u!1 &5599539567497807159 GameObject: m_ObjectHideFlags: 0 @@ -385,14 +520,15 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5599539567497807159} + serializedVersion: 2 m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.5, y: 0.5, z: 0.5} m_ConstrainProportionsScale: 1 m_Children: - - {fileID: 191376514769192977} + - {fileID: 5123077350175375293} + - {fileID: 4114072049224310043} m_Father: {fileID: 0} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1411216412654489461 MonoBehaviour: @@ -418,6 +554,38 @@ MonoBehaviour: _targeter: {fileID: 0} _target: {fileID: 0} _navMeshAgent: {fileID: 0} +--- !u!1 &6015068770338930083 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 4114072049224310043} + m_Layer: 0 + m_Name: Rig + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &4114072049224310043 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 6015068770338930083} + 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: 191376514769192977} + m_Father: {fileID: 2692714622321691895} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &6940800288144322101 GameObject: m_ObjectHideFlags: 0 @@ -441,14 +609,14 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6940800288144322101} - m_LocalRotation: {x: 0, y: -0.7071068, z: 0, w: 0.7071068} + serializedVersion: 2 + m_LocalRotation: {x: -0, y: -0.7071068, z: -0, w: 0.7071068} 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_Father: {fileID: 4114072049224310043} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &7089677990206923544 GameObject: @@ -473,6 +641,7 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7089677990206923544} + 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} @@ -480,7 +649,6 @@ Transform: m_Children: - {fileID: 3291032053430181389} m_Father: {fileID: 191376514769192977} - m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &8831453991117079309 GameObject: @@ -507,6 +675,7 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8831453991117079309} + 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} @@ -515,7 +684,6 @@ Transform: - {fileID: 7956298909069556562} - {fileID: 4518982824339893338} m_Father: {fileID: 3291032053430181389} - m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &5128498621595353232 MeshFilter: @@ -592,13 +760,13 @@ Transform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8931538593362537433} + serializedVersion: 2 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: diff --git a/Assets/Entities/Enemies/Scripts/EnemyBase.cs b/Assets/Entities/Enemies/Scripts/EnemyBase.cs index f2d192e..d1374c9 100644 --- a/Assets/Entities/Enemies/Scripts/EnemyBase.cs +++ b/Assets/Entities/Enemies/Scripts/EnemyBase.cs @@ -1,4 +1,5 @@ -using System; +using AsteroidGame.ScriptableObjects; +using GameDev.CoreSystems; using UnityEngine; using UnityEngine.AI; @@ -8,19 +9,21 @@ namespace AsteroidGame.Entities { [SerializeField] private SoEntityBaseRuntimeSet _enemyBaseSet; - [Header("Targeter")] - [SerializeField] private Targeter _targeter; - [SerializeField] private EntityBase _target; - - [Header("NavMeshAgent")] + [field: Header("Targeter")] [SerializeField] private SoTargeterConfig _targeterConfig; + [field: SerializeField] public Targeter Targeter { get; set; } + + [field: Header("NavMeshAgent")] [SerializeField] private NavMeshAgent _navMeshAgent; protected override void OnEnable() { base.OnEnable(); + _enemyBaseSet.Add(this); + InitializeTargeter(); + InitializeNavMeshAgent(); } @@ -32,9 +35,9 @@ namespace AsteroidGame.Entities private void InitializeTargeter() { - _targeter = gameObject.AddComponent(); - _targeter.SetParent(this); - _targeter.SetConfig(_targeterConfig); + Targeter = gameObject.AddComponent(); + Targeter.SetParent(this); + Targeter.SetConfig(_targeterConfig); } protected override void OnDisable() @@ -45,11 +48,10 @@ namespace AsteroidGame.Entities private void Update() { - if (_targeter.FoundTarget()) - { - _target = _targeter.GetTarget(); - _navMeshAgent.SetDestination(_target.GetBasePosition()); - } + if (!Targeter.FoundTarget()) return; + + Target = Targeter.GetTarget(); + _navMeshAgent.SetDestination(_target.GetBasePosition()); } } } \ No newline at end of file diff --git a/Assets/Entities/Entities.asmdef b/Assets/Entities/Entities.asmdef index a41f803..1414387 100644 --- a/Assets/Entities/Entities.asmdef +++ b/Assets/Entities/Entities.asmdef @@ -2,8 +2,6 @@ "name": "Entities", "rootNamespace": "AsteroidGame", "references": [ - "GUID:17a5862fcd6383b4b97bad4dcb1e2e5d", - "GUID:eb3099ff524d60545a136315a154d67b", "GUID:5d38ea13ae8f69a4395d425d401a557a" ], "includePlatforms": [], diff --git a/Assets/Entities/RuntimeSet/newEnemyBaseRuntimeSet.asset b/Assets/Entities/RuntimeSet/newEnemyBaseRuntimeSet.asset new file mode 100644 index 0000000..20c85a0 --- /dev/null +++ b/Assets/Entities/RuntimeSet/newEnemyBaseRuntimeSet.asset @@ -0,0 +1,15 @@ +%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/ScriptableObjects/ScriptableObjects.asmdef.meta b/Assets/Entities/RuntimeSet/newEnemyBaseRuntimeSet.asset.meta similarity index 52% rename from Assets/ScriptableObjects/ScriptableObjects.asmdef.meta rename to Assets/Entities/RuntimeSet/newEnemyBaseRuntimeSet.asset.meta index 7c9b25d..9492ee3 100644 --- a/Assets/ScriptableObjects/ScriptableObjects.asmdef.meta +++ b/Assets/Entities/RuntimeSet/newEnemyBaseRuntimeSet.asset.meta @@ -1,7 +1,8 @@ fileFormatVersion: 2 -guid: eb3099ff524d60545a136315a154d67b -AssemblyDefinitionImporter: +guid: d681acab3b5d24f458e9c1c281d375cb +NativeFormatImporter: externalObjects: {} + mainObjectFileID: 11400000 userData: assetBundleName: assetBundleVariant: diff --git a/Assets/Entities/ScriptableObjects/SoEnemyBaseList.cs b/Assets/Entities/ScriptableObjects/SoEnemyBaseList.cs index 98bf112..37b7d30 100644 --- a/Assets/Entities/ScriptableObjects/SoEnemyBaseList.cs +++ b/Assets/Entities/ScriptableObjects/SoEnemyBaseList.cs @@ -1,8 +1,8 @@ using System.Collections.Generic; -using AsteroidGame.Entities.Enemies.Scripts; +using AsteroidGame.Entities; using UnityEngine; -namespace AsteroidGame.Entities +namespace AsteroidGame.ScriptableObjects { [CreateAssetMenu(fileName = "newEnemyList", menuName = "Enemies/EnemyList")] public class SoEnemyBaseList : ScriptableObject diff --git a/Assets/Entities/ScriptableObjects/SoEnemyBaseRuntimeSet.cs b/Assets/Entities/ScriptableObjects/SoEnemyBaseRuntimeSet.cs index 1598031..5c67086 100644 --- a/Assets/Entities/ScriptableObjects/SoEnemyBaseRuntimeSet.cs +++ b/Assets/Entities/ScriptableObjects/SoEnemyBaseRuntimeSet.cs @@ -1,8 +1,8 @@ -using AsteroidGame.Entities.Enemies.Scripts; -using AsteroidGame.ScriptableObjects; +using AsteroidGame.Entities; +using GameDev.CoreSystems; using UnityEngine; -namespace AsteroidGame.Entities +namespace AsteroidGame.ScriptableObjects { [CreateAssetMenu(fileName = "newEnemyBaseRuntimeSet", menuName = "RuntimeSet/EnemyBase")] public class SoEnemyBaseRuntimeSet : SRuntimeSet diff --git a/Assets/Entities/ScriptableObjects/SoEntityBaseRuntimeSet.cs b/Assets/Entities/ScriptableObjects/SoEntityBaseRuntimeSet.cs index 2a8532c..7c3ace8 100644 --- a/Assets/Entities/ScriptableObjects/SoEntityBaseRuntimeSet.cs +++ b/Assets/Entities/ScriptableObjects/SoEntityBaseRuntimeSet.cs @@ -1,7 +1,8 @@ -using AsteroidGame.ScriptableObjects; +using AsteroidGame.Entities; +using GameDev.CoreSystems; using UnityEngine; -namespace AsteroidGame.Entities +namespace AsteroidGame.ScriptableObjects { [CreateAssetMenu(fileName = "newEntityBaseRuntimeSet", menuName = "RuntimeSet/EntityBase")] public class SoEntityBaseRuntimeSet : SRuntimeSet diff --git a/Assets/Entities/ScriptableObjects/SoPowerBaseRuntimeSet.cs b/Assets/Entities/ScriptableObjects/SoPowerBaseRuntimeSet.cs index f416b5f..ebc04bd 100644 --- a/Assets/Entities/ScriptableObjects/SoPowerBaseRuntimeSet.cs +++ b/Assets/Entities/ScriptableObjects/SoPowerBaseRuntimeSet.cs @@ -1,7 +1,8 @@ -using AsteroidGame.ScriptableObjects; +using AsteroidGame.Entities; +using GameDev.CoreSystems; using UnityEngine; -namespace AsteroidGame.Entities +namespace AsteroidGame.ScriptableObjects { [CreateAssetMenu(fileName = "newPowerBaseRuntimeSet", menuName = "RuntimeSet/PowerBase")] public class SoPowerBaseRuntimeSet : SRuntimeSet diff --git a/Assets/Entities/ScriptableObjects/SoPowerConfig.cs b/Assets/Entities/ScriptableObjects/SoPowerConfig.cs index 3d2295d..03dacd5 100644 --- a/Assets/Entities/ScriptableObjects/SoPowerConfig.cs +++ b/Assets/Entities/ScriptableObjects/SoPowerConfig.cs @@ -1,6 +1,6 @@ using UnityEngine; -namespace AsteroidGame.Entities +namespace AsteroidGame.ScriptableObjects { [CreateAssetMenu(fileName = "newPowerConfiguration", menuName = "Configuration/Power")] public class SoPowerConfig : ScriptableObject diff --git a/Assets/Entities/ScriptableObjects/SoStructureBaseList.cs b/Assets/Entities/ScriptableObjects/SoStructureBaseList.cs index 564cc35..42ea48c 100644 --- a/Assets/Entities/ScriptableObjects/SoStructureBaseList.cs +++ b/Assets/Entities/ScriptableObjects/SoStructureBaseList.cs @@ -1,7 +1,8 @@ using System.Collections.Generic; +using AsteroidGame.Entities; using UnityEngine; -namespace AsteroidGame.Entities +namespace AsteroidGame.ScriptableObjects { [CreateAssetMenu(fileName = "newStructureList", menuName = "Structures/StructureList")] public class SoStructureBaseList : ScriptableObject diff --git a/Assets/Entities/ScriptableObjects/SoStructureBaseRuntimeSet.cs b/Assets/Entities/ScriptableObjects/SoStructureBaseRuntimeSet.cs index 06bbc75..9680470 100644 --- a/Assets/Entities/ScriptableObjects/SoStructureBaseRuntimeSet.cs +++ b/Assets/Entities/ScriptableObjects/SoStructureBaseRuntimeSet.cs @@ -1,7 +1,8 @@ -using AsteroidGame.ScriptableObjects; +using AsteroidGame.Entities; +using GameDev.CoreSystems; using UnityEngine; -namespace AsteroidGame.Entities +namespace AsteroidGame.ScriptableObjects { [CreateAssetMenu(fileName = "newStructureBaseRuntimeSet", menuName = "RuntimeSet/StructureBase")] public class SoStructureBaseRuntimeSet : SRuntimeSet diff --git a/Assets/Entities/ScriptableObjects/SoTargeterConfig.cs b/Assets/Entities/ScriptableObjects/SoTargeterConfig.cs index edc8e95..11d3bbb 100644 --- a/Assets/Entities/ScriptableObjects/SoTargeterConfig.cs +++ b/Assets/Entities/ScriptableObjects/SoTargeterConfig.cs @@ -1,13 +1,14 @@ +using GameDev.CoreSystems; using UnityEngine; -namespace AsteroidGame.Entities +namespace AsteroidGame.ScriptableObjects { [CreateAssetMenu(fileName = "newTargeterConfiguration", menuName = "Configuration/Targeter")] public class SoTargeterConfig : ScriptableObject { public float _range; public TargetStrategy _selectedTargetStrategy; - public SoEntityBaseRuntimeSet _activeEntities; + public SoTargetableRuntimeSet _activeEntities; public enum TargetStrategy { diff --git a/Assets/Entities/ScriptableObjects/SoWeaponConfig.cs b/Assets/Entities/ScriptableObjects/SoWeaponConfig.cs index 3cd4700..2b656d3 100644 --- a/Assets/Entities/ScriptableObjects/SoWeaponConfig.cs +++ b/Assets/Entities/ScriptableObjects/SoWeaponConfig.cs @@ -1,7 +1,7 @@ -using AsteroidGame.CoreSystems; +using GameDev.CoreSystems; using UnityEngine; -namespace AsteroidGame.Entities +namespace AsteroidGame.ScriptableObjects { public class SoWeaponConfig : ScriptableObject, IWeapon { diff --git a/Assets/Entities/Scripts/EntityBase.cs b/Assets/Entities/Scripts/EntityBase.cs index 3afcb4d..03e4780 100644 --- a/Assets/Entities/Scripts/EntityBase.cs +++ b/Assets/Entities/Scripts/EntityBase.cs @@ -1,18 +1,16 @@ -using AsteroidGame.Interfaces; +using AsteroidGame.ScriptableObjects; +using GameDev.CoreSystems; using UnityEngine; namespace AsteroidGame.Entities { - public class EntityBase : MonoBehaviour, IDamageable, ITargetable + public class EntityBase : MonoBehaviour { - [Header("Health")] - [SerializeField] protected int _health; - [SerializeField] protected int _maxHealth; - [SerializeField] protected bool _isInvulnerable; + [field: Header("Damageable")] + [field: SerializeField] public Damageable Damageable { get; set; } - [Header("TargetPositions")] - [SerializeField] private Transform _centerPosition; - [SerializeField] private Transform _basePosition; + [field: Header("Targetable")] + [field: SerializeField] public Targetable Targetable { get; set; } [Header("UI")] [SerializeField] protected string _uiFriendlyName; @@ -22,7 +20,6 @@ namespace AsteroidGame.Entities #region Props - public bool IsInvulnerable => _isInvulnerable; public string UiFriendlyName => _uiFriendlyName; #endregion @@ -30,6 +27,10 @@ namespace AsteroidGame.Entities protected virtual void OnEnable() { _entityBaseSet.Add(this); + + InitializeDamageable(); + + InitializeTargetable(); } protected virtual void OnDisable() @@ -37,40 +38,14 @@ namespace AsteroidGame.Entities _entityBaseSet.Remove(this); } - #region Methods - - public void ModifyHealth(int healthChange) + private void InitializeTargetable() { - if (!_isInvulnerable) - { - _health += healthChange; - } + Targetable = gameObject.AddComponent(); } - #endregion - - #region Setters - - public void SetHealth(int newHealth) => _health = newHealth; - - public void SetMaxHealth(int newHealth) => _maxHealth = newHealth; - - public void SetInvulnerable(bool newState) => _isInvulnerable = newState; - - #endregion - - #region Getters - - public Vector3 GetCenterPosition() => _centerPosition.transform.position; - - public Vector3 GetBasePosition() => _basePosition.transform.position; - - public int GetHealth() => _health; - - public int GetMaxHealth() => _maxHealth; - - public float GetHealthFactor() => (float)_health / (float)_maxHealth; - - #endregion + private void InitializeDamageable() + { + Damageable = gameObject.AddComponent(); + } } } \ No newline at end of file diff --git a/Assets/Entities/Scripts/PowerBase.cs b/Assets/Entities/Scripts/PowerBase.cs index fa579c5..8feaa01 100644 --- a/Assets/Entities/Scripts/PowerBase.cs +++ b/Assets/Entities/Scripts/PowerBase.cs @@ -1,5 +1,5 @@ -using System; -using AsteroidGame.Interfaces; +using AsteroidGame.ScriptableObjects; +using GameDev.CoreSystems; using UnityEngine; namespace AsteroidGame.Entities diff --git a/Assets/Entities/Scripts/Targeter.cs b/Assets/Entities/Scripts/Targeter.cs index ca0d3c5..9bdfbeb 100644 --- a/Assets/Entities/Scripts/Targeter.cs +++ b/Assets/Entities/Scripts/Targeter.cs @@ -1,3 +1,5 @@ +using AsteroidGame.ScriptableObjects; +using GameDev.CoreSystems; using UnityEngine; namespace AsteroidGame.Entities @@ -5,12 +7,12 @@ namespace AsteroidGame.Entities public class Targeter : MonoBehaviour { [SerializeField] private float _range; - [SerializeField] private EntityBase _targeterParent; - [SerializeField] private EntityBase _targetEntity; [SerializeField] private SoTargeterConfig.TargetStrategy _targetStrategy; - [SerializeField] private SoEntityBaseRuntimeSet _activeEntities; + [SerializeField] private SoTargetableRuntimeSet _activeEntities; + [SerializeField] private Targetable _targeterParent; + [SerializeField] private Targetable _targetEntity; - public void SetParent(EntityBase newParent) => _targeterParent = newParent; + public void SetParent(Transform newParent) => _targeterParent.transform.parent = newParent; public void SetConfig(SoTargeterConfig config) { @@ -19,7 +21,7 @@ namespace AsteroidGame.Entities _activeEntities = config._activeEntities; } - public EntityBase GetTarget() + public Targetable GetTarget() { return _targetEntity; } @@ -29,7 +31,7 @@ namespace AsteroidGame.Entities float currentBestValue = Mathf.Infinity; var targetFound = false; - foreach (EntityBase targetEntity in _activeEntities._list) + foreach (var targetEntity in _activeEntities._list) { float distanceToTarget = Vector3.Magnitude(targetEntity.GetCenterPosition() - _targeterParent.GetCenterPosition()); @@ -53,7 +55,8 @@ namespace AsteroidGame.Entities } case SoTargeterConfig.TargetStrategy.LowestHealth: { - float enemyHealth = targetEntity.GetHealth(); + float enemyHealth = targetEntity.transform.parent.GetComponent() + .GetCurrentHealth(); bool isLowestHealth = enemyHealth < currentBestValue; if (isLowestHealth) diff --git a/Assets/Entities/Structures/Scripts/Disabler.cs b/Assets/Entities/Structures/Scripts/Disabler.cs index 09e52c8..504c63c 100644 --- a/Assets/Entities/Structures/Scripts/Disabler.cs +++ b/Assets/Entities/Structures/Scripts/Disabler.cs @@ -1,3 +1,4 @@ +using AsteroidGame.ScriptableObjects; using UnityEngine; using UnityEngine.Serialization; diff --git a/Assets/Entities/Structures/Scripts/StructureBase.cs b/Assets/Entities/Structures/Scripts/StructureBase.cs index e1c69d5..17c2143 100644 --- a/Assets/Entities/Structures/Scripts/StructureBase.cs +++ b/Assets/Entities/Structures/Scripts/StructureBase.cs @@ -1,5 +1,5 @@ -using System; -using AsteroidGame.Interfaces; +using AsteroidGame.ScriptableObjects; +using GameDev.CoreSystems; using UnityEngine; namespace AsteroidGame.Entities diff --git a/Assets/Entities/Structures/Turret/Turret.cs b/Assets/Entities/Structures/Turret/Turret.cs index 574392c..b5e0f39 100644 --- a/Assets/Entities/Structures/Turret/Turret.cs +++ b/Assets/Entities/Structures/Turret/Turret.cs @@ -1,5 +1,5 @@ -using System; -using AsteroidGame.Entities.Enemies.Scripts; +using AsteroidGame.ScriptableObjects; +using GameDev.CoreSystems; using UnityEngine; namespace AsteroidGame.Entities @@ -22,7 +22,7 @@ namespace AsteroidGame.Entities [Header("Targeter")] [SerializeField] private SoTargeterConfig _targeterConfig; [SerializeField] private Targeter _targeter; - [SerializeField] private EntityBase _target; + [SerializeField] private Targetable _target; #region Publics @@ -43,17 +43,16 @@ namespace AsteroidGame.Entities private void InitializeTargeter() { _targeter = gameObject.AddComponent(); - _targeter.SetParent(this); + //_targeter.SetParent(this); _targeter.SetConfig(_targeterConfig); } private void Update() { - if (_targeter.FoundTarget()) - { - _target = _targeter.GetTarget(); - _turretHead.transform.LookAt(_target.GetCenterPosition()); - } + if (!_targeter.FoundTarget()) return; + + _target = _targeter.GetTarget(); + _turretHead.transform.LookAt(_target.GetCenterPosition()); } } } \ No newline at end of file diff --git a/Assets/Handlers/BuildingHandler.cs b/Assets/Handlers/BuildingHandler.cs index e93edca..bef7e1b 100644 --- a/Assets/Handlers/BuildingHandler.cs +++ b/Assets/Handlers/BuildingHandler.cs @@ -1,4 +1,5 @@ using AsteroidGame.Entities; +using AsteroidGame.ScriptableObjects; using UnityEngine; using UnityEngine.InputSystem; using UnityEngine.Serialization; diff --git a/Assets/Handlers/EnemyHandler.cs b/Assets/Handlers/EnemyHandler.cs index 5130fdf..2f77c78 100644 --- a/Assets/Handlers/EnemyHandler.cs +++ b/Assets/Handlers/EnemyHandler.cs @@ -1,4 +1,4 @@ -using AsteroidGame.Entities; +using AsteroidGame.ScriptableObjects; using UnityEngine; namespace AsteroidGame.Handlers diff --git a/Assets/Handlers/PowerHandler.cs b/Assets/Handlers/PowerHandler.cs index 1e7bbcb..5fcf96a 100644 --- a/Assets/Handlers/PowerHandler.cs +++ b/Assets/Handlers/PowerHandler.cs @@ -1,5 +1,5 @@ using System; -using AsteroidGame.Entities; +using AsteroidGame.ScriptableObjects; using UnityEngine; namespace AsteroidGame.Handlers diff --git a/Assets/ScriptableObjects.meta b/Assets/ScriptableObjects.meta deleted file mode 100644 index e8e6906..0000000 --- a/Assets/ScriptableObjects.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 4b8bc87700fc5a44b88c1b13c4bdb3cf -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/ScriptableObjects/SRuntimeSet.cs b/Assets/ScriptableObjects/SRuntimeSet.cs deleted file mode 100644 index 9a6cb87..0000000 --- a/Assets/ScriptableObjects/SRuntimeSet.cs +++ /dev/null @@ -1,20 +0,0 @@ -using System.Collections.Generic; -using UnityEngine; - -namespace AsteroidGame.ScriptableObjects -{ - public abstract class SRuntimeSet : ScriptableObject - { - public List _list; - - public void Add(T component) - { - _list.Add(component); - } - - public void Remove(T component) - { - _list.Remove(component); - } - } -} \ No newline at end of file diff --git a/Assets/ScriptableObjects/SRuntimeSet.cs.meta b/Assets/ScriptableObjects/SRuntimeSet.cs.meta deleted file mode 100644 index 483e99a..0000000 --- a/Assets/ScriptableObjects/SRuntimeSet.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 1e81b384c7f010b4fa3c1b8f293a4c42 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/ScriptableObjects/ScriptableObjects.asmdef b/Assets/ScriptableObjects/ScriptableObjects.asmdef deleted file mode 100644 index 35574c9..0000000 --- a/Assets/ScriptableObjects/ScriptableObjects.asmdef +++ /dev/null @@ -1,14 +0,0 @@ -{ - "name": "ScriptableObjects", - "rootNamespace": "AsteroidGame", - "references": [], - "includePlatforms": [], - "excludePlatforms": [], - "allowUnsafeCode": false, - "overrideReferences": false, - "precompiledReferences": [], - "autoReferenced": true, - "defineConstraints": [], - "versionDefines": [], - "noEngineReferences": false -} \ No newline at end of file diff --git a/Assets/Scripts/CameraController.cs b/Assets/Scripts/CameraController.cs index f87b33d..0fb4396 100644 --- a/Assets/Scripts/CameraController.cs +++ b/Assets/Scripts/CameraController.cs @@ -1,4 +1,3 @@ -using InputSystem; using UnityEngine; using UnityEngine.InputSystem; diff --git a/Assets/UI/BuildMenuUiController.cs b/Assets/UI/BuildMenuUiController.cs index 6c1a1cc..c9fbdd1 100644 --- a/Assets/UI/BuildMenuUiController.cs +++ b/Assets/UI/BuildMenuUiController.cs @@ -3,6 +3,7 @@ using AsteroidGame.Entities; using UnityEngine; using UnityEngine.UIElements; using AsteroidGame.Handlers; +using AsteroidGame.ScriptableObjects; using UnityEngine.Serialization; namespace AsteroidGame.UI diff --git a/ProjectSettings/ProjectSettings.asset b/ProjectSettings/ProjectSettings.asset index 2c71d59..f49a8f9 100644 --- a/ProjectSettings/ProjectSettings.asset +++ b/ProjectSettings/ProjectSettings.asset @@ -136,8 +136,7 @@ PlayerSettings: vulkanEnableCommandBufferRecycling: 1 loadStoreDebugModeEnabled: 0 bundleVersion: 0.1 - preloadedAssets: - - {fileID: 11400000, guid: 2f27ffbbbd54d9c4b9435071982af520, type: 2} + preloadedAssets: [] metroInputSource: 0 wsaTransparentSwapchain: 0 m_HolographicPauseOnTrackingLoss: 1 From af8e183f93d47f49a384796191194719f0018652 Mon Sep 17 00:00:00 2001 From: Stedd Date: Sun, 8 Oct 2023 14:57:57 +0200 Subject: [PATCH 09/14] gitignore --- .gitignore | 1 + .idea/.idea.AsteroidGame/.idea/.gitignore | 13 ------------- .idea/.idea.AsteroidGame/.idea/indexLayout.xml | 8 -------- 3 files changed, 1 insertion(+), 21 deletions(-) delete mode 100644 .idea/.idea.AsteroidGame/.idea/.gitignore delete mode 100644 .idea/.idea.AsteroidGame/.idea/indexLayout.xml diff --git a/.gitignore b/.gitignore index a92b102..0919f96 100644 --- a/.gitignore +++ b/.gitignore @@ -74,3 +74,4 @@ crashlytics-build.properties game_notes/.obsidian .idea/.idea.AsteroidGame/.idea/dictionaries +.idea diff --git a/.idea/.idea.AsteroidGame/.idea/.gitignore b/.idea/.idea.AsteroidGame/.idea/.gitignore deleted file mode 100644 index a7928db..0000000 --- a/.idea/.idea.AsteroidGame/.idea/.gitignore +++ /dev/null @@ -1,13 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml -# Rider ignored files -/projectSettingsUpdater.xml -/modules.xml -/.idea.AsteroidGame.iml -/contentModel.xml -# Editor-based HTTP Client requests -/httpRequests/ -# Datasource local storage ignored files -/dataSources/ -/dataSources.local.xml diff --git a/.idea/.idea.AsteroidGame/.idea/indexLayout.xml b/.idea/.idea.AsteroidGame/.idea/indexLayout.xml deleted file mode 100644 index 7b08163..0000000 --- a/.idea/.idea.AsteroidGame/.idea/indexLayout.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file From 33c644b2d8fa94b0d1653d9089b83011eedc0e63 Mon Sep 17 00:00:00 2001 From: Stedd Date: Sun, 8 Oct 2023 16:20:52 +0200 Subject: [PATCH 10/14] Targeting working again --- Assets/CoreSystems | 2 +- Assets/Entities/Enemies/Enemy.prefab | 169 ++++++++- .../Enemies/EnemyTargeterConfiguration.asset | 5 +- Assets/Entities/Enemies/Scripts/EnemyBase.cs | 31 +- .../RuntimeSet/newEnemyBaseRuntimeSet.asset | 15 - .../newEnemyBaseRuntimeSet.asset.meta | 8 - .../ScriptableObjects/SoTargeterConfig.cs | 5 +- Assets/Entities/Scripts/EntityBase.cs | 24 +- Assets/Entities/Scripts/Targeter.cs | 40 +- .../Structures/PowerPlant/PowerPlant.prefab | 269 +++++++++++++- Assets/Entities/Structures/Turret/Turret.cs | 18 +- .../Entities/Structures/Turret/Turret.prefab | 342 ++++++++++++++++-- .../TurretStandardTargeterConfiguration.asset | 5 +- Assets/Scenes/Playground 1.unity | 161 ++++++--- 14 files changed, 905 insertions(+), 189 deletions(-) delete mode 100644 Assets/Entities/RuntimeSet/newEnemyBaseRuntimeSet.asset delete mode 100644 Assets/Entities/RuntimeSet/newEnemyBaseRuntimeSet.asset.meta 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} From 6956bf0c7ff8c8b0902b073790e9078aa0c36610 Mon Sep 17 00:00:00 2001 From: Stedd Date: Sun, 8 Oct 2023 16:23:57 +0200 Subject: [PATCH 11/14] Added some runtime sets --- .../RuntimeSet/ActiveDamageableEntities.asset | 15 +++++++++++++++ .../ActiveDamageableEntities.asset.meta | 8 ++++++++ .../RuntimeSet/ActiveTargetableBuildings.asset | 15 +++++++++++++++ .../ActiveTargetableBuildings.asset.meta | 8 ++++++++ .../RuntimeSet/ActiveTargetableEnemies.asset | 15 +++++++++++++++ .../RuntimeSet/ActiveTargetableEnemies.asset.meta | 8 ++++++++ 6 files changed, 69 insertions(+) create mode 100644 Assets/Entities/RuntimeSet/ActiveDamageableEntities.asset create mode 100644 Assets/Entities/RuntimeSet/ActiveDamageableEntities.asset.meta create mode 100644 Assets/Entities/RuntimeSet/ActiveTargetableBuildings.asset create mode 100644 Assets/Entities/RuntimeSet/ActiveTargetableBuildings.asset.meta create mode 100644 Assets/Entities/RuntimeSet/ActiveTargetableEnemies.asset create mode 100644 Assets/Entities/RuntimeSet/ActiveTargetableEnemies.asset.meta diff --git a/Assets/Entities/RuntimeSet/ActiveDamageableEntities.asset b/Assets/Entities/RuntimeSet/ActiveDamageableEntities.asset new file mode 100644 index 0000000..0d7e803 --- /dev/null +++ b/Assets/Entities/RuntimeSet/ActiveDamageableEntities.asset @@ -0,0 +1,15 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9d4c8ce856b06db4c9a892b981e516e7, type: 3} + m_Name: ActiveDamageableEntities + m_EditorClassIdentifier: + _list: [] diff --git a/Assets/Entities/RuntimeSet/ActiveDamageableEntities.asset.meta b/Assets/Entities/RuntimeSet/ActiveDamageableEntities.asset.meta new file mode 100644 index 0000000..9d3f389 --- /dev/null +++ b/Assets/Entities/RuntimeSet/ActiveDamageableEntities.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 8332d81762d09114eac45ca6f3b2c4af +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Entities/RuntimeSet/ActiveTargetableBuildings.asset b/Assets/Entities/RuntimeSet/ActiveTargetableBuildings.asset new file mode 100644 index 0000000..45c4446 --- /dev/null +++ b/Assets/Entities/RuntimeSet/ActiveTargetableBuildings.asset @@ -0,0 +1,15 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7d76ef79c960c1845a914468e30d036b, type: 3} + m_Name: ActiveTargetableBuildings + m_EditorClassIdentifier: + _list: [] diff --git a/Assets/Entities/RuntimeSet/ActiveTargetableBuildings.asset.meta b/Assets/Entities/RuntimeSet/ActiveTargetableBuildings.asset.meta new file mode 100644 index 0000000..a1284c1 --- /dev/null +++ b/Assets/Entities/RuntimeSet/ActiveTargetableBuildings.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: dda2fd5e970bbd642a5ceead1e82783c +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Entities/RuntimeSet/ActiveTargetableEnemies.asset b/Assets/Entities/RuntimeSet/ActiveTargetableEnemies.asset new file mode 100644 index 0000000..6c761ad --- /dev/null +++ b/Assets/Entities/RuntimeSet/ActiveTargetableEnemies.asset @@ -0,0 +1,15 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7d76ef79c960c1845a914468e30d036b, type: 3} + m_Name: ActiveTargetableEnemies + m_EditorClassIdentifier: + _list: [] diff --git a/Assets/Entities/RuntimeSet/ActiveTargetableEnemies.asset.meta b/Assets/Entities/RuntimeSet/ActiveTargetableEnemies.asset.meta new file mode 100644 index 0000000..bc95ae3 --- /dev/null +++ b/Assets/Entities/RuntimeSet/ActiveTargetableEnemies.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 85e03587d1a940f438ceac70a3d544d5 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: From cd62cd6aa251b9bd10e5ab9f56f5a9a2b5b8df9a Mon Sep 17 00:00:00 2001 From: Stedd Date: Sun, 8 Oct 2023 16:42:15 +0200 Subject: [PATCH 12/14] Updated NavMesh --- Assets/Scenes/Playground 1.unity | 172 ++++++++++++++++-- .../Playground 1/NavMesh-Environment.asset | Bin 0 -> 10208 bytes .../NavMesh-Environment.asset.meta | 8 + ...NavMesh.asset => NavMesh-Navigation.asset} | Bin 9668 -> 9680 bytes ...set.meta => NavMesh-Navigation.asset.meta} | 0 5 files changed, 160 insertions(+), 20 deletions(-) create mode 100644 Assets/Scenes/Playground 1/NavMesh-Environment.asset create mode 100644 Assets/Scenes/Playground 1/NavMesh-Environment.asset.meta rename Assets/Scenes/Playground 1/{NavMesh.asset => NavMesh-Navigation.asset} (84%) rename Assets/Scenes/Playground 1/{NavMesh.asset.meta => NavMesh-Navigation.asset.meta} (100%) diff --git a/Assets/Scenes/Playground 1.unity b/Assets/Scenes/Playground 1.unity index c83acd9..b3e149a 100644 --- a/Assets/Scenes/Playground 1.unity +++ b/Assets/Scenes/Playground 1.unity @@ -122,7 +122,7 @@ NavMeshSettings: preserveTilesOutsideBounds: 0 debug: m_Flags: 0 - m_NavMeshData: {fileID: 23800000, guid: b015bab8bed002c438c2a5abb0deec18, type: 2} + m_NavMeshData: {fileID: 0} --- !u!1 &38176945 GameObject: m_ObjectHideFlags: 0 @@ -260,7 +260,7 @@ Transform: 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_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_ConstrainProportionsScale: 0 m_Children: @@ -298,12 +298,13 @@ GameObject: - component: {fileID: 1089364669} - component: {fileID: 1089364668} - component: {fileID: 1089364667} + - component: {fileID: 1089364670} m_Layer: 0 m_Name: Cube m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 - m_StaticEditorFlags: 2147483647 + m_StaticEditorFlags: 2147483639 m_IsActive: 1 --- !u!4 &1089364666 Transform: @@ -391,6 +392,25 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1089364665} m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!114 &1089364670 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1089364665} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1e3fdca004f2d45fe8abbed571a8abd5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_OverrideArea: 0 + m_Area: 0 + m_OverrideGenerateLinks: 1 + m_GenerateLinks: 1 + m_IgnoreFromBuild: 0 + m_ApplyToChildren: 1 + m_AffectedAgents: ffffffff --- !u!4 &1158682046 stripped Transform: m_CorrespondingSourceObject: {fileID: 664620742648054780, guid: 3a89f87af6ee84a459d98a4c296dd1be, type: 3} @@ -473,12 +493,13 @@ GameObject: - component: {fileID: 1402420035} - component: {fileID: 1402420034} - component: {fileID: 1402420033} + - component: {fileID: 1402420036} m_Layer: 0 m_Name: Plane m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 - m_StaticEditorFlags: 2147483647 + m_StaticEditorFlags: 2147483639 m_IsActive: 1 --- !u!4 &1402420032 Transform: @@ -567,6 +588,25 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1402420031} m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0} +--- !u!114 &1402420036 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1402420031} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1e3fdca004f2d45fe8abbed571a8abd5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_OverrideArea: 0 + m_Area: 0 + m_OverrideGenerateLinks: 1 + m_GenerateLinks: 1 + m_IgnoreFromBuild: 0 + m_ApplyToChildren: 1 + m_AffectedAgents: ffffffff --- !u!1001 &1421503443 PrefabInstance: m_ObjectHideFlags: 0 @@ -581,7 +621,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.x - value: 9.57 + value: 7.64 objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.y @@ -589,7 +629,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.z - value: 5.23 + value: 7.63 objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalRotation.w @@ -625,7 +665,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 5599539567497807159, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_IsActive - value: 0 + value: 1 objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: [] @@ -659,7 +699,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.x - value: 3.91 + value: 0.3400004 objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.y @@ -667,7 +707,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.z - value: 3.71 + value: 9.68 objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalRotation.w @@ -703,7 +743,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 5599539567497807159, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_IsActive - value: 0 + value: 1 objectReference: {fileID: 0} m_RemovedComponents: [] m_RemovedGameObjects: [] @@ -724,12 +764,14 @@ GameObject: serializedVersion: 6 m_Component: - component: {fileID: 1702078697} + - component: {fileID: 1702078698} + - component: {fileID: 1702078699} m_Layer: 0 m_Name: Environment m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 - m_StaticEditorFlags: 0 + m_StaticEditorFlags: 2147483639 m_IsActive: 1 --- !u!4 &1702078697 Transform: @@ -750,6 +792,56 @@ Transform: - {fileID: 1779908011} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &1702078698 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1702078696} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1e3fdca004f2d45fe8abbed571a8abd5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_OverrideArea: 0 + m_Area: 0 + m_OverrideGenerateLinks: 1 + m_GenerateLinks: 1 + m_IgnoreFromBuild: 0 + m_ApplyToChildren: 1 + m_AffectedAgents: ffffffff +--- !u!114 &1702078699 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1702078696} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 7a5ac11cc976e418e8d13136b07e1f52, type: 3} + m_Name: + m_EditorClassIdentifier: + m_AgentTypeID: 0 + m_CollectObjects: 3 + m_Size: {x: 10, y: 10, z: 10} + m_Center: {x: 0, y: 2, z: 0} + m_LayerMask: + serializedVersion: 2 + m_Bits: 4294967295 + m_UseGeometry: 0 + m_DefaultArea: 0 + m_GenerateLinks: 0 + m_IgnoreNavMeshAgent: 1 + m_IgnoreNavMeshObstacle: 1 + m_OverrideTileSize: 0 + m_TileSize: 256 + m_OverrideVoxelSize: 0 + m_VoxelSize: 0.16666667 + m_MinRegionArea: 2 + m_NavMeshData: {fileID: 23800000, guid: bc0ea04d2588f6b4086c3f0383e36c02, type: 2} + m_BuildHeightMesh: 0 --- !u!1001 &1715656625 PrefabInstance: m_ObjectHideFlags: 0 @@ -760,7 +852,7 @@ PrefabInstance: m_Modifications: - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.x - value: -1.8 + value: -18.15 objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.y @@ -768,7 +860,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalPosition.z - value: 2.38 + value: 9.04 objectReference: {fileID: 0} - target: {fileID: 2692714622321691895, guid: 4af571b983b23f94f8d5ca4dbda27de5, type: 3} propertyPath: m_LocalRotation.w @@ -824,12 +916,13 @@ GameObject: - component: {fileID: 1779908014} - component: {fileID: 1779908013} - component: {fileID: 1779908012} + - component: {fileID: 1779908015} m_Layer: 0 m_Name: Cube (2) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 - m_StaticEditorFlags: 2147483647 + m_StaticEditorFlags: 2147483639 m_IsActive: 1 --- !u!4 &1779908011 Transform: @@ -917,6 +1010,25 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1779908010} m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!114 &1779908015 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1779908010} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1e3fdca004f2d45fe8abbed571a8abd5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_OverrideArea: 0 + m_Area: 0 + m_OverrideGenerateLinks: 1 + m_GenerateLinks: 1 + m_IgnoreFromBuild: 0 + m_ApplyToChildren: 1 + m_AffectedAgents: ffffffff --- !u!1 &1813727659 GameObject: m_ObjectHideFlags: 0 @@ -929,12 +1041,13 @@ GameObject: - component: {fileID: 1813727663} - component: {fileID: 1813727662} - component: {fileID: 1813727661} + - component: {fileID: 1813727664} m_Layer: 0 m_Name: Cube (1) m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 - m_StaticEditorFlags: 2147483647 + m_StaticEditorFlags: 2147483639 m_IsActive: 1 --- !u!4 &1813727660 Transform: @@ -1022,6 +1135,25 @@ MeshFilter: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1813727659} m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} +--- !u!114 &1813727664 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1813727659} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 1e3fdca004f2d45fe8abbed571a8abd5, type: 3} + m_Name: + m_EditorClassIdentifier: + m_OverrideArea: 0 + m_Area: 0 + m_OverrideGenerateLinks: 1 + m_GenerateLinks: 1 + m_IgnoreFromBuild: 0 + m_ApplyToChildren: 1 + m_AffectedAgents: ffffffff --- !u!1 &2047541735 GameObject: m_ObjectHideFlags: 0 @@ -1254,15 +1386,15 @@ PrefabInstance: m_Modifications: - target: {fileID: 8324879816836607384, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} propertyPath: m_LocalPosition.x - value: 5.89 + value: -3.33 objectReference: {fileID: 0} - target: {fileID: 8324879816836607384, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} propertyPath: m_LocalPosition.y - value: -0.98203504 + value: 0 objectReference: {fileID: 0} - target: {fileID: 8324879816836607384, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} propertyPath: m_LocalPosition.z - value: -9.56 + value: 3.21 objectReference: {fileID: 0} - target: {fileID: 8324879816836607384, guid: 534f8d15e0c83c646887bebfda2bdfd6, type: 3} propertyPath: m_LocalRotation.w @@ -1567,7 +1699,7 @@ PrefabInstance: m_Modifications: - target: {fileID: 493861824998956378, guid: 57a75520298c47140a928041b05d7f3c, type: 3} propertyPath: m_LocalPosition.x - value: -0.07734442 + value: 2.05 objectReference: {fileID: 0} - target: {fileID: 493861824998956378, guid: 57a75520298c47140a928041b05d7f3c, type: 3} propertyPath: m_LocalPosition.y @@ -1575,7 +1707,7 @@ PrefabInstance: objectReference: {fileID: 0} - target: {fileID: 493861824998956378, guid: 57a75520298c47140a928041b05d7f3c, type: 3} propertyPath: m_LocalPosition.z - value: -5.2709384 + value: 2.96 objectReference: {fileID: 0} - target: {fileID: 493861824998956378, guid: 57a75520298c47140a928041b05d7f3c, type: 3} propertyPath: m_LocalRotation.w diff --git a/Assets/Scenes/Playground 1/NavMesh-Environment.asset b/Assets/Scenes/Playground 1/NavMesh-Environment.asset new file mode 100644 index 0000000000000000000000000000000000000000..88a65b5be937a88e5a4be4d8bcb6975afa72f134 GIT binary patch literal 10208 zcmb7}dvIJ;9mmfmyXk|{CVfJoB~*FXn%dnIC=}_YO|dPsl(q>VkFZT{)1}$nxVtGW zC|p261VwoWO4U{w(F7R>#~EM-C*U7A%8bRK{|KXuGj$k5t&F^U#qan0&TseLy}4yL zGxy%#`F+m${m%KF=O)I~()^la7W`P`vtF0)0{1m0vm%pO-nl%zVprPyZ(?F1kwA&R zvDC!GPmaC(-uO%JUeo&G+TZrS*|P8ev@bRr(?pDPo-sbEOxTQX-}aR-3G>5d<3E)! zei9m*fff~zUe;Kk<@rVy!Al|gU65pJ& zpR&3d1`XS9vD~i}XtX~i!V~7sCgYc#eYW9v?VlE@A8!Bj2v3*|=-(JR&G?=`?$e7T zv@elHeE5(vhKX#DH{1A~0vn9YiR3m?TEE#`j=DGCVY_EWc)}b(-Hp)G{w#dke7sz0 z^xq17+qhEt3j1#(uVc%vM4tX>e>S;aFOV=v>wh;?^ z`)@G^(Le1!7fP5X&D|K=3iRyTf(TF9`Zqz(_?;BP?{NI&7=Ewg3uE|0j-L|4zw7v^ zG5m4I7sc?OI=(oDKjZjmG5iI`+hh1|96vpVzv4L8c{u(OU+e)kz8{O>Z#e$(82+~7 zXTO7x&A(Zhx14i`60~x4UR7b zn2hgmocr8l{CdYf8N>HD-Vww1I=(!H-|6_LV)y~aS4_gWe~&tzo`fF)f5!35B%JkM zaJ(~yzw9{o`o{RM{_h<>XA;iy=}pJaorJUg`;OzBi`buoL#qQ1ikMa8K3*G=83w`P^Hj_j|i!MVR(K<)>5cz<6_o(=Nw{(2#K9bqd{cSV!oTEX`{q-HN zUX;m#T@>LdJ3j}(Ie*v0@I8)aV|dB&t{7f%d~FQB(eZUL{AS0yWB9F(uaDt(IDT;q zzsvE@#PE9@-w?y^bDZaBIQ|mf2OQrN!yk71k{JG|WvnFq!`!IKCyqlV(5e zH;;q!ZgE+Jr$YC$t>A6O$6Hduq(b+z%b^bQq(PhgpTR!Y&o(^a_R0Eq4xH;_JGqaS zOO5xB9niOqE2Yiw`sg9AW6NKHZLSa6?KOip9@QcZ%MR&2=z5S z15me`c1OiOxyHwf;ToS^5ib6xHjDqk2oL+`J@t70^D$igBTfzVWqjJ;pYwAMxsR7i zjpH)}{qe@9K(3YXW&BQtZH`Yn@AHVVJ_{%-K9i=2S`maKLJpUsxT>bBj@F{kG%fLTp>W!A;NlJ9u&v|w`3O(i@w*CTxPHE1c{|>c zxIYKS?-r=T@e{7&cWVsS`1uho{&UX%Z4n;!e|rp9|98Z2_5Z~PPul(s!av9FOP1s1 z68HCeu>TH&V~a6&;t9t$Y42}0gD1f5is83A{^bZ~E#u!0&i(Cf<^qZLfA0UfzkS8B z_F4&!Z*Y9>iQyWbdtv@T-*1p7_RO6c7!MF z{_>1#-=mh-Ut4l}H+z-c-MMPcY~5NdU$}lCUoDl_@2h&nO1@OQ$Q1f6&JTGTyCH1N zRd++M<+hf+UAdhbi8rbettNG$!rQWx& zIydMQt2_1&GdNb>mK(^AR7Bq3+`dgC zh2gILa;Z}3&Pz;9Az$3)4Pp?w%3jVCa>bF{&^m8uXnX!9&-AMxdPd#qt19ed7sNh8 zkNW#Im3CfHD(~^i6*FA+DqeZ7XGiO@k!mGB;H@o<6bEWUXZzai?Hn1b#bJOsPKcqL zjfz+=LBcDb-jeG|A4DuP| zGst%$--&!D@|~TgDt4^#d}UjynyY#PXi2?)m~-`vn{vHgxti|>*=P2fn^1gXalqya zeXg&CzI7NwuMB3Vd= znk&=Z`XXEE=0>59RXAy&lX110?tIznuVSpB-d-9h_v>h&CVNYABiPnbCGU!L1*RVt zv^^-s&*ooh0x5VH1=Jr!oP)w{U39E3?#-7=#R8&c_q$iXdb_rC(+%$@Otj5La6i<> z@NDGM+jHdkr$3nZ1;5Ceqq(=T{2DW!O_;;bZCoXJzQZ!PmXR+{KWuDBO}_E1fS3B# zJUz2ill{ve>!fVka5CfedazzBAWfTS8oXuub^m;OPU+ki{*-?9K^WD3vY7Uhc3bdB zE2PiNGig83*REhcg=*i9WwoDUqfK2Z8*?}!OP^VL<0{H2NbD<9(r@w^Unc6M@y(a5&#|i~@e+JX$tGJPVdmAo^bw3RZ6wVB8|Qz!xsfz!n-_a^ z{@)t!uw4CXeeH|t`Tf=IL(eVC{%G;g?4@(h{Qe{B9-C4hCmkb}Ys1s-zWA7hc$VPN z`A8iT$BE-*!t-&>6Qegg@5Y9I!V1dB%2?{$q@B8aEL*R8ESoUHwr+3F(SY0&u*v!G z`ncGv%e_56&tBPc#OlXJM^T1p<0{Hm_PjGrxwofhO zcP+*&NSV{jsVI4ZU9rYYgPg#_SsUD6sA-(vvODNZZZ$1_cz&l~AJfGq+SGMRnYN}{ zPZs0V6yYh!6Ukv}+r&&%Pw3QZkJaS-By%#>(J2D`dKs<1 z82#gTNt%MzO49Z3O|`yWT%?QL{?7FYX}CCSLkn^fYb``aeA$%-^Owume+dvZ7eUV?jU}%9x#8zMy&Z3sf8gGRNtwZm(Y67@p^xRl=Li#nztg6~YhH{AphOb=dj` zP+RTOKS#sBv%w79hkVAikNFOl=iK4n#iyG+;Ah%-&OGh2|9?k+hFzZhV}FBr`mg6x z*eQ%D<4Kvlw*8#5%u9QhSpW5WyZzlO<=MU^cFjq9#Q%G+zZolOx^2%gTYocFKHGZ| z+ADw8nSuXJ9)xz8U2$yBG8Ye?+me^|a6K`v@zVBdJh)Ew;mNrAvd*9gq(iT^EzCT2 z`gdNv?TH!3l5>x~h5-%Uue2y*%k?7bQ}zg1S8~5%IiAAfo`vuyBgCX98**NlxWL>-=E^Rg_b=bp+u_jp$7IXN~uJu77l>Sdig z74pcRqb&W_w5Pudm~S!dtZLI)7!Pu>$Nh=+rQejCzxj}(zZq9Gp)UP zewtka7X-MBrd8Blw_j4Y;CGu|D~|O(`Iqd%15Z1EHEgoRtXzu^WldQMSnn5E1t;N$ bq>k&Jvh_PVk8~w|`TiPy!&UsCeT)7Nn}Hvj literal 0 HcmV?d00001 diff --git a/Assets/Scenes/Playground 1/NavMesh-Environment.asset.meta b/Assets/Scenes/Playground 1/NavMesh-Environment.asset.meta new file mode 100644 index 0000000..74f2c48 --- /dev/null +++ b/Assets/Scenes/Playground 1/NavMesh-Environment.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: bc0ea04d2588f6b4086c3f0383e36c02 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 23800000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/Playground 1/NavMesh.asset b/Assets/Scenes/Playground 1/NavMesh-Navigation.asset similarity index 84% rename from Assets/Scenes/Playground 1/NavMesh.asset rename to Assets/Scenes/Playground 1/NavMesh-Navigation.asset index 20b87cb3c0a7e570451f8707e04137697aea6ac1..5d9374d42154510dd63c346d61908ea8f8860438 100644 GIT binary patch delta 77 zcmX@&eZhNzywn8-Fc5{(3=BpFMn-zZdWHrYEvrSD7z8FC6g8iGL6lou2&m96vCKEM WI71gmXQn5XWaj5FY-Sca$PWO*PZPob delta 65 zcmccMeZ+f$ywni}Fc7@}p&1yA42%r*jP(o+H(FMUGJWBnd{ESU@&!?DZg!vwzr-@% M)Z&cI{9*_B0RRmUVE_OC diff --git a/Assets/Scenes/Playground 1/NavMesh.asset.meta b/Assets/Scenes/Playground 1/NavMesh-Navigation.asset.meta similarity index 100% rename from Assets/Scenes/Playground 1/NavMesh.asset.meta rename to Assets/Scenes/Playground 1/NavMesh-Navigation.asset.meta From b043440827590aaae78f8e9a2499f138c07583f6 Mon Sep 17 00:00:00 2001 From: Stedd Date: Sun, 8 Oct 2023 16:50:59 +0200 Subject: [PATCH 13/14] Reorganizing and renaming --- Assets/Entities/Enemies/Drone.meta | 8 --- Assets/Entities/Enemies/Scripts.meta | 8 --- .../Entities/Enemies/Scripts/EnemyHealth.cs | 63 ------------------- .../Enemies/Scripts/EnemyHealth.cs.meta | 11 ---- .../Entities/Enemies/Scripts/EnemyMovement.cs | 61 ------------------ .../Enemies/Scripts/EnemyMovement.cs.meta | 11 ---- .../SoEnemyBaseRuntimeSet.cs | 2 +- .../SoEntityBaseRuntimeSet.cs | 2 +- .../SoPowerBaseRuntimeSet.cs | 2 +- .../SoStructureBaseRuntimeSet.cs | 2 +- .../{Enemies => }/Scripts/EnemyBase.cs | 0 .../{Enemies => }/Scripts/EnemyBase.cs.meta | 0 12 files changed, 4 insertions(+), 166 deletions(-) delete mode 100644 Assets/Entities/Enemies/Drone.meta delete mode 100644 Assets/Entities/Enemies/Scripts.meta delete mode 100644 Assets/Entities/Enemies/Scripts/EnemyHealth.cs delete mode 100644 Assets/Entities/Enemies/Scripts/EnemyHealth.cs.meta delete mode 100644 Assets/Entities/Enemies/Scripts/EnemyMovement.cs delete mode 100644 Assets/Entities/Enemies/Scripts/EnemyMovement.cs.meta rename Assets/Entities/{Enemies => }/Scripts/EnemyBase.cs (100%) rename Assets/Entities/{Enemies => }/Scripts/EnemyBase.cs.meta (100%) diff --git a/Assets/Entities/Enemies/Drone.meta b/Assets/Entities/Enemies/Drone.meta deleted file mode 100644 index 17a280a..0000000 --- a/Assets/Entities/Enemies/Drone.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 22c766fdadc55c449b5311282a681a64 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Entities/Enemies/Scripts.meta b/Assets/Entities/Enemies/Scripts.meta deleted file mode 100644 index e6385d4..0000000 --- a/Assets/Entities/Enemies/Scripts.meta +++ /dev/null @@ -1,8 +0,0 @@ -fileFormatVersion: 2 -guid: 7e3f0ef7b0919344e82d2052fbe05143 -folderAsset: yes -DefaultImporter: - externalObjects: {} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Entities/Enemies/Scripts/EnemyHealth.cs b/Assets/Entities/Enemies/Scripts/EnemyHealth.cs deleted file mode 100644 index 324e0e2..0000000 --- a/Assets/Entities/Enemies/Scripts/EnemyHealth.cs +++ /dev/null @@ -1,63 +0,0 @@ -using UnityEngine; - -namespace AsteroidGame.Entities.Enemies.Scripts -{ - public class EnemyHealth : MonoBehaviour - { - [Header("Assigned on start")] - // [SerializeField] EnemyHandler enemyHandler; - // [SerializeField] ScoreHandler scoreHandler; - - [Header("Parameters")] - [SerializeField] int _maxHealth = 5; - [SerializeField] int _difficultyRamp = 1; - - [SerializeField] int _wealthValue = 5; - - [Header("Stats")] - [SerializeField] int _currentHealth; - - #region Public - public int Health { get=> _currentHealth;} - #endregion - - void OnEnable() - { - // enemyHandler = FindObjectOfType(); - // scoreHandler = FindObjectOfType(); - _currentHealth = _maxHealth; - } - - private void OnParticleCollision(GameObject damager) - { - ProcessHitFrom(damager); - } - - private void ProcessHitFrom(GameObject damager) - { - // SpawnFX(damageVFX); - - // Debug.Log(damager.GetComponentInParent().GetDamage()); - _currentHealth -= damager.GetComponentInParent().Damage; - - //UpdateHealthText(health); - - if(_currentHealth <= 0) - { - ProcessDeathFrom(damager); - } - } - - private void ProcessDeathFrom(GameObject damager) - { - //damager.GetComponentInParent().UpdateScore(1f); - - // SpawnFX(deathFX); - // scoreHandler.ModifyWealth(wealthValue); - // enemyHandler.RemoveEnemy(gameObject); - // Destroy(gameObject); - gameObject.SetActive(false); - _maxHealth += _difficultyRamp; - } - } -} diff --git a/Assets/Entities/Enemies/Scripts/EnemyHealth.cs.meta b/Assets/Entities/Enemies/Scripts/EnemyHealth.cs.meta deleted file mode 100644 index a893b1c..0000000 --- a/Assets/Entities/Enemies/Scripts/EnemyHealth.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: ac0f42db9d6c21540a5ef3107e36946a -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Entities/Enemies/Scripts/EnemyMovement.cs b/Assets/Entities/Enemies/Scripts/EnemyMovement.cs deleted file mode 100644 index cf8b3fd..0000000 --- a/Assets/Entities/Enemies/Scripts/EnemyMovement.cs +++ /dev/null @@ -1,61 +0,0 @@ -using System.Collections; -using UnityEngine; - -namespace AsteroidGame.Entities.Enemies -{ - public class EnemyMovement : MonoBehaviour - { - [Header("Parameters")] - [SerializeField] [Range(0f, 5f)] float _speed = 1f; - [SerializeField] int _damage = 1; - - - // [SerializeField] EnemyHandler enemyHandler; - // [SerializeField] ScoreHandler scoreHandler; - - - Vector3 _startPosition; - Vector3 _endPosition; - float _travelPercent = 0f; - - private IEnumerator _followPath; - - void Awake() - { - // enemyHandler = FindObjectOfType(); - // scoreHandler = FindObjectOfType(); - - } - - void OnEnable() - { - // enemyHandler.AddEnemyToAllEnemies(gameObject); - } - - - void RecalculatePath() - { - if (_followPath != null) - { - //Debug.Log("Stopping Coroutine"); - StopCoroutine(_followPath); - - } - } - - void HandleReachedEndOfPath() - { - // scoreHandler.ModifyHealth(-damage); - // scoreHandler.ModifyWealth(-100); - // enemyHandler.RemoveEnemy(gameObject); - //Destroy(gameObject); - gameObject.SetActive(false); - } - - private Vector3 GetVector3(Vector2Int coord) - { - return new Vector3((float)coord.x, 0f, (float)coord.y) * 10f; - } - - } -} diff --git a/Assets/Entities/Enemies/Scripts/EnemyMovement.cs.meta b/Assets/Entities/Enemies/Scripts/EnemyMovement.cs.meta deleted file mode 100644 index d52ce13..0000000 --- a/Assets/Entities/Enemies/Scripts/EnemyMovement.cs.meta +++ /dev/null @@ -1,11 +0,0 @@ -fileFormatVersion: 2 -guid: 8e691044df4c75f4cb07af0551efa2c6 -MonoImporter: - externalObjects: {} - serializedVersion: 2 - defaultReferences: [] - executionOrder: 0 - icon: {instanceID: 0} - userData: - assetBundleName: - assetBundleVariant: diff --git a/Assets/Entities/ScriptableObjects/SoEnemyBaseRuntimeSet.cs b/Assets/Entities/ScriptableObjects/SoEnemyBaseRuntimeSet.cs index 5c67086..1d778cb 100644 --- a/Assets/Entities/ScriptableObjects/SoEnemyBaseRuntimeSet.cs +++ b/Assets/Entities/ScriptableObjects/SoEnemyBaseRuntimeSet.cs @@ -5,7 +5,7 @@ using UnityEngine; namespace AsteroidGame.ScriptableObjects { [CreateAssetMenu(fileName = "newEnemyBaseRuntimeSet", menuName = "RuntimeSet/EnemyBase")] - public class SoEnemyBaseRuntimeSet : SRuntimeSet + public class SoEnemyBaseRuntimeSet : SoRuntimeSet { } } \ No newline at end of file diff --git a/Assets/Entities/ScriptableObjects/SoEntityBaseRuntimeSet.cs b/Assets/Entities/ScriptableObjects/SoEntityBaseRuntimeSet.cs index 7c3ace8..8b76909 100644 --- a/Assets/Entities/ScriptableObjects/SoEntityBaseRuntimeSet.cs +++ b/Assets/Entities/ScriptableObjects/SoEntityBaseRuntimeSet.cs @@ -5,7 +5,7 @@ using UnityEngine; namespace AsteroidGame.ScriptableObjects { [CreateAssetMenu(fileName = "newEntityBaseRuntimeSet", menuName = "RuntimeSet/EntityBase")] - public class SoEntityBaseRuntimeSet : SRuntimeSet + public class SoEntityBaseRuntimeSet : SoRuntimeSet { } } \ No newline at end of file diff --git a/Assets/Entities/ScriptableObjects/SoPowerBaseRuntimeSet.cs b/Assets/Entities/ScriptableObjects/SoPowerBaseRuntimeSet.cs index ebc04bd..dab8630 100644 --- a/Assets/Entities/ScriptableObjects/SoPowerBaseRuntimeSet.cs +++ b/Assets/Entities/ScriptableObjects/SoPowerBaseRuntimeSet.cs @@ -5,7 +5,7 @@ using UnityEngine; namespace AsteroidGame.ScriptableObjects { [CreateAssetMenu(fileName = "newPowerBaseRuntimeSet", menuName = "RuntimeSet/PowerBase")] - public class SoPowerBaseRuntimeSet : SRuntimeSet + public class SoPowerBaseRuntimeSet : SoRuntimeSet { } } \ No newline at end of file diff --git a/Assets/Entities/ScriptableObjects/SoStructureBaseRuntimeSet.cs b/Assets/Entities/ScriptableObjects/SoStructureBaseRuntimeSet.cs index 9680470..0d01258 100644 --- a/Assets/Entities/ScriptableObjects/SoStructureBaseRuntimeSet.cs +++ b/Assets/Entities/ScriptableObjects/SoStructureBaseRuntimeSet.cs @@ -5,7 +5,7 @@ using UnityEngine; namespace AsteroidGame.ScriptableObjects { [CreateAssetMenu(fileName = "newStructureBaseRuntimeSet", menuName = "RuntimeSet/StructureBase")] - public class SoStructureBaseRuntimeSet : SRuntimeSet + public class SoStructureBaseRuntimeSet : SoRuntimeSet { } } \ No newline at end of file diff --git a/Assets/Entities/Enemies/Scripts/EnemyBase.cs b/Assets/Entities/Scripts/EnemyBase.cs similarity index 100% rename from Assets/Entities/Enemies/Scripts/EnemyBase.cs rename to Assets/Entities/Scripts/EnemyBase.cs diff --git a/Assets/Entities/Enemies/Scripts/EnemyBase.cs.meta b/Assets/Entities/Scripts/EnemyBase.cs.meta similarity index 100% rename from Assets/Entities/Enemies/Scripts/EnemyBase.cs.meta rename to Assets/Entities/Scripts/EnemyBase.cs.meta From 780bef97b6477a43b1c8d8cde4c0a4742595468e Mon Sep 17 00:00:00 2001 From: Stedd Date: Sun, 8 Oct 2023 16:52:16 +0200 Subject: [PATCH 14/14] latest core --- Assets/CoreSystems | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Assets/CoreSystems b/Assets/CoreSystems index d1c0a4f..639357c 160000 --- a/Assets/CoreSystems +++ b/Assets/CoreSystems @@ -1 +1 @@ -Subproject commit d1c0a4fa4f8781b98c228a70943f0f9431559f80 +Subproject commit 639357ca9aa7ae6a32f5f97067d6d33005d9bdb1