extends Reference const NAME = "growing" const raw_yam = preload("res://item_types/raw_yam.tres") var ctx = null var mat: SpatialMaterial = SpatialMaterial.new() func _init(): mat.albedo_color = Color.green func enter_from(state): ctx.get_node("coin_machine").enabled = false ctx.get_node("item_holder").add_enabled = false ctx.get_node("grow_timer").start() ctx.get_node("MeshInstance").set_surface_material(0, mat) func exit_to(state): ctx.get_node("MeshInstance").set_surface_material(0, null) func on_coin_machine_coin_requirement_met(player): assert(false, "coin machine should be disabled while growing") func on_grow_timer_timeout(): var item_holder = ctx.get_node("item_holder") item_holder.spawn_item(raw_yam) ctx.change_state(ctx.StateBlocked.new()) func on_item_holder_item_changed(item): assert(item.item_type == raw_yam)