Primera escena ajustada i Abad en 'HD'

This commit is contained in:
2026-03-15 18:19:20 +01:00
parent 3d9746b5f5
commit 6c6c5b62d6
5 changed files with 98 additions and 57 deletions

View File

@@ -5,6 +5,13 @@ local arcade_config = {
sprite_size = { w = 32, h = 32 }, sprite_size = { w = 32, h = 32 },
escala = 1.0, escala = 1.0,
org2arc_escala = 2.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 fullscreen = false
} }

View File

@@ -8,10 +8,13 @@ local arcade_config = require("arcade_config")
intro_wait=40 intro_wait=40
intro_step=0 intro_step=0
o2aX = arcade_config.org2arc_escala
function intro_init() function intro_init()
game_update = intro_intro game_update = intro_intro
intro_wait=400 intro_wait=400
surf.cls(16) surf.cls(16)
surf.target(logo) surf.target(logo)
surf.cls(16) surf.cls(16)
draw.text("JAILGAMES",0,0,15) draw.text("JAILGAMES",0,0,15)
@@ -24,7 +27,7 @@ function intro_init()
text("presenta",0,0,14) text("presenta",0,0,14)
surf.target(0) surf.target(0)
surf.source(logo) 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,28,35,72,10)
-- draw.surf(0,0,36,5,56,70,arcade_config.logo_sf.width,arcade_config.logo_sf.height) -- 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 elseif key.press(key.SPACE) then
intro_wait=1 intro_wait=1
end end
intro_wait=intro_wait-1 intro_wait=intro_wait-1
if intro_wait==0 then if intro_wait==0 then
if intro_step==0 then if intro_step==0 then
print("STEP 0")
surf.cls(16) surf.cls(16)
draw.rect(15,3,99,51,2) draw.rect(15*o2aX,3*o2aX,99*o2aX,51*o2aX,2)
view.origin(16,4) view.origin(16*o2aX,4*o2aX)
mapa_draw(10) 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) view.origin(0,0)
intro_step=intro_step+1 intro_step=intro_step+1
elseif intro_step==1 then elseif intro_step==1 then
print("STEP 1")
start_scene(scenes.intro_01,58) start_scene(scenes.intro_01,58)
intro_step=intro_step+1 intro_step=intro_step+1
elseif intro_step==2 then elseif intro_step==2 then
print("STEP 2")
surf.cls(16) surf.cls(16)
draw.rect(15,3,99,51,2) draw.rect(15,3,99,51,2)
view.origin(16,4) view.origin(16,4)

View File

@@ -1,5 +1,7 @@
require "map" require "map"
local arcade_config = require("arcade_config")
tiletype={void=0,nonpc=1,stair=2,switch=3,half=4,block=5} tiletype={void=0,nonpc=1,stair=2,switch=3,half=4,block=5}
mapa.wait=0 mapa.wait=0
mapa.step=0 mapa.step=0
@@ -93,7 +95,13 @@ function mapa_draw(hab)
for tx=0,11 do for tx=0,11 do
local tile=mapa[1+hab][1+tx+ty*12] local tile=mapa[1+hab][1+tx+ty*12]
if tile~=256 and (tile<126 or mapa.step>4) then 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 end
end end

View File

@@ -1,23 +1,35 @@
require "final" require "final"
require "audio" 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={ scenes={
intro_01= { 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= { 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= { 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=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=3,y=0,flip=false,audio="abad",text={"Què??","Però perquè???",""},die=20}, {x=avatar_abad_x,y=avatar_abad_y,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=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=4,y=48,flip=true,audio="batman",text={"Mira'm a mi. Estic","tot buenorro i faig", "esport"},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=3,y=0,flip=false,audio="abad",text={"Esport?????","I una merda!!","He de cuidar la panxa!"},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=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",text={"Pos t'aguantes.","Ja pots despedir-te", "dels cacaus..."},die=20},
}, },
intro_04= { 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={ abad_inici={
{x=4,y=0,flip=false,audio="abad",text={"Se va a enterar eixe","imbècil de Batman","quan el pille..."}}, {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à..."}} {x=4,y=0,flip=false,audio="abad",text={"Ara si que li puc","pegar una bona","cacauà..."}}
}, },
final= { final= {
{x=4,y=48,flip=true,audio="batman",musica=audio_song_batman,text={"AI!", "M'has fet mal!!!",""},die=20}, {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=3,y=0,flip=false,audio="abad",text={"Aixó per furtar-me","el bol de cacaus,","imbèsil"},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=4,y=48,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={"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=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=3,y=0,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={"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=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=4,y=48,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={"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=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=3,y=0,flip=false,audio="abad",text={"TRAMUSSOS...","",""},die=10}, {x=avatar_abad_x,y=avatar_abad_y,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_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() function draw_scene()
local txt_x = not scenes.current_scene[scenes.dnum].flip and 38 or 8 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 if scenes.step==0 then
draw.rectf(0,16,129,2,12) draw.rectf(0,16*o2aX,129*o2aX,2*o2aX,12)
draw.line(0,15,128,15,16) draw.line(0,15*o2aX,128*o2aX,15*o2aX,16)
draw.line(0,18,128,18,16) draw.line(0,18*o2aX,128*o2aX,18*o2aX,16)
elseif scenes.step==1 then elseif scenes.step==1 then
draw.rectf(0,8,129,19,12) draw.rectf(0,8*o2aX,129*o2aX,19*o2aX,12)
draw.line(0,7,128,7,16) draw.line(0,7*o2aX,128*o2aX,7*o2aX,16)
draw.line(0,27,128,27,16) draw.line(0,27*o2aX,128*o2aX,27*o2aX,16)
elseif scenes.step==2 then elseif scenes.step==2 then
draw.rectf(0,0,129,35,12) draw.rectf(0,0,129*o2aX,35*o2aX,12)
draw.line(0,0,128,0,16) draw.line(0,0,128*o2aX,0,16)
draw.line(0,34,128,34,16) draw.line(0,34*o2aX+1,128*o2aX,34*o2aX+1,16)
elseif scenes.step==3 then elseif scenes.step==3 then
if not scenes.current_scene[scenes.dnum].flip then if not scenes.current_scene[scenes.dnum].flip then
draw.rectf(8,12,24,12,16) 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,10,10,9,13,20,10) 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 else
draw.rectf(97,12,24,12,16) 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,10,10,98,13,20,10,true) 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 end
elseif scenes.step==4 then elseif scenes.step==4 then
if not scenes.current_scene[scenes.dnum].flip then if not scenes.current_scene[scenes.dnum].flip then
draw.rectf(8,7,24,22,16) 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,10,10,9,8,20,20) 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 else
draw.rectf(97,7,24,22,16) 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,10,10,98,8,20,20,true) 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 end
elseif scenes.step==5 then 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 if scenes.char<#scenes.current_scene[scenes.dnum].text[1] then
scenes.step=scenes.step-1 scenes.step=scenes.step-1
scenes.char=scenes.char+1 scenes.char=scenes.char+1
@@ -204,7 +217,7 @@ function draw_scene()
scenes.char=1 scenes.char=1
end end
elseif scenes.step==6 then 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 if scenes.char<#scenes.current_scene[scenes.dnum].text[2] then
scenes.step=scenes.step-1 scenes.step=scenes.step-1
scenes.char=scenes.char+1 scenes.char=scenes.char+1
@@ -213,7 +226,7 @@ function draw_scene()
scenes.char=1 scenes.char=1
end end
elseif scenes.step==7 then 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 if scenes.char<#scenes.current_scene[scenes.dnum].text[3] then
scenes.step=scenes.step-1 scenes.step=scenes.step-1
scenes.char=scenes.char+1 scenes.char=scenes.char+1
@@ -222,19 +235,19 @@ function draw_scene()
scenes.char=1 scenes.char=1
end end
elseif scenes.step==8 then elseif scenes.step==8 then
draw.rectf(0,0,129,35,12) draw.rectf(0,0,129*o2aX,35*o2aX,12)
draw.line(0,0,128,0,16) draw.line(0,0,128*o2aX,0,16)
draw.line(0,34,128,34,16) draw.line(0,34*o2aX+1,128*o2aX,34*o2aX+1,16)
if not scenes.current_scene[scenes.dnum].flip then if not scenes.current_scene[scenes.dnum].flip then
draw.rectf(8,7,24,22,16) 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,10,10,9,8,20,20) 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 else
draw.rectf(97,7,24,22,16) 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,10,10,98,8,20,20,true) 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 end
text(scenes.current_scene[scenes.dnum].text[1],txt_x,7,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,15,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,23,2) text(scenes.current_scene[scenes.dnum].text[3],txt_x*o2aX,23*o2aX,2)
end end
if scenes.step<=8 then scenes.step=scenes.step+1 end if scenes.step<=8 then scenes.step=scenes.step+1 end
view.origin(0,0) view.origin(0,0)

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.8 KiB

After

Width:  |  Height:  |  Size: 10 KiB