class_name Target extends RigidBody3D var health: int = 10 signal damaged(amount) signal died() func take_damage(damage_amount: int) -> void: health -= damage_amount emit_signal("damaged", damage_amount) if health <= 0: emit_signal("died") die() func die() -> void: # Optional: spawn explosion, play animation/sound, then remove queue_free()