21 lines
423 B
GDScript
21 lines
423 B
GDScript
extends Area2D
|
|
|
|
signal interacted
|
|
var player
|
|
|
|
func _ready():
|
|
connect("body_entered", self, "_on_body_enter")
|
|
connect("body_exited", self, "_on_body_exit")
|
|
|
|
func _on_body_enter(body):
|
|
if body.has_method("add_interactable"):
|
|
player = body
|
|
body.add_interactable(self)
|
|
|
|
func _on_body_exit(body):
|
|
if body.has_method("remove_interactable"):
|
|
body.remove_interactable(self)
|
|
|
|
func interact():
|
|
emit_signal("interacted")
|