extends Node class_name Modifier @export var time_to_kill : float = 30.0 @onready var level: Node3D = $"../../Level" @onready var marker = preload("res://enemyTargetMarker.tscn") @onready var level_control = get_tree().current_scene var target_enemy var timer func _ready() -> void: await get_tree().create_timer(5).timeout select_random_enemy() SignalBus.connect("enemy_killed",check_killed_target) timer = time_to_kill func _process(delta: float) -> void: if target_enemy != null: if timer > 0: timer -= delta update_timer("kill target") else: level_control.die() func update_timer(label): var rounded_timer = round(timer) SignalBus.emit_signal("ui_timer_update",label,timer) func check_killed_target(enemy): print("ENEMY KILLED : ",enemy) print("TARGET ENEMY : ",target_enemy) if enemy == target_enemy: timer = time_to_kill target_enemy = null select_random_enemy() func add_marker_to_enemy(): if target_enemy != null: var instance_marker = marker.instantiate() target_enemy.add_child(instance_marker) instance_marker.global_position = target_enemy.global_position func select_random_enemy(): var level_stuff = level.get_children() var enemies = [] for node in level_stuff: print(node) if node is Enemy: enemies.append(node) if enemies.size() > 0: target_enemy = enemies.pick_random() add_marker_to_enemy() print("TARGET ENEMY : ",target_enemy.name) else: print("KILLED EM ALL")