34 lines
819 B
GDScript

extends Reference
const INTERFACES = [preload("res://scripts/rover_station/state/state_interface.tres")]
const NAME = "broken"
var ctx = null
func _init():
pass
func enter_from(state):
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 = true
ctx.get_node("item_holder").remove_enabled = true
ctx.get_node("status_light").fail()
func exit_to(state):
assert(state.NAME != "broken")
func on_coin_machine_coin_requirement_met(player):
assert(false, "should be impossible while broken")
func on_item_dump_completed():
ctx.full_heal()
ctx.change_state(ctx.StateIdle.new())
func on_damage_taken():
assert(false, "should be impossible while broken")
func on_player_sleep():
ctx.treasure.clear()