fortunes_foundation/state_wonround.lua

64 lines
1.5 KiB
Lua
Raw Normal View History

2024-02-11 21:44:45 +00:00
state_wonround=klass()
function state_wonround:init(board)
self.board=board
self.frame=0
self.frames=30
self.progress=0.0
self.card=self.board:get_endgame_card()
2024-02-12 01:28:41 +00:00
self.verse_id,self.verse_name,self.verse=liturgy:suggest_verse(self.board.ruleset,self.card)
2024-02-11 21:44:45 +00:00
end
2024-02-11 23:58:40 +00:00
function state_wonround:enter()
2024-02-12 01:28:41 +00:00
completion_tracker:mark_seen(self.verse_id)
2024-02-11 23:58:40 +00:00
completion_tracker:advance_completion_level(self.board:get_completion_level())
end
2024-02-11 21:44:45 +00:00
function state_wonround:exit(new_top) end
function state_wonround:reenter() end
function state_wonround:suspend() end
function state_wonround:update()
self.frame=min(self.frame+1,self.frames)
self.progress=self.frame/self.frames
self.board:set_restart_progress(self.progress)
if (self.progress<1.0) return
if (btnp(4)) self.done=true
end
function state_wonround:draw()
cls(13)
if self.progress<1.0 then
self.board:draw()
return
end
self.board.ruleset.deck:draw_card(0,0,self.card,{})
poke(0x5f54,0x60)
-- blow it up
sspr(0,0,9,16,55,28+sin(time())+0.5,18,32)
poke(0x5f54,0x00)
rectfill(0,0,8,15,13)
local w,_=measure_text(self.verse_name)
local x=64-w\2
-- rectfill(x,64,x+w-2,70,4)
print(self.verse_name,x,64,15)
line(x,70,x+w-2,70,15)
local oldx,oldw=x,w
local y=73
local w,h=measure_text(self.verse)
local x=64-w\2
rectfill(x-1,y-1,x+w,y+h-1,4)
print(self.verse,x,y,15)
--[[
for line in all(split(self.verse,"\n")) do
local w,_=measure_text(line)
print(line,64-w\2,y,7)
y+=6
end
]]--
y+=h+1
line(oldx,y,oldx+oldw-2,y,15)
2024-02-12 01:58:34 +00:00
print("next",57,y+2,15)
print("(🅾️)",57,y+8,15)
2024-02-11 21:44:45 +00:00
end