From a804ba7565239affd5399780ef28748778ccbb2d Mon Sep 17 00:00:00 2001 From: kittyegg Date: Sat, 4 Jul 2026 03:35:46 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=B8=D0=BB=20?= =?UTF-8?q?=D1=81=D0=BB=D1=83=D1=87=D0=B0=D0=B9=D0=BD=D1=8B=D1=85=20=D0=B2?= =?UTF-8?q?=D1=80=D0=B0=D0=B3=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Assets/Scripts/EnemySpawner.cs | 7 ++++++- Assets/Scripts/ScriptableObjects/Level.cs | 1 + 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/Assets/Scripts/EnemySpawner.cs b/Assets/Scripts/EnemySpawner.cs index 262ed5b..c52eb19 100644 --- a/Assets/Scripts/EnemySpawner.cs +++ b/Assets/Scripts/EnemySpawner.cs @@ -8,6 +8,7 @@ public class EnemySpawner : MonoBehaviour [SerializeField] private SandPathBuildService _pathBuildService; [SerializeField] private Transform _enemyHolder; [SerializeField] private Transform _spawnPoint; + [SerializeField] private Enemy[] _enemiesPrefabs; [SerializeField] private UnityEvent _onEnemySpawned; public event UnityAction OnEnemySpawned @@ -43,7 +44,11 @@ public class EnemySpawner : MonoBehaviour foreach (var prefab in level.EnemiesPrefabs) { - var enemy = prefab.Spawn( + var p = prefab; + if (prefab == null) + p = _enemiesPrefabs[Random.Range(0, _enemiesPrefabs.Length)]; + + var enemy = p.Spawn( level.EnemiesHealthMultiplier, level.EnemiesSpeedMultiplier, level.EnemiesDamagingMultiplier, diff --git a/Assets/Scripts/ScriptableObjects/Level.cs b/Assets/Scripts/ScriptableObjects/Level.cs index 4f42342..911bb86 100644 --- a/Assets/Scripts/ScriptableObjects/Level.cs +++ b/Assets/Scripts/ScriptableObjects/Level.cs @@ -4,6 +4,7 @@ using System.Collections.Generic; [CreateAssetMenu(fileName = "Level_No", menuName = "Scriptable Objects/Level")] public class Level : ScriptableObject { + [Tooltip("Если элемент не задан, будет выбран случайный из списка префабов спавнера")] [SerializeField] private Enemy[] _enemiesPrefabs; [SerializeField] private float _levelTimeSec = 10f; [SerializeField] private float _enemiesHealthMultiplier = 1;