diff --git a/data/arcade_config.lua b/data/arcade_config.lua index 52713c6..7802278 100644 --- a/data/arcade_config.lua +++ b/data/arcade_config.lua @@ -5,6 +5,13 @@ local arcade_config = { sprite_size = { w = 32, h = 32 }, escala = 1.0, org2arc_escala = 2.0, + tiles_offset = 128, + tiles_per_row = 16, + tiles_per_row_base2 = 4, + tiles_width = 16, + tiles_height = 16, + character_width = 32, + character_height = 32, fullscreen = false } diff --git a/data/intro.lua b/data/intro.lua index ef704d1..590cf5d 100644 --- a/data/intro.lua +++ b/data/intro.lua @@ -8,10 +8,13 @@ local arcade_config = require("arcade_config") intro_wait=40 intro_step=0 +o2aX = arcade_config.org2arc_escala + function intro_init() game_update = intro_intro intro_wait=400 surf.cls(16) + surf.target(logo) surf.cls(16) draw.text("JAILGAMES",0,0,15) @@ -24,7 +27,7 @@ function intro_init() text("presenta",0,0,14) surf.target(0) surf.source(logo) - draw.surf(0,0,36,5,96,100,36*arcade_config.org2arc_escala, 5*arcade_config.org2arc_escala) + draw.surf(0,0,36,5,96,100,36*o2aX, 5*o2aX) -- draw.surf(0,0,36,5,28,35,72,10) -- draw.surf(0,0,36,5,56,70,arcade_config.logo_sf.width,arcade_config.logo_sf.height) @@ -51,22 +54,32 @@ function intro_update() elseif key.press(key.SPACE) then intro_wait=1 end - + intro_wait=intro_wait-1 if intro_wait==0 then if intro_step==0 then + print("STEP 0") surf.cls(16) - draw.rect(15,3,99,51,2) - view.origin(16,4) + draw.rect(15*o2aX,3*o2aX,99*o2aX,51*o2aX,2) + view.origin(16*o2aX,4*o2aX) mapa_draw(10) - draw.rectf(73,24,7,16,16) - draw.surf(0,0,16,16,44,24,16,16,true) + + -- To do: revisar açò que no se que fa + draw.rectf(73*o2aX,24*o2aX,7*o2aX,16*o2aX,16) + + -- Abad + -- draw.surf(0,0,16,16,44,24,16,16,true) + local cw = arcade_config.character_width + local ch = arcade_config.character_height + draw.surf(0,0,cw,ch,44*o2aX,24*o2aX,cw,ch,true) view.origin(0,0) intro_step=intro_step+1 elseif intro_step==1 then + print("STEP 1") start_scene(scenes.intro_01,58) intro_step=intro_step+1 elseif intro_step==2 then + print("STEP 2") surf.cls(16) draw.rect(15,3,99,51,2) view.origin(16,4) diff --git a/data/mapa.lua b/data/mapa.lua index 26ea24a..110c149 100644 --- a/data/mapa.lua +++ b/data/mapa.lua @@ -1,5 +1,7 @@ require "map" +local arcade_config = require("arcade_config") + tiletype={void=0,nonpc=1,stair=2,switch=3,half=4,block=5} mapa.wait=0 mapa.step=0 @@ -93,7 +95,13 @@ function mapa_draw(hab) for tx=0,11 do local tile=mapa[1+hab][1+tx+ty*12] if tile~=256 and (tile<126 or mapa.step>4) then - draw.surf((tile&15)*8,64+(tile>>4)*8,8,8,tx*8,ty*8) + -- draw.surf((tile&15)*8,64+(tile>>4)*8,8,8,tx*8,ty*8) + local txr = arcade_config.tiles_per_row-1 + local txr2 = arcade_config.tiles_per_row_base2 + local toff= arcade_config.tiles_offset + local tw = arcade_config.tiles_width + local th = arcade_config.tiles_height + draw.surf((tile&txr)*tw,toff+(tile>>txr2)*th,tw,th,tx*tw,ty*th) end end end diff --git a/data/scenes.lua b/data/scenes.lua index 9a5bfdd..ae876c7 100644 --- a/data/scenes.lua +++ b/data/scenes.lua @@ -1,23 +1,35 @@ require "final" require "audio" +local arcade_config = require("arcade_config") + +o2aX = arcade_config.org2arc_escala + +avatar_abad_x = 3*o2aX +avatar_abad_y = 0 +avatar_batman_x = 4*o2aX +avatar_batman_y = 48*o2aX +avatar_w = 10*o2aX +avatar_h = 10*o2aX + + scenes={ intro_01= { - {x=3,y=0,flip=false,audio="abad",text={"Ah!, què bo!","Nit de Netflix amb","un bon bol de cacaus!"},die=20}, + {x=avatar_abad_x,y=avatar_abad_y,flip=false,audio="abad",text={"Ah!, què bo!","Nit de Netflix amb","un bon bol de cacaus!"},die=20}, }, intro_02= { - {x=3,y=0,flip=false,audio="abad",text={"Eh! On està el","bol de cacaus???",""},die=20}, + {x=avatar_abad_x,y=avatar_abad_y,flip=false,audio="abad",text={"Eh! On està el","bol de cacaus???",""},die=20}, }, intro_03= { - {x=4,y=48,flip=true,audio="batman",musica=audio_song_batman,text={"ME L'HE ENDUT JO!!!", "S'HAN ACABAT ELS","CACAUS PA TU!"},die=20}, - {x=3,y=0,flip=false,audio="abad",text={"Què??","Però perquè???",""},die=20}, - {x=4,y=48,flip=true,audio="batman",text={"Estàs com una vaca!","Has de deixar de menjar", "eixes gorrinades"},die=20}, - {x=4,y=48,flip=true,audio="batman",text={"Mira'm a mi. Estic","tot buenorro i faig", "esport"},die=20}, - {x=3,y=0,flip=false,audio="abad",text={"Esport?????","I una merda!!","He de cuidar la panxa!"},die=20}, - {x=4,y=48,flip=true,audio="batman",text={"Pos t'aguantes.","Ja pots despedir-te", "dels cacaus..."},die=20}, + {x=avatar_batman_x,y=avatar_batman_y,flip=true,audio="batman",musica=audio_song_batman,text={"ME L'HE ENDUT JO!!!", "S'HAN ACABAT ELS","CACAUS PA TU!"},die=20}, + {x=avatar_abad_x,y=avatar_abad_y,flip=false,audio="abad",text={"Què??","Però perquè???",""},die=20}, + {x=avatar_batman_x,y=avatar_batman_y,flip=true,audio="batman",text={"Estàs com una vaca!","Has de deixar de menjar", "eixes gorrinades"},die=20}, + {x=avatar_batman_x,y=avatar_batman_y,flip=true,audio="batman",text={"Mira'm a mi. Estic","tot buenorro i faig", "esport"},die=20}, + {x=avatar_abad_x,y=avatar_abad_y,flip=false,audio="abad",text={"Esport?????","I una merda!!","He de cuidar la panxa!"},die=20}, + {x=avatar_batman_x,y=avatar_batman_y,flip=true,audio="batman",text={"Pos t'aguantes.","Ja pots despedir-te", "dels cacaus..."},die=20}, }, intro_04= { - {x=3,y=0,flip=false,audio="abad",text={"Serà mamó...","",""},die=20}, + {x=avatar_abad_x,y=avatar_abad_y,flip=false,audio="abad",text={"Serà mamó...","",""},die=20}, }, abad_inici={ {x=4,y=0,flip=false,audio="abad",text={"Se va a enterar eixe","imbècil de Batman","quan el pille..."}}, @@ -115,16 +127,16 @@ scenes={ {x=4,y=0,flip=false,audio="abad",text={"Ara si que li puc","pegar una bona","cacauà..."}} }, final= { - {x=4,y=48,flip=true,audio="batman",musica=audio_song_batman,text={"AI!", "M'has fet mal!!!",""},die=20}, - {x=3,y=0,flip=false,audio="abad",text={"Aixó per furtar-me","el bol de cacaus,","imbèsil"},die=20}, - {x=4,y=48,flip=true,audio="batman",text={"Cert, esta me la","mereixia... però", "mira que be estàs!"},die=20}, - {x=4,y=48,flip=true,audio="batman",text={"Amb el que t'ha","costat pillar-me", "t'has ficat en forma"},die=20}, - {x=3,y=0,flip=false,audio="abad",text={"No me vingues en","tonteries,","mamarratxo."},die=20}, - {x=3,y=0,flip=false,audio="abad",text={"Creus que no he","notat que falta mig","bol de cacaus?"},die=20}, - {x=4,y=48,flip=true,audio="batman",text={"Jejejeje, es que","estàn molt bons!", ""},die=20}, - {x=4,y=48,flip=true,audio="batman",text={"Però si vols te","done del meu bol", "de tramussos."},die=20}, - {x=3,y=0,flip=false,audio="abad",text={"TRAMUSSOS...","",""},die=10}, - {x=3,y=0,flip=false,audio="abad",text={"M'atreviré a","passar l'última","frontera...?"},die=40}, + {x=avatar_batman_x,y=avatar_batman_y,flip=true,audio="batman",musica=audio_song_batman,text={"AI!", "M'has fet mal!!!",""},die=20}, + {x=avatar_abad_x,y=avatar_abad_y,flip=false,audio="abad",text={"Aixó per furtar-me","el bol de cacaus,","imbèsil"},die=20}, + {x=avatar_batman_x,y=avatar_batman_y,flip=true,audio="batman",text={"Cert, esta me la","mereixia... però", "mira que be estàs!"},die=20}, + {x=avatar_batman_x,y=avatar_batman_y,flip=true,audio="batman",text={"Amb el que t'ha","costat pillar-me", "t'has ficat en forma"},die=20}, + {x=avatar_abad_x,y=avatar_abad_y,flip=false,audio="abad",text={"No me vingues en","tonteries,","mamarratxo."},die=20}, + {x=avatar_abad_x,y=avatar_abad_y,flip=false,audio="abad",text={"Creus que no he","notat que falta mig","bol de cacaus?"},die=20}, + {x=avatar_batman_x,y=avatar_batman_y,flip=true,audio="batman",text={"Jejejeje, es que","estàn molt bons!", ""},die=20}, + {x=avatar_batman_x,y=avatar_batman_y,flip=true,audio="batman",text={"Però si vols te","done del meu bol", "de tramussos."},die=20}, + {x=avatar_abad_x,y=avatar_abad_y,flip=false,audio="abad",text={"TRAMUSSOS...","",""},die=10}, + {x=avatar_abad_x,y=avatar_abad_y,flip=false,audio="abad",text={"M'atreviré a","passar l'última","frontera...?"},die=40}, }, } @@ -165,37 +177,38 @@ end function draw_scene() local txt_x = not scenes.current_scene[scenes.dnum].flip and 38 or 8 - view.origin(0,scenes.offset) + + view.origin(0,scenes.offset*o2aX) if scenes.step==0 then - draw.rectf(0,16,129,2,12) - draw.line(0,15,128,15,16) - draw.line(0,18,128,18,16) + draw.rectf(0,16*o2aX,129*o2aX,2*o2aX,12) + draw.line(0,15*o2aX,128*o2aX,15*o2aX,16) + draw.line(0,18*o2aX,128*o2aX,18*o2aX,16) elseif scenes.step==1 then - draw.rectf(0,8,129,19,12) - draw.line(0,7,128,7,16) - draw.line(0,27,128,27,16) + draw.rectf(0,8*o2aX,129*o2aX,19*o2aX,12) + draw.line(0,7*o2aX,128*o2aX,7*o2aX,16) + draw.line(0,27*o2aX,128*o2aX,27*o2aX,16) elseif scenes.step==2 then - draw.rectf(0,0,129,35,12) - draw.line(0,0,128,0,16) - draw.line(0,34,128,34,16) + draw.rectf(0,0,129*o2aX,35*o2aX,12) + draw.line(0,0,128*o2aX,0,16) + draw.line(0,34*o2aX+1,128*o2aX,34*o2aX+1,16) elseif scenes.step==3 then if not scenes.current_scene[scenes.dnum].flip then - draw.rectf(8,12,24,12,16) - draw.surf(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,10,10,9,13,20,10) + draw.rectf(8*o2aX,12*o2aX,24*o2aX,12*o2aX,16) + draw.surf(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,avatar_w,avatar_h,9*o2aX,13*o2aX,20*o2aX,10*o2aX) else - draw.rectf(97,12,24,12,16) - draw.surf(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,10,10,98,13,20,10,true) + draw.rectf(97*o2aX,12*o2aX,24*o2aX,12*o2aX,16) + draw.surf(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,avatar_w,avatar_h,98*o2aX,13*o2aX,20*o2aX,10*o2aX,true) end elseif scenes.step==4 then if not scenes.current_scene[scenes.dnum].flip then - draw.rectf(8,7,24,22,16) - draw.surf(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,10,10,9,8,20,20) + draw.rectf(8*o2aX,7*o2aX,24*o2aX,22*o2aX,16) + draw.surf(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,avatar_w,avatar_h,9*o2aX,8*o2aX,20*o2aX,20*o2aX) else - draw.rectf(97,7,24,22,16) - draw.surf(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,10,10,98,8,20,20,true) + draw.rectf(97*o2aX,7*o2aX,24*o2aX,22*o2aX,16) + draw.surf(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,avatar_w,avatar_h,98*o2aX,8*o2aX,20*o2aX,20*o2aX,true) end elseif scenes.step==5 then - text(string.sub(scenes.current_scene[scenes.dnum].text[1],1,scenes.char),txt_x,7,2) + text(string.sub(scenes.current_scene[scenes.dnum].text[1],1,scenes.char),txt_x*o2aX,7*o2aX,2) if scenes.char<#scenes.current_scene[scenes.dnum].text[1] then scenes.step=scenes.step-1 scenes.char=scenes.char+1 @@ -204,7 +217,7 @@ function draw_scene() 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) + text(string.sub(scenes.current_scene[scenes.dnum].text[2],1,scenes.char),txt_x*o2aX,15*o2aX,2) if scenes.char<#scenes.current_scene[scenes.dnum].text[2] then scenes.step=scenes.step-1 scenes.char=scenes.char+1 @@ -213,7 +226,7 @@ function draw_scene() 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) + text(string.sub(scenes.current_scene[scenes.dnum].text[3],1,scenes.char),txt_x*o2aX,23*o2aX,2) if scenes.char<#scenes.current_scene[scenes.dnum].text[3] then scenes.step=scenes.step-1 scenes.char=scenes.char+1 @@ -222,19 +235,19 @@ function draw_scene() scenes.char=1 end elseif scenes.step==8 then - draw.rectf(0,0,129,35,12) - draw.line(0,0,128,0,16) - draw.line(0,34,128,34,16) + draw.rectf(0,0,129*o2aX,35*o2aX,12) + draw.line(0,0,128*o2aX,0,16) + draw.line(0,34*o2aX+1,128*o2aX,34*o2aX+1,16) if not scenes.current_scene[scenes.dnum].flip then - draw.rectf(8,7,24,22,16) - draw.surf(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,10,10,9,8,20,20) + draw.rectf(8*o2aX,7*o2aX,24*o2aX,22*o2aX,16) + draw.surf(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,avatar_w,avatar_h,9*o2aX,8*o2aX,20*o2aX,20*o2aX) else - draw.rectf(97,7,24,22,16) - draw.surf(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,10,10,98,8,20,20,true) + draw.rectf(97*o2aX,7*o2aX,24*o2aX,22*o2aX,16) + draw.surf(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,avatar_w,avatar_h,98*o2aX,8*o2aX,20*o2aX,20*o2aX,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) + text(scenes.current_scene[scenes.dnum].text[1],txt_x*o2aX,7*o2aX,2) + text(scenes.current_scene[scenes.dnum].text[2],txt_x*o2aX,15*o2aX,2) + text(scenes.current_scene[scenes.dnum].text[3],txt_x*o2aX,23*o2aX,2) end if scenes.step<=8 then scenes.step=scenes.step+1 end view.origin(0,0) diff --git a/data/tiles.gif b/data/tiles.gif index 1a21783..9a95615 100644 Binary files a/data/tiles.gif and b/data/tiles.gif differ