scenes={ abad_inici={ {x=4,y=0,flip=false,text={"Be, millor comence a","buscar... com s'eixia","d'esta habitació???"}}, {x=4,y=0,flip=true,text={"Perque parles","tu soles?",""}}, {x=4,y=0,flip=false,text={"Pa que Doc prove","com queden els","diàlegs..."}} }, abad_corfes={ {x=4,y=0,flip=false,text={"Osti, està ple de","monstruacos.",""}}, {x=4,y=0,flip=false,text={"Pos al que s'acoste","s'endurà una corfa","de cacau al cap!"}} } --premiere_intro={x=4,y=0,text={"Be, millor me fique a","buscar... com s'eixia","d'esta habitacio???"}} } function start_scene(scene) bkg=newsurf(128,96) setdest(bkg) setsource(0) sspr(0,0,128,96,0,0) setsource(tiles) setdest(0) _update=update_scene scenes.current_scene=scene scenes.dnum=1 scenes.step=0 scenes.char=1 scenes.wait=0 end function draw_scene() local txt_x = not scenes.current_scene[scenes.dnum].flip and 38 or 8 camera(0,-28) if scenes.step==0 then rectfill(0,16,128,17,12) line(0,15,128,15,16) line(0,18,128,18,16) elseif scenes.step==1 then rectfill(0,8,128,26,12) line(0,7,128,7,16) line(0,27,128,27,16) elseif scenes.step==2 then rectfill(0,0,128,34,12) line(0,0,128,0,16) line(0,34,128,34,16) elseif scenes.step==3 then if not scenes.current_scene[scenes.dnum].flip then rectfill(8,12,31,23,16) sspr(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,10,10,9,13,20,10) else rectfill(97,12,120,23,16) sspr(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,10,10,98,13,20,10,true) end elseif scenes.step==4 then if not scenes.current_scene[scenes.dnum].flip then rectfill(8,7,31,28,16) sspr(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,10,10,9,8,20,20) else rectfill(97,7,120,28,16) sspr(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,10,10,98,8,20,20,true) end elseif scenes.step==5 then text(string.sub(scenes.current_scene[scenes.dnum].text[1],1,scenes.char),txt_x,7,2) if scenes.char<#scenes.current_scene[scenes.dnum].text[1] then scenes.step=scenes.step-1 scenes.char=scenes.char+1 else scenes.char=1 end elseif scenes.step==6 then text(string.sub(scenes.current_scene[scenes.dnum].text[2],1,scenes.char),txt_x,15,2) if scenes.char<#scenes.current_scene[scenes.dnum].text[2] then scenes.step=scenes.step-1 scenes.char=scenes.char+1 else scenes.char=1 end elseif scenes.step==7 then text(string.sub(scenes.current_scene[scenes.dnum].text[3],1,scenes.char),txt_x,23,2) if scenes.char<#scenes.current_scene[scenes.dnum].text[3] then scenes.step=scenes.step-1 scenes.char=scenes.char+1 else scenes.char=1 end elseif scenes.step==8 then rectfill(0,0,128,34,12) line(0,0,128,0,16) line(0,34,128,34,16) if not scenes.current_scene[scenes.dnum].flip then rectfill(8,7,31,28,16) sspr(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,10,10,9,8,20,20) else rectfill(97,7,120,28,16) sspr(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,10,10,98,8,20,20,true) end text(scenes.current_scene[scenes.dnum].text[1],txt_x,7,2) text(scenes.current_scene[scenes.dnum].text[2],txt_x,15,2) text(scenes.current_scene[scenes.dnum].text[3],txt_x,23,2) end if scenes.step<=8 then scenes.step=scenes.step+1 end camera(0,0) end function update_scene() scenes.wait=scenes.wait+1 if scenes.wait==6 then scenes.wait=0 draw_scene() end if btnp(KEY_SPACE) then if scenes.step>8 then if scenes.dnum==#scenes.current_scene then freesurf(bkg) _update=update_game else scenes.dnum=scenes.dnum+1 scenes.step=2 end else scenes.step=8 end end end