34 lines
819 B
GDScript
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()
|