First_Person_Slapper/Scripts/HurtBox.gd
2022-10-12 09:10:44 -04:00

29 lines
734 B
GDScript

class_name HurtBox
extends Area
onready var Slap = $AudioSlap
onready var MegaSlap = $AudioMegaSlap
func _init():
collision_layer = 0
collision_mask = 2
func _ready():
connect("area_entered",self,"_on_area_entered")
func _on_area_entered(hitbox: HitBox):
if hitbox == null:
return
if hitbox.hitbox_type == hitbox.HitboxType.Unassigned:
return
if hitbox.hitbox_type == hitbox.HitboxType.Slap and owner.has_method("get_slapped"):
owner.get_slapped(hitbox.slap_level,hitbox.slap_kill, hitbox.slap_vector)
if hitbox.slap_level >= hitbox.slap_kill:
MegaSlap.play()
else:
Slap.play()
elif hitbox.hitbox_type == hitbox.HitboxType.Projectile and owner.has_method("get_shot"):
owner.get_shot(hitbox.owner)