From 223378457fa5f386bc056f7162bba6c523d6164f Mon Sep 17 00:00:00 2001 From: sparky4 Date: Mon, 24 Nov 2014 01:06:45 -0600 Subject: [PATCH 1/1] modified: BITMAP.C modified: Project 16.bfproject modified: pcxtest.exe modified: scroll.c modified: scroll.exe modified: test.exe modified: test2.exe --- BITMAP.C | 4 ++-- Project 16.bfproject | 10 +++++----- pcxtest.exe | Bin 36196 -> 36164 bytes scroll.c | 32 ++++++++++++++++---------------- scroll.exe | Bin 20288 -> 20272 bytes test.exe | Bin 17260 -> 17244 bytes test2.exe | Bin 17028 -> 16996 bytes 7 files changed, 23 insertions(+), 23 deletions(-) diff --git a/BITMAP.C b/BITMAP.C index 8287e57d..191b460b 100644 --- a/BITMAP.C +++ b/BITMAP.C @@ -79,10 +79,10 @@ bitmapLoadPcx(char *filename) { /* open the PCX file for reading */ file = fopen(filename, "rb"); - if(!file) { + /*if(!file) { printf("Could not open %s for reading.\n", filename); exit(-2); - } + }*/ /* load the first part of the pcx file */ loadPcxStage1(file, &result); diff --git a/Project 16.bfproject b/Project 16.bfproject index 5e39df7f..4a4078c1 100644 --- a/Project 16.bfproject +++ b/Project 16.bfproject @@ -1,7 +1,7 @@ c2e.convert_special: 0 e2c.convert_num: 0 openfiles: /dos/z/16/doc/project.txt:102:0:0: -openfiles: /dos/z/16/scroll.c:12991:12348:1: +openfiles: /dos/z/16/scroll.c:3426:2959:1: openfiles: /dos/z/16/modex16.c:9475:0:0: openfiles: /dos/z/16/modex16.h:1512:344:0: openfiles: /dos/z/16/pcxtest.c:1339:442:0: @@ -22,7 +22,7 @@ c2e.convert_iso: 0 opendir: file:///dos/z/16/lib wrap_text_default: 0 bookmarks_filename_mode: 1 -ssearch_text: modexDrawSpriteRegion +ssearch_text: )*2 snr_casesens: 1 view_blocks: 1 name: project 16 @@ -115,9 +115,6 @@ snr_escape_chars: 0 htmlbar_view: 0 spell_lang: en ssearch_dotmatchall: 0 -searchlist: w->page -searchlist: modexShowPage(spri -searchlist: howPage(draw searchlist: wPage(draw searchlist: 32); searchlist: 33) @@ -130,6 +127,9 @@ searchlist: mv searchlist: animatePlayer(spri, bg, searchlist: clearpl searchlist: modexDrawSpriteRegion +searchlist: bg +searchlist: )*- +searchlist: )*2 autocomplete: 1 outputb_show_all_output: 0 bookmarks_show_mode: 0 diff --git a/pcxtest.exe b/pcxtest.exe index de765ece05216f2d419837866388d044bac54429..d1d39402e16f2ef987133f3dbfc665fa8a12334a 100644 GIT binary patch delta 4415 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 delta 4126 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 Va`x5Llr!ZD!9E~(!&(*t@IT;}gG&Ga diff --git a/scroll.c b/scroll.c index 2e27dbc3..057a5ee5 100644 --- a/scroll.c +++ b/scroll.c @@ -63,7 +63,7 @@ void animatePlayer(map_view_t *src, map_view_t *dest, short d1, short d2, int x, #define SWAP(a, b) tmp=a; a=b; b=tmp; void main() { bitmap_t ptmp; // player sprite - int q=0; + int q=1; page_t screen, screen2; map_t map; map_view_t mv, mv2; @@ -118,7 +118,7 @@ void main() { { if(bg->tx >= 0 && bg->tx+20 < MAPX && player.tx == bg->tx + 10) { - for(q=0; q<(TILEWH/SPEED); q++) + for(q=1; q<=(TILEWH/SPEED); q++) { animatePlayer(bg, spri, 1, 1, player.x, player.y, q, &ptmp); mapScrollRight(bg, SPEED); @@ -129,7 +129,7 @@ void main() { } else if(player.tx < MAPX) { - for(q=0; q<(TILEWH/SPEED); q++) + for(q=1; q<=(TILEWH/SPEED); q++) { player.x+=SPEED; animatePlayer(bg, spri, 1, 0, player.x, player.y, q, &ptmp); @@ -149,7 +149,7 @@ void main() { { if(bg->tx > 0 && bg->tx+20 <= MAPX && player.tx == bg->tx + 10) { - for(q=0; q<(TILEWH/SPEED); q++) + for(q=1; q<=(TILEWH/SPEED); q++) { animatePlayer(bg, spri, 3, 1, player.x, player.y, q, &ptmp); @@ -161,7 +161,7 @@ void main() { } else if(player.tx > 1) { - for(q=0; q<(TILEWH/SPEED); q++) + for(q=1; q<=(TILEWH/SPEED); q++) { player.x-=SPEED; animatePlayer(bg, spri, 3, 0, player.x, player.y, q, &ptmp); @@ -181,7 +181,7 @@ void main() { { if(bg->ty >= 0 && bg->ty+15 < MAPY && player.ty == bg->ty + 8) { - for(q=0; q<(TILEWH/SPEED); q++) + for(q=1; q<=(TILEWH/SPEED); q++) { animatePlayer(bg, spri, 2, 1, player.x, player.y, q, &ptmp); mapScrollDown(bg, SPEED); @@ -192,7 +192,7 @@ void main() { } else if(player.ty < MAPY) { - for(q=0; q<(TILEWH/SPEED); q++) + for(q=1; q<=(TILEWH/SPEED); q++) { player.y+=SPEED; animatePlayer(bg, spri, 2, 0, player.x, player.y, q, &ptmp); @@ -212,7 +212,7 @@ void main() { { if(bg->ty > 0 && bg->ty+15 <= MAPY && player.ty == bg->ty + 8) { - for(q=0; q<(TILEWH/SPEED); q++) + for(q=1; q<=(TILEWH/SPEED); q++) { animatePlayer(bg, spri, 0, 1, player.x, player.y, q, &ptmp); mapScrollUp(bg, SPEED); @@ -223,7 +223,7 @@ void main() { } else if(player.ty > 1) { - for(q=0; q<(TILEWH/SPEED); q++) + for(q=1; q<=(TILEWH/SPEED); q++) { player.y-=SPEED; animatePlayer(bg, spri, 0, 0, player.x, player.y, q, &ptmp); @@ -472,11 +472,11 @@ mapDrawCol(map_view_t *mv, int tx, int ty, word x) { void animatePlayer(map_view_t *src, map_view_t *dest, short d1, short d2, int x, int y, int ls, bitmap_t *bmp) -{ +{ short dire=32*d1; short qq; short lo = ((TILEWH / SPEED) / 3); - short loo = (ls + lo); + short loo = (ls + lo); if(d2==0) qq = 0; else qq = ((ls+1)*SPEED); @@ -504,13 +504,13 @@ animatePlayer(map_view_t *src, map_view_t *dest, short d1, short d2, int x, int break; } //TODO: make flexible animation thingy - if(2>ls && ls>=0) { modexCopyPageRegion(dest->page, src->page, x-2, y-4, x-2, y-4, 28, 40); + if(2>ls && ls>=1) { modexCopyPageRegion(dest->page, src->page, x-2, y-4, x-2, y-4, 28, 40); modexDrawSpriteRegion(dest->page, x, y, 48, dire, 24, 32, bmp); }else - if(4>ls && ls>=2) { modexCopyPageRegion(dest->page, src->page, x-2, y-4, x-2, y-4, 28, 40); + if(3>ls && ls>=2) { modexCopyPageRegion(dest->page, src->page, x-2, y-4, x-2, y-4, 28, 40); modexDrawSpriteRegion(dest->page, x, y, 24, dire, 24, 32, bmp); }else - if(6>ls && ls>=4) { modexCopyPageRegion(dest->page, src->page, x-2, y-4, x-2, y-4, 28, 40); + if(4>ls && ls>=3) { modexCopyPageRegion(dest->page, src->page, x-2, y-4, x-2, y-4, 28, 40); modexDrawSpriteRegion(dest->page, x, y, 0, dire, 24, 32, bmp); }else - if(8>ls && ls>=6) { modexCopyPageRegion(dest->page, src->page, x-2, y-4, x-2, y-4, 28, 40); - modexDrawSpriteRegion(dest->page, x, y, 24, dire, 24, 32, bmp); }else ls-=ls; + if(5>ls && ls>=4) { modexCopyPageRegion(dest->page, src->page, x-2, y-4, x-2, y-4, 28, 40); + modexDrawSpriteRegion(dest->page, x, y, 24, dire, 24, 32, bmp); } modexWaitBorder(); } diff --git a/scroll.exe b/scroll.exe index 28987bc3cd33058d9d9f9f51cc5e24b66e91a582..98e9290dc543344e9aeb2131041750d07567b53f 100644 GIT binary patch delta 2717 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 j0#$qQh2))mqQ|!5K zJ>;4VubwEL22ezP2{SAiRvg|^x~WZl9MMJOw~&)>wrU8}(;@|{b_1!cA{CfM#7B>WWSklzU&XeVRBx~h+rW8fX;o^=ZDN zW~><2(vTVy=`R%jMyX~%yfnbyN)?vK;E70qDj_=G^Os+{P z`IGF13*=jQ6uODs=y=O$gC-^A5nBLhxrn2#YK#nSALX_$g&%A|J#?c$H6waa z;OwweXdYtBw2Sm+RBAu|9In49O&k#8sw-;M-tlUv9Hg^QOEvu1_*ZUZ6b=p=MpXgP zDuEZuAEJ&KSy3^`@&OYoh9`OZIVm^C!*24L`LUdMneoc7?~CT#JRz5V&w`a>D%n_! zzpM!htc*$`tZG{H2hA)UtBtuVCs)l+fP?7f#Z@yAtplFJ4=_Z=!x(p&yeq;6SL1E&xT1T@%##0 z!etST=sg3&!_Trry~TE}mmb!{M-l_cy^~13k`nWd$bsMXyTc=2jBJh2T2ikpFxV#I zzd`=4Oanx^l|=YG8CH(NIQh`>H2j2oZOLPDiq*@;kF0Y%O|h(8k63z6W*75vp%(wj&kb+rM}!QgEAUwH)X?xz|`! zP^d9upSFr5+Ma~*K)!7~Kp%PEJ_A}vvwZQ3uJbnBx=h!-u{D(f+OycdS}0@PfOgnI zfA-Jx8P2U10EGsJR~w`XJF9BH!@t@{r;;JZ7C27UPx*}{+g7tDf+~z$|1$YziYxYc z8$K6mEW&McmyTQ6`DTzM@gKt5H=&cpFXy2%Iy&E z6&2Go5ru;4bfk&7w40gAOC|c{w`!Z((e0SdZcN{oaI`a*_H9gzw7^2B)NX@pVaTm zczD5M3vdsDu5?@^Mx&8y&A_A@n~~-)iCj delta 1968 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