38 lines
901 B
GDScript

extends Reference
const NAME = "broken"
var ctx = null
func _init():
pass
func enter_from(state):
ctx.remove_from_group("damageable")
ctx.get_node("item_dump").enabled = true
ctx.get_node("item_dump").reset()
ctx.get_node("coin_machine").enabled = false
ctx.get_node("%item_holder").add_enabled = false
ctx.get_node("%item_holder").remove_enabled = false
ctx.get_node("status_light").fail()
func exit_to(state):
assert(state.NAME != "broken")
ctx.add_to_group("damageable")
func on_coin_machine_coin_requirement_met(player):
assert(false, "should be impossible while broken")
func on_cook_timer_timeout():
assert(false, "should be impossible while broken")
func on_item_holder_item_changed(item):
assert(false, "should be impossible while broken")
func on_item_dump_completed():
ctx.full_heal()
ctx.change_state(ctx.StateIdle.new())
func take_damage():
pass # already broken