used DI for forge managers where possible

This commit is contained in:
2026-04-28 16:34:10 +02:00
parent ec44306d48
commit 24f057c15f
8 changed files with 129 additions and 112 deletions

View File

@@ -5,14 +5,14 @@ using System;
public partial class Spawner : Node3D
{
[Export(PropertyHint.NodeType)]
public PackedScene EnemyToSpawn { get; set; }
public PackedScene? EnemyToSpawn { get; set; }
[Export]
public RMovement MovementInputs { get; set; }
public RMovement? MovementInputs { get; set; }
[Export]
public RHealth HealthInputs { get; set; }
public RHealth? HealthInputs { get; set; }
[Export]
public RDamage DamageInputs { get; set; }
public RDamage? DamageInputs { get; set; }
[Export]
public Node3D Target { get; set; }
@@ -37,7 +37,7 @@ public partial class Spawner : Node3D
if (EnemyToSpawn == null || !EnemyToSpawn.CanInstantiate()) return;
if (EnemyToSpawn.Instantiate() is not Enemy spawnedInstance) return;
spawnedInstance.RequestReady();
GetTree().GetCurrentScene().AddChild(spawnedInstance);
spawnedInstance.GlobalPosition = GlobalPosition;
@@ -45,7 +45,7 @@ public partial class Spawner : Node3D
spawnedInstance.RMovement = MovementInputs;
spawnedInstance.RDamage = DamageInputs;
spawnedInstance.RHealth = HealthInputs;
spawnedInstance.Initialize();
spawnedInstance.Init();
}
public void StartSpawning()