@tool extends Interactable class_name EnergyCell const GIVEN_ENERGY = 1 @export var used = false : set = set_used func _ready(): set_used() func set_used(v = used): used = v available = not used if is_node_ready(): %AnimationPlayer.play("squeeze") await get_tree().create_timer(0.2).timeout %SpriteOff.visible = used %SpriteOn.visible = not used func can_interact(p : Player) -> bool: return p.data.energy < p.data.max_energy func interact(p : Player) -> bool: if not used and region: used = true available = false p.data.energy += GIVEN_ENERGY interacted.emit(p) region.data.used_objects.append(name) AudioManager.play_sfx("Recharge1") return true return false