[NEW] Afegit sistema de mood per a l'abad

This commit is contained in:
2026-04-05 00:33:21 +02:00
parent b2cb8698b4
commit 82ca7cb2b5
5 changed files with 104 additions and 27 deletions

View File

@@ -4,7 +4,7 @@
o2aX = arcade_config.org2arc_escala
avatar_abad_x = 6
avatar_abad2_x = 8
avatar_abad2_x = 6
avatar_abad_y = 0
avatar_batman_x = 8
avatar_batman_y = 96
@@ -12,11 +12,14 @@ avatar_premiere_x = 138
avatar_premiere_y = 40
avatar_elalien_x = 6
avatar_elalien_y = 32
avatar_w = 20
avatar_h = 20
avatar_w = 22
avatar_h = 21
avatar_photo_w = avatar_w*2
avatar_photo_h = avatar_h*2
avatar_imp_x = 134
avatar_imp_y = 96
avatar_sf=surf.new(avatar_w, avatar_h)
scenes={
lluita_imp= {
@@ -26,10 +29,10 @@ scenes={
{x=avatar_imp_x, y=avatar_imp_y,flip=true,audio="imp",text={"","Grwuuuunnnn",""},die=20},
{x=avatar_abad_x,y=avatar_abad_y,flip=false,audio="abad",text={"Eeeerrrrggggg","Prruuuuuuummm","Uooooorrrr"},die=20},
{x=avatar_imp_x, y=avatar_imp_y,flip=true,audio="imp",text={"","GROOOOAAAARRR",""},die=20},
{x=avatar_abad_x,y=avatar_abad_y,flip=false,audio="abad",text={"A saber que li he dit!","TRANQUIL! TRANQUIL!!!"," CACAUS A MI!!!!"},die=20},
{x=avatar_abad_x,y=avatar_abad_y,flip=false,audio="abad",text={"A saber que li he dit!","TRANQUIL! TRANQUIL!!!"," CACAUS A MI!!!!"},die=20},
},
llibre_trobat={
{x=avatar_abad2_x,y=avatar_abad_y,flip=false,audio="abad",text={"Este llibre...","Es el de les tècniques","especials dels abad..."}},
{x=avatar_abad2_x,y=avatar_abad_y,flip=false,audio="abad",text={"Este llibre...","Es el de les tècniques","especials dels abad..."},mood="interessant"},
{x=avatar_abad2_x,y=avatar_abad_y,flip=false,audio="abad",text={"...","TÈCNICA 'CACAU AERI'","salt i dispar"}},
{x=avatar_abad2_x,y=avatar_abad_y,flip=false,audio="abad",text={"Ja se"," 'CACAU AERI'",""}},
},
@@ -37,7 +40,7 @@ scenes={
{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=avatar_abad_x,y=avatar_abad_y,flip=false,audio="abad",text={"Eh! On està el","bol de cacaus???",""},die=20},
{x=avatar_abad2_x,y=avatar_abad_y,flip=false,audio="abad",text={"Eh! On està el","bol de cacaus???",""},die=20, mood="sorpresa"},
},
intro_03= {
{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},
@@ -56,9 +59,9 @@ scenes={
{x=avatar_abad2_x,y=avatar_abad_y,flip=false,audio="abad",text={"Vaig a parlar en Premiere","que està al pis de dalt", "a vore si me pot ajudar"}},
},
abad_corfes={
{x=avatar_abad2_x,y=avatar_abad_y,flip=false,audio="abad",text={"Osti, està ple de","monstruacos.",""}},
{x=avatar_abad2_x,y=avatar_abad_y,flip=false,audio="abad",text={"Pos al que s'acoste","s'endurà una corfa","de cacau al cap!"}},
{x=avatar_abad2_x,y=avatar_abad_y,flip=false,audio="abad",text={"I si van altets","igual val la pena","ajupir-se..."}}
{x=avatar_abad2_x,y=avatar_abad_y,flip=false,audio="abad",text={"Osti, està ple de","monstruacos.",""}, mood="sorpresa"},
{x=avatar_abad2_x,y=avatar_abad_y,flip=false,audio="abad",text={"Els enviaré a altra","dimensió d'una cacauà!",""}},
{x=avatar_abad2_x,y=avatar_abad_y,flip=false,audio="abad",text={"Si van altets","igual val la pena","ajupir-se..."}}
},
abad_portes={
{x=avatar_abad2_x,y=avatar_abad_y,flip=false,audio="abad",text={"Qui ha tancat totes","les portes?",""}},
@@ -208,12 +211,40 @@ end
function play_music()
if scenes.current_scene[scenes.dnum].musica then
print("PLAY MUSIC "..scenes.dnum)
-- print("PLAY MUSIC "..scenes.dnum)
music.stop()
music.play(scenes.current_scene[scenes.dnum].musica)
end
end
function draw_abad_with_mood(mood, dx, dy, dw, dh)
local ox, oy =view.origin()
view.origin(0,0)
-- -- composicio
local curr_sf = surf.target()
surf.target(avatar_sf)
surf.cls(16)
draw.surf(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,avatar_w,avatar_h,0,0,avatar_w,avatar_h)
abad_add_mood(0,scenes.current_scene[scenes.dnum].x,0,scenes.current_scene[scenes.dnum].y,false,mood)
-- if mood=="sorpresa" then
-- draw.surf(240,0,11,4,16-scenes.current_scene[scenes.dnum].x,5-scenes.current_scene[scenes.dnum].y,11,4)
-- elseif mood=="enfadat" then
-- draw.surf(240,4,11,4,16-scenes.current_scene[scenes.dnum].x,5-scenes.current_scene[scenes.dnum].y,11,4)
-- elseif mood=="interessant" then
-- draw.surf(240,8,11,4,16-scenes.current_scene[scenes.dnum].x,5-scenes.current_scene[scenes.dnum].y,11,4)
-- else
-- abad.mood="normal"
-- end
-- Dibuixar
view.origin(ox, oy)
surf.target(curr_sf)
curr_sf = surf.source()
surf.source(avatar_sf)
draw.surf(0,0,avatar_w,avatar_h, dx, dy, dw, dh)
surf.source(curr_sf)
-- draw.surf(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,avatar_w,avatar_h, dx, dy, dw, dh)
end
function draw_scene()
local txt_x = not scenes.current_scene[scenes.dnum].flip and 38 or 8
@@ -235,19 +266,33 @@ function draw_scene()
-- 3, 4 -> Desplegar el avatar
elseif scenes.step==3 then
if not scenes.current_scene[scenes.dnum].flip then
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)
draw.rectf(8*o2aX,12*o2aX,avatar_photo_w+8, (avatar_photo_h+8)/2,16)
-- Només està disponible per a l'abad
if scenes.current_scene[scenes.dnum].mood then
draw_abad_with_mood(scenes.current_scene[scenes.dnum].mood, 18, 26, avatar_photo_w, avatar_photo_h/2)
-- 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
abad.mood="normal"
draw.surf(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,avatar_w,avatar_h,9*o2aX,13*o2aX,avatar_photo_w, avatar_photo_h/2)
end
else
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)
draw.rectf(97*o2aX,12*o2aX,avatar_photo_w+8, (avatar_photo_h+8)/2,16)
draw.surf(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,avatar_w,avatar_h,98*o2aX,13*o2aX,avatar_photo_w, avatar_photo_h/2,true)
end
elseif scenes.step==4 then
if not scenes.current_scene[scenes.dnum].flip then
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)
draw.rectf(8*o2aX,7*o2aX,avatar_photo_w+8,avatar_photo_h+4,16)
-- Només està disponible per a l'abad
if scenes.current_scene[scenes.dnum].mood then
draw_abad_with_mood(scenes.current_scene[scenes.dnum].mood, 18, 16, avatar_photo_w, avatar_photo_h)
-- 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
abad.mood="normal"
draw.surf(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,avatar_w,avatar_h,9*o2aX,8*o2aX,avatar_photo_w, avatar_photo_h)
end
else
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)
draw.rectf(97*o2aX,7*o2aX,avatar_photo_w+8,avatar_photo_h+4,16)
draw.surf(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,avatar_w,avatar_h,98*o2aX,8*o2aX,avatar_photo_w, avatar_photo_h,true)
end
-- 5, 6, 7 -> Escriure les 3 frases de diàleg
elseif scenes.step==5 then
@@ -283,11 +328,17 @@ function draw_scene()
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*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)
draw.rectf(8*o2aX,7*o2aX,avatar_photo_w+8,avatar_photo_h+4,16)
if scenes.current_scene[scenes.dnum].mood then
draw_abad_with_mood(scenes.current_scene[scenes.dnum].mood, 18, 16, avatar_photo_w, avatar_photo_h)
-- 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
abad.mood="normal"
draw.surf(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,avatar_w,avatar_h,9*o2aX,8*o2aX,avatar_photo_w, avatar_photo_h)
end
else
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)
draw.rectf(97*o2aX,7*o2aX,avatar_photo_w+8,avatar_photo_h+4,16)
draw.surf(scenes.current_scene[scenes.dnum].x,scenes.current_scene[scenes.dnum].y,avatar_w,avatar_h,98*o2aX,8*o2aX,avatar_photo_w, avatar_photo_h,true)
end
arc_textB(scenes.current_scene[scenes.dnum].text[1],txt_x*o2aX,7*o2aX,2)
arc_textB(scenes.current_scene[scenes.dnum].text[2],txt_x*o2aX,15*o2aX,2)