From a624194dece7dacd4556333f78eb847347a755d9 Mon Sep 17 00:00:00 2001 From: KikooDX Date: Thu, 14 May 2020 18:26:14 +0200 Subject: [PATCH] Try to use libimg. --- JTMM.g3a | Bin 76032 -> 83620 bytes assets-cg/img/elevator.png | Bin 214 -> 323 bytes project.cfg | 7 +------ src/draw.c | 10 +++++++--- 4 files changed, 8 insertions(+), 9 deletions(-) diff --git a/JTMM.g3a b/JTMM.g3a index 19af671e833158552cbc84df4f93e6c4cf49c685..3526a6ea081fb26aa33ca53b63097242dd16769a 100644 GIT binary patch delta 2795 zcma)8eNfZq9sfRgp+TaHhyeslcu}LEc?48?qY_UxIhZr8sbdw-h)HFYLm6sYFO}?A zYq$hKA7}BMT3=YlHEchu-KLeT7UL~&K`_TWXA_!CZsmFzva8!M+4sp0(7XP#6^nP-JO71-dW-bk#nfuiAlbDFGUjB|_CE(pBU7_W}m}iK@-|%lc1t zuh;if3s-9|klALS@*G4tP@2Fjb#-#!RS6I3%7`43rJGpf^!&t0^E`tBp4KOAS`2Xz z3v~S;(7p#k`Ti?pl}*f9t^@j-0_fHepxZn^x3>e`;Q+d`3aGUN=q?@5pDBR8F#@#O zBjmp+l@cW@IH-}M@QjaD9L(P$))oT2zq&^M_Zp$!yeXqTa^Jk|zw6>Obw{tQysn8i zha4s+X}e@)K@&}EddX24T#0l^a4Ah}jBmO0mZ|`nCC0J0RhTH?d{nPuV+WVie>~YE ze!&NCzyZe(n#_*PPJjQp*99wE7iVdBpna zZ)N^v`@;K2oZw$tiam6ngjlXX`Qm-y=6~%U@h@_ZL99Q^9Y9%@`)^jZqoI=3hW!hE zK4O_?&D6{-jnilN7h1>M4^98{r@6gom*&2MW2(D{k7D9dOuVC^R zUOS2m2uye%Xe~ZhSi~2@%TAI-%ih<>2&rHSXC{t0 z&Rwxe{ehrT|9SwJ*_psPof^DYK4;2{W}w<}pt+%b=_Bw-!*GHavMuotz>6K#^-HZA zebQpxqB6gfYec!;!?Il2$+wJ;`=uV@gnr4oY&<7;QgX3xD{l!^u6RlP^E=#IC3=|!7fA7T*k0D*RWsfZsv1-lk$Il_*>7=2wR z!;1U5#m({-Ln8G~ppyzg`-vOG0(*;@s#!xy1lpWQh>e+AZjyYKaP)Ci} zuCE9IU4fP8E134!ZUTbq*am5OF&Y#AH5riR<8ul~F|7&Hu2v!qu<>7g6Qc{@0~lc= zCmxY3=6k=6lnceJDTJ7r`Q&M06ednGvPg+9wGNR5G`Rx1Q;w*>+c4=PVK8KeG(eXI zSl8(_@~9S{*(Gx9#6Sy6J@aj>Ph4;I1WP@;i}=_t&+fr-{Opxvv{_vYG#fiN(2gZ) z#nN6iuua_nEWkIBxLp|$b+GRcY%vz^~LB@Uf0ljD+6mfv<0s~vCqaxShe4||x$ zX$zv8g+91V23g02Y#fI!WG*#h;e2~7{j$pVe%a3WJgt-5l~!gzTzbZoj@wv-tPgif zMH!bQZVJ^6glU#Ea&o8ViO#fw-Y%o zY<)x+y`mv=@#d~Rj-d+?2B2%aEcMr4&qxhi!=*yfN2kerG+u-0q7Khgp5JVeq@g%- zI@XK|`{zMC5b{56p7Ivch$*A#hTNaex1mvl8$Mr%(Al|xkhSc|Z$F=pZOcHTHD2yM zWmL_4zuQ2DSdx%QI$5Eh!LcIB+l55ZDYOc&NMZ(6_>6Q4k*ks!{>im-63M^>YyCr6 zEN<0?A)rPJ8-0Ez82UL3<$vf;7`GIbcE)U@CDnP!0mIdo8X_@BGzGd$=2V3x5XLFKiYRDyvG zp_prjQVEY7!pOrIIj9sKJ{=}X{BNitAi;iKPP%4DBHzrZ?;FPlZ5$V;Ko~mkFI~sn ztH9~ZhZf`jeeuc6e461hx;9~YIz#FA+kqB+`fOe>5#_mj`ZLY5Eu>sZQ%l}2(UGfC H{Qvqtc&V9? delta 2716 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 L)z4*}Q$iB}M^S}i literal 214 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4cSSh6U$c>z#_v%n*= zn1O*?7=#%aX3dcR3bL1Y`ns||VdY_y*RT(j)B*}6d%8G=Se#DYvR(h@c?ZUXqy+*G zOcTyObLOcwlRuQrz^&JNh9vLCz(Dbi-m5givh&MO?dKmQC{p$^X;Mxac@Vm`?P zUYD3z8;*)~F}CC!P7`?i-aqYs=hcq03db1F_cGj>p)aSwy?qhTItEWyKbLh*2~7Y1 C215b> diff --git a/project.cfg b/project.cfg index 499d5e2..2119984 100644 --- a/project.cfg +++ b/project.cfg @@ -77,12 +77,7 @@ LDFLAGS_CG += -Wl,-Map=build-cg/map # File conversion parameters #--- -#IMG.player.png = profile:p4 -#IMG.elevator.png = profile:p4 -#IMG.ground.png = profile:p4 -#IMG.jitem_popup.png = profile:p4 -#IMG.jitem.png = profile:p4 -#IMG.spike.png = profile:p4 +IMG.elevator.png = type:libimg-image name:img_elevator # Here you can add fxconv options for each converted file, individually. # The syntax is ".". For example, to specify the parameters for a diff --git a/src/draw.c b/src/draw.c index 7f48ff6..9716502 100644 --- a/src/draw.c +++ b/src/draw.c @@ -1,5 +1,6 @@ #include #include +#include #include "draw.h" #include "shared_define.h" @@ -23,7 +24,8 @@ extern image_t img_semi_solid; //semi solid texture, 16x16 extern image_t img_teleporter_0; //teleporter 0 texture, 16x16 extern image_t img_teleporter_1; //teleporter 1 texture, 16x16 //animated textures (elevator) -extern image_t img_elevator1, img_elevator2, img_elevator3, img_elevator4; +extern img_t const img_elevator; +/*extern image_t img_elevator1, img_elevator2, img_elevator3, img_elevator4; extern image_t img_elevator5, img_elevator6, img_elevator7, img_elevator8; extern image_t img_elevator9, img_elevator10, img_elevator11, img_elevator12; extern image_t img_elevator13, img_elevator14, img_elevator15, img_elevator16; @@ -31,7 +33,7 @@ const image_t * ani_elevator[16] = {&img_elevator1, &img_elevator2, &img_elevator3, &img_elevator4, &img_elevator5, &img_elevator6, &img_elevator7, &img_elevator8, &img_elevator9, &img_elevator10, &img_elevator11, &img_elevator12, &img_elevator13, &img_elevator14, - &img_elevator15, &img_elevator16}; + &img_elevator15, &img_elevator16};*/ void draw_player(int x, int y) { @@ -41,6 +43,7 @@ void draw_player(int x, int y) void draw_level(char level[], unsigned int step, char polarity, int *start_x, int *start_y, int tp_positions[]) { + int img_elevator_frame_count = img_elevator.width / 16; dclear(BG_COLOR); unsigned int i = 0; unsigned int x = 0; @@ -77,7 +80,8 @@ int *start_y, int tp_positions[]) dimage(x + DRAW_OFFSET_X, y + DRAW_OFFSET_Y, &img_semi_solid); break; case '^': - dimage(x + DRAW_OFFSET_X, y + DRAW_OFFSET_Y, ani_elevator[(step/2)%16]); + img_render(img_sub(img_elevator, 0, 0, 16, 16), img_at(img_vram(), x, y)); + //dimage(x + DRAW_OFFSET_X, y + DRAW_OFFSET_Y, ani_elevator[(step/2)%16]); break; case 'S': erase_tile(x, y, level);