summaryrefslogtreecommitdiff
path: root/Scenes/Entities/Enemies/Components/Collision.gd
diff options
context:
space:
mode:
Diffstat (limited to 'Scenes/Entities/Enemies/Components/Collision.gd')
-rw-r--r--Scenes/Entities/Enemies/Components/Collision.gd11
1 files changed, 11 insertions, 0 deletions
diff --git a/Scenes/Entities/Enemies/Components/Collision.gd b/Scenes/Entities/Enemies/Components/Collision.gd
index b2e8d9b..2dfba2a 100644
--- a/Scenes/Entities/Enemies/Components/Collision.gd
+++ b/Scenes/Entities/Enemies/Components/Collision.gd
@@ -11,8 +11,19 @@ signal collided
@export_node_path("CollisionShape2D") var collision_shape_path: NodePath
@onready var collision_shape: CollisionShape2D = get_node(collision_shape_path)
+@export_node_path("Component_Health") var component_health_path: NodePath
+var component_health: Component_Health
+
func init():
var collision_area = Utilities.Collision.Area.new(entity, collision_shape)
+ collision_area.set_collision_mask_value(Utilities.Collision.Layer.PLAYER, true)
collision_area.connect("collided", func(area): emit_signal("collided", area))
entity.add_child(collision_area)
+
+ if component_health_path:
+ component_health = get_node(component_health_path)
+ collision_area.connect("collided", func(area):
+ if area.is_in_group("explosions"):
+ component_health.take_damage()
+ )