fortunes_foundation/state_ironman.lua
2024-02-11 17:58:34 -08:00

41 lines
885 B
Lua

state_ironman=klass()
function state_ironman:init(sequence)
self.sequence=sequence
self.level=1
end
function state_ironman:enter() self:on_enter() end
function state_ironman:exit() end
function state_ironman:reenter(round)
if round.outcome=="win" then
self.level+=1
elseif round.outcome=="menu" then
self.done=true
elseif round.outcome=="restart" then
else
assert(false,"unrecognized outcome: "..round.outcome)
end
self:on_enter()
end
function state_ironman:suspend() end
function state_ironman:on_enter()
local level=self.level
if (self.done) return
if level <= #self.sequence then
local w=self.sequence[level]()
main.state_manager:push(state_gameround:new(w))
else
main.state_manager:push(state_wonironman:new())
self.done=true
end
end
function state_ironman:update()
assert(false,"wtf")
end
function state_ironman:draw()
assert(false,"wtf2")
end