19 lines
541 B
GDScript
19 lines
541 B
GDScript
class_name Item extends Area2D
|
|
@onready var player = get_tree().get_root().get_node("main/Player")
|
|
|
|
func _ready() -> void:
|
|
self.connect("body_entered", _on_body_entered)
|
|
|
|
func _on_body_entered(body: Node2D):
|
|
if(body.name == "Player"):
|
|
if(self.has_method("collect") and collect()):
|
|
set_deferred("monitoring", false)
|
|
set_deferred("monitorable", false)
|
|
call_deferred("reparent", player)
|
|
collect_animation()
|
|
|
|
func collect_animation():
|
|
self.visible = false
|
|
|
|
func collect():
|
|
push_error("Please specify item collection behavior")
|