17 lines
354 B
GDScript
17 lines
354 B
GDScript
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()
|