TowerGame/scripts/buildings/processor.gd

27 lines
657 B
GDScript

extends Building
@export var ingredients: Dictionary[Item, int] = {}
@export var process_time: float = 1.0
#@export var created_item: Item
var process_timer: float = 0.0
var processing: bool = false
func _process(delta: float) -> void:
super(delta)
if is_functional() and producer.can_produce():
if !processing:
processing = consume_ingredients()
if processing:
process_timer += delta
if process_timer >= process_time:
process_timer -= process_time
produce_item()
processing = false
func consume_ingredients() -> bool:
return consumer.take_items_from_storage(ingredients)
func produce_item() -> void:
producer.produce()