SchildDerStaerke/scripts/hurtbox.gd

19 lines
458 B
GDScript

class_name HurtBox
extends Area3D
@export var object: Node3D
func _init() -> void:
collision_layer = 0
collision_mask = 2
func _ready() -> void:
connect("area_entered", _on_area_entered)
func _on_area_entered(hitbox: HitBox) -> void:
if hitbox == null: return
if object is Item or object is Unit:
print(object.name + " take damage by " + hitbox.object.name + "...")
if owner.has_method("take_damage"):
owner.take_damage(hitbox.get_damage())