The_Dark_Side_of_Earth/utils/interactable_area.gd

16 lines
319 B
GDScript

extends Area2D
@export var oneshot = true
@export var cooldown = 10
var already_used = false
func _ready() -> void:
$Cooldown.wait_time = cooldown
signal interaction
func interact():
if not $Cooldown.time_left > 0 and not (oneshot and already_used):
already_used = true
$Cooldown.start()
interaction.emit()