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() self.verse_name,self.verse=liturgy:suggest_verse(self.board.ruleset,self.card) end function state_wonround:enter() completion_tracker:advance_completion_level(self.board:get_completion_level()) end 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) print("next",56,y+2,15) print("(🅾️)",56,y+8,15) end