fixed spawners
All checks were successful
Create tag and build when new code gets to main / BumpTag (push) Successful in 22s
Create tag and build when new code gets to main / Test (push) Successful in 6m4s
Create tag and build when new code gets to main / Export (push) Successful in 8m2s

This commit is contained in:
2026-01-28 19:14:05 +01:00
parent 8a552f7993
commit cc973b9f0d
4 changed files with 21 additions and 28 deletions

View File

@@ -1,7 +1,7 @@
using Godot; using Godot;
using System; using System;
[GlobalClass, Icon("res://assets/ui/IconGodotNode/control/icon_heart.png")] [GlobalClass, Icon("res://assets/ui/IconGodotNode/node_3D/icon_heart.png")]
public partial class CHealthbar : Sprite3D public partial class CHealthbar : Sprite3D
{ {
private Healthbar _healthbar; private Healthbar _healthbar;

View File

@@ -26,10 +26,10 @@ metadata/_custom_type_script = "uid://baiapod3csndf"
[node name="Main" unique_id=1551129541 instance=ExtResource("1_w4y6q")] [node name="Main" unique_id=1551129541 instance=ExtResource("1_w4y6q")]
[node name="BackgroundMusicPlayer" parent="." index="0"] [node name="BackgroundMusicPlayer" parent="." index="0" unique_id=879496303]
autoplay = false autoplay = false
[node name="Player" parent="." index="5"] [node name="Player" parent="." index="5" unique_id=1309399929]
transform = Transform3D(0.99999994, 0, 0, 0, 1, 0, 0, 0, 0.99999994, 2, 1.5, 9.5) transform = Transform3D(0.99999994, 0, 0, 0, 1, 0, 0, 0, 0.99999994, 2, 1.5, 9.5)
[node name="Greybox" type="CSGCombiner3D" parent="." index="7" unique_id=646927976] [node name="Greybox" type="CSGCombiner3D" parent="." index="7" unique_id=646927976]
@@ -125,18 +125,19 @@ transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 10, 7, -16)
Target = NodePath("../Player") Target = NodePath("../Player")
RMovement = SubResource("Resource_xixm3") RMovement = SubResource("Resource_xixm3")
[node name="GroundedSpawner" parent="." index="14" unique_id=557145011 instance=ExtResource("7_ba7rw")] [node name="GroundedSpawner" parent="." index="14" unique_id=557145011 node_paths=PackedStringArray("Target") instance=ExtResource("7_ba7rw")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 12, 2.5, -15) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 5, 2.5, -15)
EnemyToSpawn = ExtResource("4_5mjy0") EnemyToSpawn = ExtResource("4_5mjy0")
MovementInputs = ExtResource("8_cdhvi") MovementInputs = ExtResource("8_cdhvi")
HealthInputs = SubResource("Resource_epn1o") HealthInputs = SubResource("Resource_epn1o")
DamageInputs = ExtResource("10_xyaoo") DamageInputs = ExtResource("10_xyaoo")
Target = NodePath("../Player")
IsActiveOnStart = false IsActiveOnStart = false
[node name="FlyingSpawner" parent="." index="15" unique_id=974076606 instance=ExtResource("7_ba7rw")] [node name="FlyingSpawner" parent="." index="15" unique_id=974076606 node_paths=PackedStringArray("Target") instance=ExtResource("7_ba7rw")]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 18, 11, -14) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 18, 11, -14)
EnemyToSpawn = ExtResource("6_xuqf0") EnemyToSpawn = ExtResource("6_xuqf0")
MovementInputs = ExtResource("11_yug0s") MovementInputs = ExtResource("11_yug0s")
HealthInputs = ExtResource("12_qgrw7") HealthInputs = ExtResource("12_qgrw7")
DamageInputs = ExtResource("13_qulje") DamageInputs = ExtResource("13_qulje")
IsActiveOnStart = false Target = NodePath("../Player")

View File

@@ -22,21 +22,14 @@ public partial class Spawner : Node3D
[Export] [Export]
public bool IsActiveOnStart { get; set; } = true; public bool IsActiveOnStart { get; set; } = true;
private float _spawnTimer; private Timer _timer;
private bool _isActive;
public override void _Ready() public override void _Ready()
{ {
_isActive = IsActiveOnStart; _timer = GetNode<Timer>("Timer");
_spawnTimer = SpawnInterval; _timer.WaitTime = SpawnInterval;
} _timer.Timeout += Spawn;
if (IsActiveOnStart) StartSpawning();
public override void _Process(double delta)
{
if (!_isActive) return;
_spawnTimer -= (float) delta;
if (_spawnTimer <= 0) Spawn();
} }
public void Spawn() public void Spawn()
@@ -45,26 +38,23 @@ public partial class Spawner : Node3D
if (EnemyToSpawn.Instantiate() is not Enemy spawnedInstance) return; if (EnemyToSpawn.Instantiate() is not Enemy spawnedInstance) return;
GetTree().GetCurrentScene().AddChild(spawnedInstance);
spawnedInstance.GlobalPosition = GlobalPosition;
spawnedInstance.Target = Target; spawnedInstance.Target = Target;
spawnedInstance.RMovement = MovementInputs; spawnedInstance.RMovement = MovementInputs;
spawnedInstance.RDamage = DamageInputs; spawnedInstance.RDamage = DamageInputs;
spawnedInstance.RHealth = HealthInputs; spawnedInstance.RHealth = HealthInputs;
spawnedInstance.Initialize(); spawnedInstance.Initialize();
GetTree().GetCurrentScene().AddChild(spawnedInstance);
spawnedInstance.GlobalPosition = GlobalPosition;
_spawnTimer = SpawnInterval;
} }
public void StartSpawning() public void StartSpawning()
{ {
_isActive = true; _timer.Start();
_spawnTimer = SpawnInterval;
} }
public void StopSpawning() public void StopSpawning()
{ {
_isActive = false; _timer.Stop();
} }
} }

View File

@@ -6,3 +6,5 @@
script = ExtResource("1_2otbo") script = ExtResource("1_2otbo")
[node name="Marker3D" type="Marker3D" parent="." unique_id=610854505] [node name="Marker3D" type="Marker3D" parent="." unique_id=610854505]
[node name="Timer" type="Timer" parent="." unique_id=1842357493]