Изменил спавн врага

This commit is contained in:
2026-07-04 01:52:34 +03:00
parent 3bd6c16097
commit 6420ddb1e1
2 changed files with 23 additions and 7 deletions
+16 -5
View File
@@ -34,11 +34,11 @@ public class Enemy : MonoBehaviour
remove => _onDestroyed.RemoveListener(value); remove => _onDestroyed.RemoveListener(value);
} }
public SandPathBuildService PathBuildService //public SandPathBuildService PathBuildService
{ //{
get => _pathService; // get => _pathService;
set => _pathService = value; // set => _pathService = value;
} //}
public int PathLenght => _path?.Count ?? -1; public int PathLenght => _path?.Count ?? -1;
@@ -54,6 +54,17 @@ public class Enemy : MonoBehaviour
public float Damage { get => _damage; set => _damage = value; } public float Damage { get => _damage; set => _damage = value; }
public Enemy Spawn(float healthMultiplier, float speedMultiplier, float damageMultiplier, SandPathBuildService pathBuildService, Transform spawnPoint, Transform parent)
{
var enemy = Instantiate(this, spawnPoint.position, spawnPoint.rotation, parent);
enemy.Health = _health * healthMultiplier;
enemy._speed = _speed * speedMultiplier;
enemy.Damage = _damage * damageMultiplier;
enemy._pathService = pathBuildService;
return enemy;
}
private void Start() private void Start()
{ {
_path = new Queue<Vector3>(_pathService.GetPath()); _path = new Queue<Vector3>(_pathService.GetPath());
+7 -2
View File
@@ -43,8 +43,13 @@ public class EnemySpawner : MonoBehaviour
foreach (var prefab in level.EnemiesPrefabs) foreach (var prefab in level.EnemiesPrefabs)
{ {
var enemy = Instantiate(prefab, _spawnPoint.position, _spawnPoint.rotation, _enemyHolder); var enemy = prefab.Spawn(
enemy.PathBuildService = _pathBuildService; level.EnemiesHealthMultiplier,
level.EnemiesSpeedMultiplier,
level.EnemiesDamagingMultiplier,
_pathBuildService,
_spawnPoint,
_enemyHolder);
_onEnemySpawned?.Invoke(enemy); _onEnemySpawned?.Invoke(enemy);
yield return wait; yield return wait;