From 3ae0de86ba4f2bcc27c2d12289dfdde0939b7a5b Mon Sep 17 00:00:00 2001 From: Ader Alisma 01 Date: Sun, 13 Jul 2025 18:28:34 -0400 Subject: [PATCH] Changed creepling to be an array --- Assets/Design/Levels/Level1.asset | 2 +- .../Levels/WaveConfig_Creeper_Test.asset | 23 +++++++++++++++++++ .../Levels/WaveConfig_Creeper_Test.asset.meta | 8 +++++++ Assets/Prefabs/Monsters/Creeper.prefab | 6 +++-- Assets/Scripts/Opponent/Creeper.cs | 17 ++++---------- 5 files changed, 41 insertions(+), 15 deletions(-) create mode 100644 Assets/Design/Levels/WaveConfig_Creeper_Test.asset create mode 100644 Assets/Design/Levels/WaveConfig_Creeper_Test.asset.meta diff --git a/Assets/Design/Levels/Level1.asset b/Assets/Design/Levels/Level1.asset index 23e574f..0694373 100644 --- a/Assets/Design/Levels/Level1.asset +++ b/Assets/Design/Levels/Level1.asset @@ -248,7 +248,7 @@ MonoBehaviour: _renderLayer: Default _position: {x: 0, y: 0} _scale: {x: 1, y: 1} - _waveConfig: {fileID: 11400000, guid: d8140ae36f1b7fd4fb1a57ab3dc69de4, type: 2} + _waveConfig: {fileID: 11400000, guid: 660102a48ad7d2244ab404cfc1f6a573, type: 2} _startPopulation: 10 _startFood: 40 _startWood: 0 diff --git a/Assets/Design/Levels/WaveConfig_Creeper_Test.asset b/Assets/Design/Levels/WaveConfig_Creeper_Test.asset new file mode 100644 index 0000000..962e7c0 --- /dev/null +++ b/Assets/Design/Levels/WaveConfig_Creeper_Test.asset @@ -0,0 +1,23 @@ +%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: eb0795e326609f0499365f5b65c2b5cd, type: 3} + m_Name: WaveConfig_Creeper_Test + m_EditorClassIdentifier: + _constantSpawn: + - _enemy: {fileID: 80204295746100150, guid: 1be769d6ef642314b8846bed35e7297c, type: 3} + _count: 20 + _nestedGroupSpawn: + - groupSpawn: + - _enemy: {fileID: 80204295746100150, guid: 2def22091e1ff0d43abe2797c18a2fda, type: 3} + _count: 1 + triggerTime: 0.5 + _gameDuration: 1 diff --git a/Assets/Design/Levels/WaveConfig_Creeper_Test.asset.meta b/Assets/Design/Levels/WaveConfig_Creeper_Test.asset.meta new file mode 100644 index 0000000..d796a10 --- /dev/null +++ b/Assets/Design/Levels/WaveConfig_Creeper_Test.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 660102a48ad7d2244ab404cfc1f6a573 +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Prefabs/Monsters/Creeper.prefab b/Assets/Prefabs/Monsters/Creeper.prefab index 22446bf..8109fad 100644 --- a/Assets/Prefabs/Monsters/Creeper.prefab +++ b/Assets/Prefabs/Monsters/Creeper.prefab @@ -104,8 +104,10 @@ MonoBehaviour: _attack_damage: 10 _attack_interval: 3 _enemy: {fileID: 0} - creeplings: {fileID: 80204295746100150, guid: 2419a879bd4e47d4fa8b30de0fcdde42, type: 3} - creeplingsCount: 3 + creeplings: + - {fileID: 80204295746100150, guid: 2419a879bd4e47d4fa8b30de0fcdde42, type: 3} + - {fileID: 80204295746100150, guid: 2419a879bd4e47d4fa8b30de0fcdde42, type: 3} + - {fileID: 80204295746100150, guid: 2419a879bd4e47d4fa8b30de0fcdde42, type: 3} --- !u!114 &5416582167583119277 MonoBehaviour: m_ObjectHideFlags: 0 diff --git a/Assets/Scripts/Opponent/Creeper.cs b/Assets/Scripts/Opponent/Creeper.cs index be13169..669e7ee 100644 --- a/Assets/Scripts/Opponent/Creeper.cs +++ b/Assets/Scripts/Opponent/Creeper.cs @@ -5,23 +5,16 @@ using UnityEngine; public class Creeper : Opponent { [SerializeField] - private GameObject creeplings; - [SerializeField] - private int creeplingsCount = 3; + private GameObject[] creeplings; public override void Death() { - for (int i = 0; i < creeplingsCount; i++) + for (int i = 0; i < creeplings.Length; i++) { - SpawnCreeplings(); + float randomX = Random.Range(0f, 2f) + transform.position.x; + Vector3 spawnPosition = new Vector3(randomX, transform.position.y, transform.position.z); + GameObject creeplingsInstance = Instantiate(creeplings[i], spawnPosition, Quaternion.identity); } base.Death(); } - - private void SpawnCreeplings() - { - float randomX = Random.Range(0f, 2f) + transform.position.x; - Vector3 spawnPosition = new Vector3(randomX, transform.position.y, transform.position.z); - GameObject creeplingsInstance = Instantiate(creeplings, spawnPosition, Quaternion.identity); - } }