From 4901635bb7d99c066e8b461edaac6de1e4b02891 Mon Sep 17 00:00:00 2001 From: Sergio Valor Date: Tue, 1 Nov 2022 22:36:12 +0100 Subject: [PATCH] =?UTF-8?q?Retocando=20la=20abad=C3=ADa?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- data/items/items.png | Bin 1150 -> 1162 bytes data/room/06.room | 38 +++- data/room/06.tmx | 22 +- data/room/25.room | 351 +++++++----------------------- data/room/25.tmx | 26 +-- data/room/26.room | 18 +- data/room/26.tmx | 14 +- data/room/27.room | 58 +++-- data/room/27.tmx | 32 +-- data/room/28.tmx | 2 +- data/room/29.room | 88 ++++++-- data/room/29.tmx | 32 +-- data/room/30.tmx | 32 +-- data/tilesets/standard.png | Bin 7330 -> 7455 bytes data/tilesets/standard_zxarne.png | Bin 8841 -> 8983 bytes source/common/resource.cpp | 21 ++ source/common/resource.h | 7 +- source/credits.cpp | 31 ++- source/game.cpp | 8 +- source/room.cpp | 12 +- 20 files changed, 363 insertions(+), 429 deletions(-) diff --git a/data/items/items.png b/data/items/items.png index 354245cbc5a4d546d1e5bee269fe4cb44bccacbb..35161d117b83b489fc16ea09f343b06eab62d960 100644 GIT binary patch delta 1128 zcmV-u1eg2%2#N`iF@Ho!L_t(|ob6i6a@;TsTW9wFf7!i6TNnXA%1&o`ATF^bK0u13 zoV3U58|QhRFTimehgw%MmHu%YhuU9zYy;OEhotA;@9VJk6cHnLomHpwmV44uJqFW4wtP2qF`rk+?ko({jPtN;FRoC<*p+u zn?F7@-CV?V_fyF$drsc%DZT1h`LFnP_`P{!L7hw|m{cvQ1=eY*3UGUhqq@8a2B_Fw{|cN*?2L{N(R=3Y`{EC*P^yw8nPbTB<-7 z6Z-1L$9wX_vO6zaKqeTsoj;|M;!yrN30BYT z4_!8zE}ET7DEUek(QbQQg5JijENwYIyjd1{S9n?2i_@j zw149UG}==Y=XATkadF4L!zF?1w3Ks|#9cW13n@vc+pVVEL%wrJ@6L=#bC3hVcQsd2 zVBLV-AuC^ubfMg-!pEO6PlxwY`#V+UE~y>9)-W1UrQCT>EpQSZlitMg`NY4{wf`!| zNVlR&rjoC!-T74em5n>|FMS2L{mX~68-LDDIh~}EQ}2qbvQY(}ICu1`8L#H!aloIm zSO6Vx;I5MJrd)DJisg80sAmOtiQH*TOiuR_L7naIKo>yQ20tTV^}K^LCMq4~rxL4d zU;cYrdQNS~73PSlXGAsNv2xSg+^IxvTYg75{JHRjivwWjt_j)P02s{JSE%+u6eZ0k2T4F-e3U@#aA27|$1Fc=I5gTY`h7z_r3 u!C){L3F@HEoL_t(|ob6f5cI+?+o6O1o|FXNOQ=&=&JJUtaL7Pcz9s&bS z?>%1M7-NiAz;PT0TW2zv{&5@!+n;-ABd#e9PEWn>@Mk>O-X(yB)O(a20%%w5ulQ#? zl)kfv{FVKT-^qm2Obc0jR>3^<6W$&0^no!P?{j&uDsBcre~pb`)Xv5Itd*nGhba5K`i zEbglVRUOCdqko-Ct|C++=-xBi6}V()dTxJ(%TfZPU}bLX%*^V3)jvzHOSY?W)sdOa zUmu!kF2;5B%jB6oC9n3FUiQrVXM8LCPTZJaCsPT=RSRo@d77*O)E?u=F0Wgw6{;}4 zGrsYC?$f_SR-ux;GGCl*cHvaO4yfWQ<;{|(ZZJm3Rewmf?-HWc7#EbUCfnJIx{lu) zl~6De!5K35c5YSlp{h5I25haUGuKtZq7Ktz@-aTekN%CvP-y{n@|6m9YiL)kxe8P< zMPJqUaF2diR_BEZ$OY%t6v@h7RaeDS*=OC?AJy)=n#XSqpvwj>CLc<7w%Zb50ehii}Gn?z1&#KRcxC9SZ~P zF17G%A+`1ts)e%=!2HiO$1RQow6Det;;ghV5@7);2bDI((^bJL88yRJ50=I6#?lyL z+`jLk5?gbGQ4eLDKJ(3NJN?W?#=pWn?p-p~1b@2Vm=o$u1XQ)H{4pID2lH1+Fncb4 z=%P_~(X3oT&X>E0R@?Iy^n$KCpx5jBUt@5l;o2DD3Kz*`330cm^3P=1+Uh=&XS^#o zF&XFtf7x2qnIot!iRg>Tt3zBxb|4D$zcpQecxy)a>;xUDEC8jO%|OTZ6IlKZ+$r;D zM}H0IXpdE#(ybzniyi+8w*=19V$N9-SE1}rxFkj0YBjAM^3EZhl^NsaAO;lQ*<5vj zRRdOs%zPo-g|btHk3VCc4)3S-SE@{1QY(C=;b@4Ja^>B%zyLfZy@=`a)BffE$|2mX z$dbwAvuam9*?wkYXa2db0EOF!v>MLJxPLoICdb|#*=iuFHLFR;X1v373*!KdLKwKJ zB)nzkq2PKXiAlg`26c(-v}R1y&Ly(^9f*!rh_dGicYsy6F_G!8JD_6Ynt^D5Rb8wk zR#_QQ_8gG~uSNpO?6fblTe0&-MP&?Ill@l6I$3of*+F3yvGEY&*ll;}8yzsGY*j5A z{umr}4u_@opP({N-6i+bf1}Z8G#ZUYqtR$I8jVJy(P%UpjYgx -32,32,32,32,0,0,0,0,32,32,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68, -32,32,0,0,0,0,0,0,0,0,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92, +426,427,426,427,0,0,0,0,426,427,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68, +427,426,427,0,0,0,0,0,0,0,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92, 93,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,93, 117,0,0,0,426,427,426,427,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,117, 117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,117, -117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,117, -141,0,0,426,427,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,117, -32,0,0,0,426,427,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,117, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,526,403,403,403,403,403,550,0,0,0,117, +117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,526,403,404,404,117, +141,0,0,426,427,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,526,0,0,0,0,117, +32,0,0,0,426,427,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,526,0,0,0,0,0,117, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,526,403,404,404,404,405,550,0,0,0,117, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,526,0,0,0,0,0,0,0,550,0,0,117, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,526,0,0,0,0,0,0,0,0,0,403,403,117, -32,67,68,67,68,403,403,403,403,403,403,0,0,0,526,67,68,67,68,67,68,67,68,0,0,0,0,0,0,0,140,141, -32,91,92,91,92,0,0,0,0,0,0,0,0,526,0,91,92,91,92,91,92,91,92,0,0,0,0,0,0,0,0,32, -135,0,0,0,0,0,0,0,0,0,0,0,526,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -135,0,0,0,0,0,0,0,0,0,0,526,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,556,0,0,0,0,0,0,0,0,0,0,526,0,0,0,0,0,0,0,0,0,403,404,117, +32,67,68,67,68,404,404,404,404,404,405,0,0,0,403,67,68,67,68,67,68,67,68,405,0,0,0,0,0,0,140,141, +32,91,92,91,92,0,0,0,0,0,0,0,0,0,0,91,92,91,92,91,92,91,92,0,0,0,0,0,0,0,0,32, +135,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,428,0,0,0,0,0,0,0, +135,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,556,0,0,0,0,0, 89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90 diff --git a/data/room/25.room b/data/room/25.room index 419c167..b0bb2b9 100644 --- a/data/room/25.room +++ b/data/room/25.room @@ -1,4 +1,4 @@ -name=no 25 +name=THE CHAPPEL bgColor=blue border=yellow tileMapFile=25.tmx @@ -15,15 +15,15 @@ tileSetFile=batman_bell.png animation=batman_bell.ani width=16 height=16 -x=14 -y=12 +x=28 +y=13 vx=0 vy=0 -x1=14 -y1=12 -x2=14 -y2=12 -color=bright_cyan +x1=28 +y1=13 +x2=28 +y2=13 +color=cyan [/enemy] [enemy] @@ -31,290 +31,97 @@ tileSetFile=bell.png animation=bell.ani width=16 height=16 -x=14 -y=2 +x=28 +y=10 vx=0 vy=0 -x1=14 -y1=2 -x2=14 -y2=2 -color=yellow -[/enemy] - -[enemy] -tileSetFile=chip.png -animation=chip.ani -width=8 -height=16 -x=5 -y=3 -vx=0 -vy=0 -x1=5 -y1=3 -x2=5 -y2=3 -color=bright_blue -[/enemy] - -[enemy] -tileSetFile=chip.png -animation=chip.ani -width=8 -height=16 -x=6 -y=3 -vx=0 -vy=0 -x1=6 -y1=3 -x2=6 -y2=3 -color=bright_red -[/enemy] - -[enemy] -tileSetFile=chip.png -animation=chip.ani -width=8 -height=16 -x=7 -y=3 -vx=0 -vy=0 -x1=7 -y1=3 -x2=7 -y2=3 -color=bright_magenta -[/enemy] - -[enemy] -tileSetFile=chip.png -animation=chip.ani -width=8 -height=16 -x=8 -y=3 -vx=0 -vy=0 -x1=8 -y1=3 -x2=8 -y2=3 -color=bright_green -[/enemy] - - -[enemy] -tileSetFile=chip.png -animation=chip.ani -width=8 -height=16 -x=9 -y=3 -vx=0 -vy=0 -x1=9 -y1=3 -x2=9 -y2=3 -color=bright_cyan -[/enemy] - - -[enemy] -tileSetFile=chip.png -animation=chip.ani -width=8 -height=16 -x=10 -y=3 -vx=0 -vy=0 -x1=10 -y1=3 -x2=10 -y2=3 -color=bright_yellow -[/enemy] - - -[enemy] -tileSetFile=chip.png -animation=chip.ani -width=8 -height=16 -x=11 -y=3 -vx=0 -vy=0 -x1=11 -y1=3 -x2=11 -y2=3 -color=bright_white -[/enemy] - -[enemy] -tileSetFile=chip.png -animation=chip.ani -width=8 -height=16 -x=12 -y=3 -vx=0 -vy=0 -x1=12 -y1=3 -x2=12 -y2=3 -color=bright_black -[/enemy] - -[enemy] -tileSetFile=chip.png -animation=chip.ani -width=8 -height=16 -x=5 -y=7 -vx=0 -vy=0 -x1=5 -y1=7 -x2=5 -y2=7 -color=blue -[/enemy] - -[enemy] -tileSetFile=chip.png -animation=chip.ani -width=8 -height=16 -x=6 -y=7 -vx=0 -vy=0 -x1=6 -y1=7 -x2=6 -y2=7 -color=red -[/enemy] - -[enemy] -tileSetFile=chip.png -animation=chip.ani -width=8 -height=16 -x=7 -y=7 -vx=0 -vy=0 -x1=7 -y1=7 -x2=7 -y2=7 -color=magenta -[/enemy] - -[enemy] -tileSetFile=chip.png -animation=chip.ani -width=8 -height=16 -x=8 -y=7 -vx=0 -vy=0 -x1=8 -y1=7 -x2=8 -y2=7 -color=green -[/enemy] - - -[enemy] -tileSetFile=chip.png -animation=chip.ani -width=8 -height=16 -x=9 -y=7 -vx=0 -vy=0 -x1=9 -y1=7 -x2=9 -y2=7 +x1=28 +y1=10 +x2=28 +y2=10 color=cyan [/enemy] - [enemy] -tileSetFile=chip.png -animation=chip.ani -width=8 +# Campana izquierda +tileSetFile=bell.png +animation=bell.ani +width=16 height=16 -x=10 -y=7 +x=6 +y=2 vx=0 vy=0 -x1=10 -y1=7 -x2=10 -y2=7 -color=yellow -[/enemy] - - -[enemy] -tileSetFile=chip.png -animation=chip.ani -width=8 -height=16 -x=11 -y=7 -vx=0 -vy=0 -x1=11 -y1=7 -x2=11 -y2=7 -color=white +x1=6 +y1=2 +x2=6 +y2=2 +color=cyan [/enemy] [enemy] -tileSetFile=chip.png -animation=chip.ani -width=8 +# Dong izquierdo +tileSetFile=dong.png +animation=dong.ani +width=22 height=16 -x=12 -y=7 +x=6 +y=4 vx=0 -vy=0 -x1=12 -y1=7 -x2=12 -y2=7 -color=black +vy=0.5 +x1=6 +y1=4 +x2=6 +y2=13 +color=cyan [/enemy] +[enemy] +# Campana derecha +tileSetFile=bell.png +animation=bell.ani +width=16 +height=16 +x=20 +y=2 +vx=0 +vy=0 +x1=20 +y1=2 +x2=20 +y2=2 +color=cyan +[/enemy] - - - - - +[enemy] +# Dong derecha +tileSetFile=dong.png +animation=dong.ani +width=22 +height=16 +x=20 +y=13 +vx=0 +vy=-0.5 +x1=20 +y1=4 +x2=20 +y2=13 +color=cyan +[/enemy] [item] tileSetFile=items.png tile=48 -x=17 -y=8 +x=1 +y=2 counter=1 +[/item] + +[item] +tileSetFile=items.png +tile=48 +x=26 +y=13 +counter=2 [/item] \ No newline at end of file diff --git a/data/room/25.tmx b/data/room/25.tmx index 175856a..164e237 100644 --- a/data/room/25.tmx +++ b/data/room/25.tmx @@ -5,19 +5,19 @@ 67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68,67,68, 91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92,91,92, -93,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -117,0,0,0,0,157,158,159,160,161,162,163,164,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -117,0,0,0,0,181,182,183,184,185,186,187,188,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,403,403,403,403,403,403,403,403,403,403,403,403,403,32,32, -117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,32, -141,0,0,0,0,0,0,0,0,0,0,0,426,427,426,427,426,427,0,0,0,0,0,0,0,0,0,0,0,403,32,32, -32,0,0,0,0,0,0,0,0,0,0,0,93,0,0,0,0,93,0,0,0,0,0,0,0,0,0,0,0,0,32,32, -0,0,0,0,0,0,0,0,0,0,0,0,117,0,0,0,0,117,0,0,0,0,0,0,0,0,0,0,0,403,32,32, -0,0,0,0,0,0,0,0,0,0,0,0,141,0,0,0,0,141,0,0,0,0,0,0,0,0,0,0,0,0,32,32, +93,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,93, +117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,117, +117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,117, +117,398,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,141, +117,0,0,0,0,0,0,0,0,0,0,0,0,0,526,93,550,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32, +117,404,405,0,0,0,0,0,0,0,0,0,403,404,404,404,404,405,400,0,0,0,0,0,0,0,0,0,0,0,0,0, +117,0,0,0,0,0,0,0,0,0,399,400,0,0,0,117,0,0,0,428,0,0,0,0,0,0,0,556,0,0,0,0, +117,0,0,428,0,428,0,0,0,428,0,0,0,0,0,117,0,0,0,0,0,0,0,526,403,404,404,32,32,32,32,32, +117,0,428,0,0,0,0,0,0,0,0,0,0,0,0,117,0,0,0,0,0,0,526,0,0,0,0,32,0,0,32,32, +141,556,0,0,0,0,0,0,0,0,0,0,0,0,0,117,0,0,0,0,0,526,0,0,0,0,0,32,0,0,32,32, +32,404,404,405,399,0,0,0,397,0,0,0,403,404,404,404,404,405,0,403,405,0,0,0,403,404,404,32,32,32,32,32, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,117,0,0,0,0,0,0,0,0,0,0,0,135,0,0,32,32, +0,0,0,0,0,0,0,556,0,0,0,0,0,89,90,141,556,0,0,0,0,0,0,0,0,89,90,135,0,0,32,89, 89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90 diff --git a/data/room/26.room b/data/room/26.room index 31a74e7..6815b2d 100644 --- a/data/room/26.room +++ b/data/room/26.room @@ -60,18 +60,18 @@ color=yellow [/enemy] [enemy] -# Dong campana uno +# Dong izquierda tileSetFile=dong.png animation=dong.ani width=22 height=16 x=1 y=2 -vx=0.6 +vx=0 vy=0 x1=1 y1=2 -x2=28 +x2=1 y2=2 color=yellow [/enemy] @@ -94,19 +94,19 @@ color=yellow [/enemy] [enemy] -# Dong campana dos +# Dong derecha tileSetFile=dong.png animation=dong.ani width=22 height=16 x=28 -y=7 -vx=-0.6 +y=2 +vx=-0 vy=0 -x1=1 -y1=7 +x1=28 +y1=2 x2=28 -y2=7 +y2=2 color=yellow [/enemy] diff --git a/data/room/26.tmx b/data/room/26.tmx index af70133..8f46176 100644 --- a/data/room/26.tmx +++ b/data/room/26.tmx @@ -8,16 +8,16 @@ 93,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,93, 117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,117, 117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,117, -141,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,526,403,0,0,0,0,117, -32,0,0,0,0,0,0,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,0,0,0,0,0,0,117, +141,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,526,428,0,0,0,0,117, +32,0,0,0,0,0,0,403,404,404,404,404,404,404,404,404,404,404,404,404,404,404,404,404,405,0,0,0,0,0,0,117, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,117, -0,0,0,0,0,403,550,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,141, -93,0,0,0,0,0,0,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,0,0,0,0,0,0,32, +0,0,0,0,0,428,550,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,141, +93,0,0,0,0,0,0,403,404,404,404,404,404,404,404,404,404,404,404,404,404,404,404,404,405,0,0,0,0,0,0,32, 117,550,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -141,0,550,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,526,403,0,0,0,0,0, -32,32,32,32,0,0,0,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,403,0,0,0,32,32,32,32, +141,0,550,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,526,428,0,0,0,0,0, +32,32,32,32,0,0,0,403,404,404,404,404,404,404,404,404,404,404,404,404,404,404,404,404,405,0,0,0,32,32,32,32, 93,0,0,93,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,93,0,0,93, -141,0,0,141,0,0,0,0,0,0,0,0,0,0,526,93,550,0,0,0,0,0,0,0,0,0,0,0,141,0,0,141, +141,0,0,141,0,0,0,0,0,0,0,0,0,0,526,428,550,0,0,0,0,0,0,0,0,0,0,0,141,0,0,141, 89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90,89,90 diff --git a/data/room/27.room b/data/room/27.room index e6290c8..a1778dc 100644 --- a/data/room/27.room +++ b/data/room/27.room @@ -1,33 +1,49 @@ -name=no 27 -bgColor=black -border=red +name=the backyard +bgColor=blue +border=cyan tileMapFile=27.tmx tileSetFile=standard.png roomUp=28.room roomDown=29.room -roomLeft=0 +roomLeft=26.room roomRight=0 -[enemy] -tileSetFile=diskette.png -animation=diskette.ani -width=16 -height=16 -x=2 -y=2 -vx=0 -vy=0 -x1=2 -y1=2 -x2=2 -y2=2 -color=magenta -[/enemy] +#[enemy] +#tileSetFile=diskette.png +#animation=diskette.ani +#width=16 +#height=16 +#x=2 +#y=2 +#vx=0 +#vy=0 +#x1=2 +#y1=2 +#x2=2 +#y2=2 +#color=magenta +#[/enemy] [item] tileSetFile=items.png -tile=1 +tile=28 x=1 -y=1 +y=13 counter=1 +[/item] + +[item] +tileSetFile=items.png +tile=32 +x=11 +y=14 +counter=2 +[/item] + +[item] +tileSetFile=items.png +tile=32 +x=14 +y=14 +counter=3 [/item] \ No newline at end of file diff --git a/data/room/27.tmx b/data/room/27.tmx index bdbb052..9bfe731 100644 --- a/data/room/27.tmx +++ b/data/room/27.tmx @@ -3,22 +3,22 @@ -25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25 +67,68,67,68,67,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17, +91,92,91,92,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17, +93,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17, +117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,523,257,0,0,0,0,0,17, +117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,257,0,0,0,0,0,0,0,17, +117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,17, +117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,305,305,305,0,305,0,0,0,0,0,17, +117,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,305,0,305,305,305,305,0,305,305,0,0,0,17, +141,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,305,0,305,0,305,305,305,305,0,0,0,0,0,17, +32,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,305,0,305,305,305,305,305,305,0,305,0,0,17, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,305,305,305,305,305,305,305,305,305,0,0,0,17, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,305,305,305,41,41,305,305,305,0,0,0,17, +32,426,427,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,305,0,305,0,41,41,305,0,0,305,0,0,17, +93,0,426,427,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,305,0,0,41,41,0,0,305,0,0,0,17, +141,426,427,426,427,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,41,41,0,0,0,0,0,0,17, +89,90,89,90,89,90,89,90,89,90,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,17,0,523,17,17,17 diff --git a/data/room/28.tmx b/data/room/28.tmx index 87099db..750360c 100644 --- a/data/room/28.tmx +++ b/data/room/28.tmx @@ -18,7 +18,7 @@ 25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25 +25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,0,25,25,25,25,25,25,25 diff --git a/data/room/29.room b/data/room/29.room index 643d187..9ef11eb 100644 --- a/data/room/29.room +++ b/data/room/29.room @@ -1,33 +1,91 @@ -name=no 29 -bgColor=black -border=red +name=QUO VOIDIS +bgColor=bright_black +border=black tileMapFile=29.tmx tileSetFile=standard.png roomUp=27.room roomDown=0 roomLeft=30.room roomRight=0 +itemColor1=green +itemColor2=magenta [enemy] -tileSetFile=diskette.png -animation=diskette.ani +tileSetFile=qvoid.png +animation=qvoid.ani width=16 height=16 -x=2 -y=2 +x=7 +y=1 vx=0 -vy=0 -x1=2 -y1=2 -x2=2 -y2=2 +vy=0.7 +x1=7 +y1=1 +x2=7 +y2=13 color=magenta [/enemy] +[enemy] +tileSetFile=qvoid.png +animation=qvoid.ani +width=16 +height=16 +x=12 +y=6 +vx=0 +vy=0.7 +x1=12 +y1=1 +x2=12 +y2=13 +color=green +[/enemy] + +[enemy] +tileSetFile=qvoid.png +animation=qvoid.ani +width=16 +height=16 +x=17 +y=8 +vx=0 +vy=0.7 +x1=17 +y1=1 +x2=17 +y2=13 +color=red +[/enemy] + +[enemy] +tileSetFile=qvoid.png +animation=qvoid.ani +width=16 +height=16 +x=22 +y=10 +vx=0 +vy=0.7 +x1=22 +y1=1 +x2=22 +y2=13 +color=yellow +[/enemy] + [item] tileSetFile=items.png -tile=1 -x=1 -y=1 +tile=20 +x=9 +y=9 counter=1 +[/item] + +[item] +tileSetFile=items.png +tile=20 +x=30 +y=6 +counter=2 [/item] \ No newline at end of file diff --git a/data/room/29.tmx b/data/room/29.tmx index bb69264..c68ccb8 100644 --- a/data/room/29.tmx +++ b/data/room/29.tmx @@ -3,22 +3,22 @@ -25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,25, -25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25 +133,133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,505,133, +133,133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,505,0,133, +133,133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,505,0,0,133, +133,133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,505,0,0,0,133, +133,133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,505,0,0,0,0,133, +133,133,0,0,228,228,228,0,0,228,228,228,0,0,228,228,228,0,0,228,228,228,0,0,228,228,0,0,228,0,0,133, +133,133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,133, +133,133,228,228,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,228,230,133, +133,133,228,228,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,133, +133,133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,133, +133,133,0,0,228,228,228,0,0,229,228,228,0,0,228,228,228,0,0,228,228,228,0,0,228,228,0,0,0,0,0,133, +133,133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,228,228,133, +133,133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,133, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,228,228,0,0,0,0,133, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,133, +133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133 diff --git a/data/room/30.tmx b/data/room/30.tmx index 67c84f6..d82f3bd 100644 --- a/data/room/30.tmx +++ b/data/room/30.tmx @@ -3,22 +3,22 @@ -25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25, -25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25 +133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133, +133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,133, +133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,133, +133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,133, +133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,133, +133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,133, +133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,133, +133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,133, +133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,133, +133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,133, +133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,133, +133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,133, +133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,133, +133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +133,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133 diff --git a/data/tilesets/standard.png b/data/tilesets/standard.png index 8954be63b3569ecb4487d399b4eb2c98e5b1bb95..3a0627a8d4921b86245bff9cae49ca3c0cea5a22 100644 GIT binary patch delta 6670 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 UFk|W=0Qz?fbd7Z?wH%}W2kk1wIsgCw diff --git a/data/tilesets/standard_zxarne.png b/data/tilesets/standard_zxarne.png index b69c8b9800f418577d78160375f7b9e16be4da2e..c37d65deb2ff3e38c792e115827ee45036983198 100644 GIT binary patch literal 8983 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 literal 8841 zcmaKS2UrtNwC^SXAs|GGpa_EW4uU91NkFQAAVnlp6_6r=AWZ{=CL&5FND)v#k*XA_ z2C)3;MWpu@sh#K@*UM)Y2IQ2e50 z48mKW+SKsQLHI5E4+)=t$r}f2>Pv?WWbL&&zp=jmrg~UoZ>cW8CA7VJYVD72k2(@x zy@y`=!ylD5$@gpPbG&JmuLOWvkp!rXVok=eX=o0w1ZX zzlyhd+O%xPAAyfVuF1y3nvT}RYF7^WFDlS>linzkHtraGbh_L)7n9C;4fez&GWmca;(MYhoqhCFi zI^P?@@+On(j_bMxc&C?L&6&viS9&9UIN0w8XEhP=<@p`_XkX!K&->F;KZ1glNi(lr zA53@+czWcCb=`Z)n)5e1^ueA&mE7d4wC~&C71qkE-S#IMo-_$Aa;&ecQai1M+e@)M z^!vA1W1_?Oqh?{6@vy^#q|j9*k})yhA=)Xa2^@7YmGWUHb79(tDws^YLJcl3IC@)6 zx!aFy2(mYF$!1?EZ`_pntkCxO{zBBq7gfyX3%!+zlw;dGilqNSu^U< zChr$o$cp!ZypOt4{s4oF(jaN_$m{!yufg3_@%6lco~oQ zWaTxsdV5~_++=>>^6B$d4kyFPen;8d;?p14wS`oCftta^kvnzM`J8&;9QN0GXOrO~ zpU|)vpWW{IriuGZGomz5D}dVeP*59SAa?}I0lbrGZxY#6N^b#$SyXL>;?uyyf*89^ zDKI07eADVq4+x_nGK5mBQOqBUd5)FNi($&MLFchG&-SWMC3#zS@!-9b&WwNUqBul> z(;(DIx2l34yA-yuOvSlDgBROXjX0Ja%0dP%g=O8Z& zy~9xNa9kcQ^~`WkWs33VHbk>95=f>3Mnsr=`+s9hDE&cIjXELqT=h3(%0~|y>HGeK zjI!U>0CLA^m~&Uc@>R5jMJo(PtL=o438FzKOCsZqBNX&+Q6tbrbsxp0{q=^XZ7fcxhg+0+Bx zloZh?RC^crf0gnJlgg-ecn(#%$*FHBL*d5`Gt4M`?LzRc8Yl9j+%sLqeXU6>`MzBq z57W}~*aiig*3_IRB;3zxuWt-M(se*!76urI00~>*WUvGJ`vA%e4hUlafsb?my9SV8 z0R;jNzbvu){~h@rAi5Ae#B1;x)~`0=O%0xy{H%g=;IU3lpb@`qety56`MHtIPfJXY zt6QI^3ldKE-(COtCjMkAvDk#0gJ_=l<<6g3RS2-&+n7;%^f`L-2M6M?2CWDadAHl6 z5z8EZ$Ow2p?0I4v_(xCq%6)a<2RYcT-0@eLS1YZZaIB6JB31*wzC-gkONOm~hN9fB zYvBIs>|ZVm{7G*!(3T`zSkhAM6V$ktiLLg!1KN$apVCRZJYN*VZU$iwi@IPpGJbTe zGRr=NxzzhGYpY)(#I-xoA~0!w`+gHnP>msRGS!`_nFMYlD(y6|gOAV8X!`ajB`CN$ zb=SZ8V)YL2%piX!AjbL^5ouO((qHARNy(UX*D>lW(Rg?oB49^KR@<4Y0_*JF-;kS3 z5kR!7B7@JP>KDbxUzx90e=Q*!91ZoQ0{u$Jb}Kb2VuVw-3Gt2jf0o$4Itb@{ot)jt zUB>sSy~iWeAOwIDlV6gq=d$6!y+wK&&k8n`rch3>bNa$NQ*snFAyx&bIMAMQPvjKC zwOi}mLjf0Npw{DQ_obwS#RQjKCqGxa3%9HoIhFb8D=+|W^a_mgqT>NDLjRiqcz8J& zc=_!w1RMMw0hA+vafT7XHpGzvEJv)sN{;^aq`-fizPrkE$SiX>9Q6WZpl7V^3TmV^ z#I?{RHr~|0o=oq+aOw2L1ze~CI2!3k{5GY3Gt_R4#Isi;XC6X?-B(}(O!&Bf3h8}7 zg#ws(YT3U3T7x-=T9{A)*_>}JB?fcA3;U><@ftyxa;+K#-lP@}Yo%~2Tr|50v z!{QU3N~-24of((-$Khe@qwV~&5_fb$e_4d|hz43>1r^|s)gRwEK?C|_AYv7<`@B^M35aJ6qrDsv_5gJf zJAgWq6ti5xE#9vESmo3+C&BtZ^w$;G>{uf&q(7H^8kQu@@LE6p`He_ig@-CwN3bfz zZrs4%F0D7L7b>V~YIfq`fxe=?IW%qMngU=B@3?>rlY&f_v3<>6V7TpND)==;V!|Ll zO(9A(=C9d%Z?Q!C4$ckXe#7){Z?vCCboSVoou8`b{b>oim|kEMRCdxfWFgIKZpCYY zH`%%)WvQdt`K)=GLc$kvfn2j^i0m}Dt!Vn#Q<6{Cc4zx^2^hka$pvoL5|r?FM8npT zc~nh3IQL6Vp*!wJ^_gi%MdFCo7phWvncfy)ZZXQxC*`NDls&yKqAzC-^i<3hg#}ui z5&Kd=r$DIGsx@1u(C^XLj^>e}8Q%>BlAlFT=rr^dvnCX(dhOP=&Z%9eP-z0k4Y z`X5E_P>%v!)7VY_r=%}IpS$IuUCoHFGGMOx_$;0hcwLs3cs5&`*BhUHksA-i;t+!x^uxw<{7&kuHv=mx(5P;=CG&zAs3&@d!%Mji$$yGGjL2;Pc(0Bc z+K!ny-WKyGm1v%K&M0Vm{kL)Y4CTCc{o0X5J%&>Mtxjdle1YMgCOV2%u7y+@CAszE zl>$`uwTH#J5}i7osx3Koek>YO2M>*&Nbr+;_AYKNA>$0>2;;OT5+OU}_`CgvWMXC* zVwzX%Yf28!B$mHx>`bzKN32&)+}Eb7d|+0#-@GU>`vdR^L%AwO&I%6f5%M_c0AqU{ zVjZ8{+D5t*z8@J0&-Z)&bjGkL*17cB#Hz!~E8FPk+QGc}oVjY&M_%f|deR3 zIVp3<_)Pf^4I8b0?Rv%fdwN7J1~JrA-uV~{H2b5S(+lKFU7_^+xj%!k^yiX=FNgsD zw2}^*jpK9^ZfJ!Vb*`EYLt7Y7M;h49#ej58ItiFQnGUOZBv)e-={wj@$dC<6zbZ?| z?+D!o*eAsLv~n`!1TM6%n8mrjnJH-h4MEKvc+KlHws5SLf~TGBsbY8*S(9S z^h7U_ulazcn~A!EGU7NHL!FBLy`9`?qH3POdeac{dK&VCHK*$1PW)huvqM2+Bf6t!AK-1|{ z%4EA~2s(@!bnitmgLumzEM;aDa@~6e5UG8FWw%vF!9i0miQTV2Fl(M)64YQD(!r3C zbV0T_4P|5<^|4@T!fzq>Pk0u(m-m=JBj@FnyZ;>L8{TpD9U&{%=b5XDSYg%$bPrte zU$IZ9^dR|;Je>{7Z$r@$%4U5SebF9?*}sdt7mN3kddctl`aC_kwQLG!*{ENAts7?1dII%>Gf zXLMb2PEjb}HQ`v2?*DX(Kc`N?_ER@oPTk`kj_U1n^O`_B%r;2#BUjpcL_udwxzx$Y z8Zn;&(AQylEZfr8mt9!tYoPglF^3^vtd$@@@E)ad^7xHX^Lb@6bF}inB;~s^$=r27 z=dKy6hKL|T>AN{I!K>wK_qh4RO2XoNW$tJX502Jp%kcAzMZA5h{)^n0anJ#MK*v$o zu323xwUbIe!pL+={v#WwfTNj^(W{Y#*U}m&oJz!MSReF~ifBE;k)_QmQt$_}vrU3f zvoPkZsS4ES+c~Bkqp%I;r~|H~-6*YK^IS^3cEdZ3Z`C!sWAb7>51{CpFTO)7ttt)I{S zI4gF6Qg3hYpSjr9^Tzq?8U)5dEb+Yof{ zsh9B+8icLH@ejNjJ`BGoev;UytRb}v7kM%h%SH|t24YFO#Es9J5>2RE=F~5qy(fhSzn9Blo|0B29 zzx+g&Fl1pu`DfWev@BlXWIHcrMHpCSFJ;d0mXi z9#!E{nDIKhHFLtm540L?gZYOsZ#QId{Nc|ziy+jz<1RfE;H|lqt8;SXLZ2P})N;2! zjZad|lGZ@rkjjbQbZaPWYjiBcN~TU%PJUhG7)H9gfqElC3u~A8mL} zfWDzi3T4lFw^0#)cI`5)*Vm=a>!11$x>sHk@MqUq`K$As5Tz=2aTHN{#pu{?NQsdn zx7`B>el~a0&b!Ha11*S~u~GZ6hdFitIZj zUcB06;9a{K@W4jJcI1oC?QU4X5Dsmd&TzeyxB9UHA_ezguJek7p~`9bhp*Zi_eQst z1asmWy@F_(kPJX<(ecW&o1PK+LqY_)OPpV*N>R{OG(i3Usco@YC2oGDmr^O5FMfudQs3< zud_Fp?5MpMhx?FvK5W~PKPcq5v&A?e6B&rp)Do<(ZrOT^D```2ufqmK`T=1JL7@$+1(i zH#BtKKW^VwT_{ls89>pWbq&yKx4lVZzPusMJ7%h&S49PzmZbh^vl7bH4os(kjmu*8 zdP84g*=L^{VrLfAw+sfZQ2)|VXn1>@0$`Rgk zc<%1$)1gmfLO!BH_DA&2WFZxKvXJK8O^OxrAuH$*TA0bFcTHzXm*tAc4zyj4E>I&b z?GYl}kGdM7? z`_zdRi!zslnK)AfXk1uOjR>kqLE*7fI&LytmdFA6B(-fOg^^SrS|3#0O)5DjyHXdN zoq(3N)c`M=x%s~nHZ(vdk_)y2PSmYZIp>dbW;i*!4l{VZbSmm!0=Ky#bqWm#c{&q+ z`+iBmHZgNoabdr6?+u{=*6EbX__~Cmn30rgA*}fBVdx2wwwv(hf68(&kEma3<$rO0 zGlNc(@_43qVp}uo`+Ij@Y7dZ14c#U_N~w=cvhCd-Fq<;5F+_OY=Gt=|FypCNy&men zQ2Z!fPp05eY1!X~(4%`3LT2C%#Zu~ibM3XQ`M86&S`e-gRS|6t1S(s_UY+wV&~VPb z*on4QbF+4Z5IrE`T$@F27bu z?-J-V_<-=OP@CHDa3M!5B`l=1-8Pnjf_*WQh~Z#j;=K3;i*VlxCCxM8B}_y-0Ki@bY>*m)9ivJaQ z*AP+&;pvC!(=pUuyeR;r*J~N=ay8eeYlm@Gg|jELo8NHAZGZMeH*Bo1H(sso53_Km zvx9)OECt%`Gs>-x>%^lfYQHNP%BBvcN$ zZFL71O+Ho0)j(R;SVi_h7u-+$L{9O1dfcCPVHzR~C7)Y^HRsU<(Tf+o^0ADafjQol z3S-|*85dPw9fd~jKz!`^9a~}C=>(I|d6&v8DtD3e{(*z-Vx^Xcf+ZIwSYDQ7ou`zp z-#Uz#SIDtMC);hYWM4pH3l$WBO`*X14ydO(2&D4>D@fk;r$2MToC1_Ee9JKIq? zD`#X$^cOFs%e^dZ$F!U@USz)Sq2OS8Ex8gUTT&`rWyeSKuM#Dt%}DQUHsE98`ncQl z#Z<|`5qQwTT#hhrwnIScT8w90ItT`L?@OUu0)OeXOvC%27Sqr`y-0fE(zPS^U#q>n z(LQaxn&Y+?R<*57!-sB#$FLg0F`{Q2Yk*l*RB|bY(M5NX0E`$Y>p^B|oo=1v%bcJ8 z7fx-Wu8;t%&9KY~0Q^Ky+(D&De)VUuZh~37*y78DI~tdyili>hF5wht0@~vszLi{i zUKZhH$J%T{y`^(Ix*9$s6jXY2?V*Q5eI81w1Oy#Hppy-FNS`pgWLE2TGZW{GE7lL?K4f#nG2ymZXP-rkWX@0zjvIaY(JG?7{qkVw~d`G zlLSq~Q>2jImT8vq$>r_o6oJ<$V<)Hqi9tUDl|jxkb~Bf){rKHjK!D7msU`LM8UHO` zProZ+P^h$P@QRem7wd~6o6L-^e7CEEq!QExas?Mw=!Va=gfO*5Hh#<9(LKg|UCn17 z0nKB}Z~#avRY;PO5#qFB0nP;M*FH#1v~@d+)kd^!1}pP{F>aOQaNfx?n_fBGmw9U< z7R#*=0%!z|>I~{PcC+F;v!3k{kcd<9lbk@49wH@M{o)E@cEZGIPn%(U|;@IV+ z()o%%$u&?aA!>T*fCh#~?K?DID{SL^fkokN*aTe%%;D%Sxz=UK4Cql9WwP+WQ2P1m zCRGzeon&QDuQoqQgJGWv21rYP=P7lcf34OLEH%CJueB0+tlU%CT8dS&1(nJMB!$AQeAP@}bk!c;-@T0^ z`*aq;T&!jK+v7&y{%o9BgS&ueOK>YC1vt)H@`Wz8oI7{e#Q_59-)(83{n47Fqr1cS z$9i_(AKW^d5O?C2G^1@<)k~-15-{$a3)+7$j!rXpxo(e3Xg81zXi#&&t%ExbkTP^V zS^PsuR`B>fJy?1o%{E>k_X*VM+y`0NGl=R%h`|j2F4nCxg--Q*h)y{OJ=#!i>72ab zJmw!_Tlb04e&eXlJ;R(bDD|dG2fJr^#>_iyB+lJKOv42{*BbE8ap21F2A@t%P3=r9ZPf_Mli(CE zG4;Le#yT31Z zPii=dMxH622zWK7LA||BBN!$U@GI>i+u-L{qZGqAxoN!YP1zW^G>Oz7SDy^~IhX(T z`0C&ggxf=c-eF>6nF3o&i*a3-NB6J7jOl6znYg8<2Uc$msra7~3v&YOKHCU*o$|9t z+s12JvOO({grEgm(v?OBbkVMdQ@0$=F~(Mkxiu3sz&#a?D{wY!P>)XILLPR z-64NLqm5!h2|1Sei+0EJvf4#{&`-X4<$mzHtYIo_GB`0SGkKUQbrAdO$n7x3$DYK0 zUaJEDpjVFn1vn0(gg;o$Dj^HHok*%^TKhc`#eM90Tuq2|`E=?5S0PE})UplGSA)v- zf*_}%!QB=l)g#5U45V%~BA08aJfN;RzPxd8{xC=ib>emFu=*6D%D<}#P2WwVC95pv z5Xk7^wC%%%Atqr#X$@62@o8>v9n3;dsjm%fUDbZFAhn>!`}zypF{2OHHXp1#a<_JnwJ=^%0I$D9njs|cn6uX z%E2c3{f&ksqK^%<)Y9uc4!|N8c~8mzk{4Nv`*1_;tQ%Q6LFwjHtPdUCsk@Z+)6UAE z%k2tAcRwkQtZ{BLPHC6j!M(g^Sr>&8nz0kOcO3XVUnV3WnU!aiIHbk3QR=@=EZ>n@ z@65IcM`LLL0#8wSiR}ymb0jq@=-Gqhij$UgT2=$lEr+3VaK=J9bLpg;>B4GOj1G+Q z0=en4JCNtg=!K<$7_q!zucxxOU>Qvms&bYF;rCj&%F;Rb7yP#bFwnW7U8dz2{vWQg B{YU@+ diff --git a/source/common/resource.cpp b/source/common/resource.cpp index 8ead87f..204b807 100644 --- a/source/common/resource.cpp +++ b/source/common/resource.cpp @@ -100,6 +100,27 @@ void Resource::reLoadTextures() } } +// Recarga las habitaciones +void Resource::reLoadRooms() +{ + for (auto r : rooms) + { + delete r.room; + r.room = new room_t(loadRoomFile(asset->get(r.name))); + r.room->tileMap = getTileMap(r.room->tileMapFile); + for (auto &e : r.room->enemies) + { + e.animation = getAnimation(e.animationString); + } + for (auto &i : r.room->items) + { + i.texture = getTexture(i.tileSetFile); + } + r.room->textureA = getTexture("standard.png"); + r.room->textureB = getTexture("standard_zxarne.png"); + } +} + // Libera las texturas void Resource::freeTextures() { diff --git a/source/common/resource.h b/source/common/resource.h index ef71419..00d0f91 100644 --- a/source/common/resource.h +++ b/source/common/resource.h @@ -39,8 +39,8 @@ struct res_tileMap_t struct res_room_t { - std::string name; // Nombre de la habitación - room_t *room; // Vecor con las habitaciones + std::string name; // Nombre de la habitación + room_t *room; // Vecor con las habitaciones }; // Clase Resource. Almacena recursos de disco en memoria @@ -81,6 +81,9 @@ public: // Recarga las texturas void reLoadTextures(); + // Recarga las habitaciones + void reLoadRooms(); + // Libera las texturas void freeTextures(); diff --git a/source/credits.cpp b/source/credits.cpp index 56f39d6..5504f52 100644 --- a/source/credits.cpp +++ b/source/credits.cpp @@ -132,20 +132,31 @@ void Credits::fillTexture() texts.push_back({"", stringToColor(options->palette, "white")}); texts.push_back({"INSTRUCTIONS:", stringToColor(options->palette, "yellow")}); texts.push_back({"", stringToColor(options->palette, "white")}); - texts.push_back({"HELP JAILDOC TO GET BACK ALL HIS", stringToColor(options->palette, "white")}); - texts.push_back({"PROJECTS AND GO TO THE JAIL TO", stringToColor(options->palette, "white")}); - texts.push_back({"FINISH THEM", stringToColor(options->palette, "white")}); + texts.push_back({"HELP JAILDOC TO GET BACK ALL", stringToColor(options->palette, "white")}); + texts.push_back({"HIS PROJECTS AND GO TO THE", stringToColor(options->palette, "white")}); + texts.push_back({"JAIL TO FINISH THEM", stringToColor(options->palette, "white")}); texts.push_back({"", stringToColor(options->palette, "white")}); texts.push_back({"", stringToColor(options->palette, "white")}); + //texts.push_back({"KEYS:", stringToColor(options->palette, "yellow")}); + //texts.push_back({"", stringToColor(options->palette, "white")}); + //texts.push_back({"USE 'CURSORS' TO MOVE AND JUMP", stringToColor(options->palette, "white")}); + //texts.push_back({"'F1-F4' TO CHANGE WINDOWS SIZE", stringToColor(options->palette, "white")}); + //texts.push_back({"'F' TO SWITCH TO FULLSCREEN", stringToColor(options->palette, "white")}); + //texts.push_back({"'B' TO SWITCH THE BORDER SCREEN", stringToColor(options->palette, "white")}); + //texts.push_back({"'M' TO TURN ON/OFF THE MUSIC", stringToColor(options->palette, "white")}); + //texts.push_back({"'ESC' TO LEAVE THE GAME", stringToColor(options->palette, "white")}); + //texts.push_back({"", stringToColor(options->palette, "white")}); + //texts.push_back({"", stringToColor(options->palette, "white")}); + texts.push_back({"KEYS:", stringToColor(options->palette, "yellow")}); texts.push_back({"", stringToColor(options->palette, "white")}); - texts.push_back({"USE 'CURSORS' TO MOVE AND JUMP", stringToColor(options->palette, "white")}); - texts.push_back({"'F1-F4' TO CHANGE WINDOWS SIZE", stringToColor(options->palette, "white")}); - texts.push_back({"'F' TO SWITCH TO FULLSCREEN", stringToColor(options->palette, "white")}); - texts.push_back({"'B' TO SWITCH THE BORDER SCREEN", stringToColor(options->palette, "white")}); - texts.push_back({"'M' TO TURN ON/OFF THE MUSIC", stringToColor(options->palette, "white")}); - texts.push_back({"'ESC' TO LEAVE THE GAME", stringToColor(options->palette, "white")}); + texts.push_back({"CURSORS: MOVE AND JUMP", stringToColor(options->palette, "white")}); + texts.push_back({"F1-F4: CHANGE WINDOWS SIZE", stringToColor(options->palette, "white")}); + texts.push_back({"F: SWITCH TO FULLSCREEN", stringToColor(options->palette, "white")}); + texts.push_back({"B: SWITCH THE BORDER SCREEN", stringToColor(options->palette, "white")}); + texts.push_back({"M: TURN ON/OFF THE MUSIC", stringToColor(options->palette, "white")}); + texts.push_back({"ESC: LEAVE THE GAME", stringToColor(options->palette, "white")}); texts.push_back({"", stringToColor(options->palette, "white")}); texts.push_back({"", stringToColor(options->palette, "white")}); @@ -197,8 +208,6 @@ void Credits::fillTexture() SDL_RenderDrawPoint(renderer, i, 4); SDL_RenderDrawPoint(renderer, i, 6); - // SDL_RenderDrawPoint(renderer, i + 1, 1); - // SDL_RenderDrawPoint(renderer, i + 1, 3); SDL_RenderDrawPoint(renderer, i + 1, 5); SDL_RenderDrawPoint(renderer, i + 1, 7); } diff --git a/source/game.cpp b/source/game.cpp index 8371417..b836d4b 100644 --- a/source/game.cpp +++ b/source/game.cpp @@ -21,8 +21,8 @@ Game::Game(SDL_Renderer *renderer, Screen *screen, Resource *resource, Asset *as // **** // this->debug->setEnabled(true); currentRoom = "25.room"; - const int x = 28; - const int y = 13; + const int x = 30; + const int y = 7; spawnPoint = {x * 8, y * 8, 0, 0, 0, s_standing, SDL_FLIP_HORIZONTAL}; // **** @@ -105,6 +105,10 @@ void Game::checkEventHandler() board.music ? JA_ResumeMusic() : JA_PauseMusic(); break; + case SDL_SCANCODE_R: + resource->reLoadRooms(); + break; + case SDL_SCANCODE_M: board.music = !board.music; board.music ? JA_ResumeMusic() : JA_PauseMusic(); diff --git a/source/room.cpp b/source/room.cpp index 59fd1d0..04ae5f0 100644 --- a/source/room.cpp +++ b/source/room.cpp @@ -895,7 +895,7 @@ void Room::setBottomSurfaces() lastOne = i; i++; - if (i < (int)tile.size() - 1) + if (i <= (int)tile.size() - 1) { while (tile.at(i) == tile.at(i - 1) + 1) { @@ -910,7 +910,7 @@ void Room::setBottomSurfaces() line.x2 = ((tile[lastOne] % mapWidth) * tileSize) + tileSize - 1; bottomSurfaces.push_back(line); - if (i < (int)tile.size() - 1) + if (i <= (int)tile.size() - 1) { if (tile.at(i) == -1) { // Si el siguiente elemento es un separador, hay que saltarlo @@ -955,7 +955,7 @@ void Room::setTopSurfaces() lastOne = i; i++; - if (i < (int)tile.size() - 1) + if (i <= (int)tile.size() - 1) { while (tile.at(i) == tile.at(i - 1) + 1) { @@ -970,7 +970,7 @@ void Room::setTopSurfaces() line.x2 = ((tile[lastOne] % mapWidth) * tileSize) + tileSize - 1; topSurfaces.push_back(line); - if (i < (int)tile.size() - 1) + if (i <= (int)tile.size() - 1) { if (tile.at(i) == -1) { // Si el siguiente elemento es un separador, hay que saltarlo @@ -1187,7 +1187,7 @@ void Room::setAutoSurfaces() lastOne = i; i++; - if (i < (int)tile.size() - 1) + if (i <= (int)tile.size() - 1) { while (tile.at(i) == tile.at(i - 1) + 1) { @@ -1202,7 +1202,7 @@ void Room::setAutoSurfaces() line.x2 = ((tile[lastOne] % mapWidth) * tileSize) + tileSize - 1; autoSurfaces.push_back(line); - if (i < (int)tile.size() - 1) + if (i <= (int)tile.size() - 1) { if (tile.at(i) == -1) { // Si el siguiente elemento es un separador, hay que saltarlo