X-Git-Url: http://4ch.mooo.com/gitweb/?a=blobdiff_plain;f=src%2Fxcroll.c;h=b9e928430425082927d17516a70e6dfb1f73bf10;hb=8db9019df22bf792ea02096dec8c3d862fa00155;hp=bbfe552d10d7b8ddc0bff2c7a3dc1f12678e1d9c;hpb=255bdcbdeef83beb0fcf385da6eebc21e3bb9d33;p=16.git diff --git a/src/xcroll.c b/src/xcroll.c index bbfe552d..b9e92843 100755 --- a/src/xcroll.c +++ b/src/xcroll.c @@ -22,13 +22,16 @@ #include "src/lib/scroll16.h" #include "src/lib/16_timer.h" -#include "src/lib/16render.h" -#include "src/lib/16_dbg.h" +//#include "src/lib/16_dbg.h" + +#ifdef __DEBUG__ +boolean + dbg_nointest=1; +#endif #define FADE -#define NOMAPLOAD +//#define NOMAPLOAD -//map_view_t mv[4]; static map_t map; float t; @@ -42,41 +45,36 @@ unsigned int i; //static word paloffset=0; #endif byte *ptr; -memptr pal; +//memptr pal; +boolean spriteswitch=0; #define FILENAME_1 "data/spri/chikyuu.vrs" #define FILENAME_1P "data/spri/chikyuu.pal" #define FILENAME_2 "data/spri/me.vrs" #define FILENAME_2P "data/spri/me.pal" +//#define FILENAME_3 "data/spri/chistnd.vrl" void main(int argc, char *argv[]) { static global_game_variables_t gvar; - struct glob_game_vars *ggvv; -// sword bakapee; -// if(argv[1]) bakapee = atoi(argv[1]); -// else bakapee = 1; - //char *bakapee1,*bakapee1p; - char bakapee1[64] = FILENAME_1; - char bakapee1p[64] = FILENAME_1P; + struct glob_game_vars *ggvv; + +// static entity_t enti; + + char bakapee[64] = FILENAME_1; + char bakapeep[64] = FILENAME_1P; +// char bakapee3[64] = FILENAME_3; Startup16(&gvar); -// bakapee1=mALLoc(64); -// bakapee1p=mALLoc(64); ggvv=&gvar; + // input! + IN_Default(0, &gvar.player[0],ctrl_Keyboard1, &gvar); + if (argc >= 2) { -/* if (argc < 2) { - //fprintf(stderr,"drawvrl \n palette file optional\n"); - bakapee1 = FILENAME_1; - bakapee1p = FILENAME_1P; - - }else{ - if(argv[1]) bakapee1 = argv[1]; - if(argv[2]) bakapee1p = argv[2];*/ - if(argv[1]){ strcpy(bakapee1, argv[1]); - if(argv[2]) strcpy(bakapee1p, argv[2]); } + if(argv[1]){ strcpy(bakapee, argv[1]); + if(argv[2]) strcpy(bakapeep, argv[2]); } } // OK, this one takes hellova time and needs to be done in farmalloc or MM_... @@ -96,10 +94,9 @@ void main(int argc, char *argv[]) //initMap(&map); #endif // data - VRS_LoadVRS(bakapee1, &gvar.player[0].enti, &gvar); - - // input! - IN_Default(0, &gvar.player[0],ctrl_Keyboard1, &gvar); + printf("loading vrs "); + VRS_LoadVRS(bakapee, &gvar.player[0].enti, &gvar); printf("ok\n"); + IN_StartAck (&gvar); while (!IN_CheckAck (&gvar)){} // save the palette #ifdef FADE @@ -108,7 +105,8 @@ void main(int argc, char *argv[]) modexPalBlack(); #endif - VGAmodeX(1/*bakapee*/, 1, &gvar); + //--VGAmodeX(1/*bakapee*/, 1, &gvar); + VL_Startup(&gvar); /* load color palette */ /*ptmp.offset=(paloffset/3); @@ -118,24 +116,33 @@ void main(int argc, char *argv[]) //printf("1: %d\n", paloffset); map.tiles->data->offset=(paloffset/3); modexPalUpdate(map.tiles->data, &paloffset, 0, 0);*/ - VL_LoadPalFile(bakapee1p, &gvar.video.palette); + VL_LoadPalFile(bakapeep, &gvar.video.palette, &gvar); //VL_LoadPalFile("data/default.pal", &gvar.video.palette); #ifdef FADE modexPalSave(&gvar.video.palette); modexSavePalFile("data/g.pal", &gvar.video.palette); - modexPalBlack(); //so gvar.player will not see loadings~ + modexPalBlack(); //so player will not see loadings~ #endif // setup camera and screen~ - modexHiganbanaPageSetup(&gvar.video); + modexHiganbanaPageSetup(&gvar); ZC_MVSetup(&gvar.mv, &map, &gvar); +#ifdef FADE + modexFadeOn(4, &gvar.video.palette); +#endif + +//0000 IN_StartAck (&gvar); MM_ShowMemory(&gvar); while (!IN_CheckAck (&gvar)){} +#ifdef FADE + modexPalBlack(); //so player will not see loadings~ +#endif + // set up paging //TODO: LOAD map data and position the map in the middle of the screen if smaller then screen mapGoTo(&gvar.mv, 0, 0); - ZC_PlayerXYpos(0, 0, &gvar.player, &gvar.mv, 0, 1); + ZC_PlayerXYpos(0, 0, &gvar.player[0], &gvar.mv, 1); EN_initPlayer(&gvar.player[0], &gvar.video); //print_anim_ids(gvar.player[0].enti.spri); if (gvar.video.sprifilei == -1) @@ -152,6 +159,11 @@ void main(int argc, char *argv[]) // while(!gvar.in.inst->Keyboard[sc_Escape) && !gvar.in.inst->Keyboard[sc_Space) && !gvar.in.inst->Keyboard[sc_Enter]){ FUNCTIONKEYSHOWMV } gvar.video.page[0].tlx=gvar.mv[0].tx*TILEWH; gvar.video.page[0].tly=gvar.mv[0].ty*TILEWH; + +#ifdef OLDWALKSHOWPAGESTUFF + VL_ShowPage(&(gvar.video.page[gvar.video.sp]), gvar.kurokku.fpscap, 0); +#endif + shinku(&gvar); //modexpdump(gvar.mv[0].page); #ifdef FADE @@ -170,7 +182,8 @@ void main(int argc, char *argv[]) IN_ReadControl(&gvar.player[0], &gvar); if(!panswitch){ //ZC_walk2(gvar.player[0].ent, mv); - ZC_walk(&gvar.mv, &gvar.player, 0); + //ZC_walk(&gvar.mv, &gvar.player, 0); + ZC_walk(&gvar, 0); }else{ TAIL_PANKEYFUNZC; //printf(" gvar.player[0].enti.q: %d", gvar.player[0].enti.q); printf(" gvar.player[0].d: %d\n", gvar.player[0].d); @@ -189,41 +202,60 @@ void main(int argc, char *argv[]) } if(gvar.player[0].enti.q == (TILEWH/(gvar.player[0].enti.speed))+1 && gvar.player[0].info.dir != 2 && (gvar.player[0].enti.triggerx == 5 && gvar.player[0].enti.triggery == 5)){ gvar.player[0].enti.hp--; } //debugging binds! - - if(gvar.in.inst->Keyboard[24]){ VL_modexPalScramble(&gvar.video.palette); /*paloffset=0;*/ modexpdump(gvar.mv[0].page); IN_UserInput(1, &gvar); } //o - if(gvar.in.inst->Keyboard[22]){ VL_modexPalScramble(&gvar.video.palette); } //u +// if(gvar.in.inst->Keyboard[24]){ VL_modexPalScramble(&gvar.video.palette); /*paloffset=0;*/ VL_LoadPalFileCore(&gvar.video.palette, &gvar); modexpdump(gvar.mv[0].page); IN_UserInput(1, &gvar); } //o + if(gvar.in.inst->Keyboard[22]){ VL_modexPalScramble(&gvar.video.palette); VL_LoadPalFileCore(&gvar.video.palette, &gvar); } //u TAIL_FUNCTIONKEYFUNCTIONS TAIL_FUNCTIONKEYDRAWJUNK if(gvar.in.inst->Keyboard[sc_L]){ modexClearRegion(&gvar.video.page[0], gvar.player[0].enti.x, gvar.player[0].enti.y, 16, 16, 1); } - if(gvar.in.inst->Keyboard[sc_J] || gvar.in.inst->Keyboard[sc_K]) + +//=============================================================================== +#if 0 + if(gvar.in.inst->Keyboard[sc_BackSlash]){ + VRS_ReadVRL(bakapee3, &gvar.player[0].enti, &gvar); + DrawVRL( + gvar.player[0].enti.x, + gvar.player[0].enti.y, + gvar.player[0].enti.spri.sprite_vrl_cont.vrl_header, + gvar.player[0].enti.spri.sprite_vrl_cont.line_offsets, + gvar.player[0].enti.spri.sprite_vrl_cont.buffer + sizeof(struct vrl1_vgax_header), + gvar.player[0].enti.spri.sprite_vrl_cont.data_size + ); while (!IN_CheckAck (&gvar)){} + VRS_ReadVRS(bakapee, &gvar.player[0].enti, &gvar); + IN_UserInput(1, &gvar); } +#endif +//=============================================================================== + + if(gvar.in.inst->Keyboard[sc_J])// || gvar.in.inst->Keyboard[sc_K]) { - if(gvar.in.inst->Keyboard[sc_J]) + if(spriteswitch)//gvar.in.inst->Keyboard[sc_J]) { -// bakapee1=FILENAME_1; -// bakapee1p=FILENAME_1P; - strcpy(bakapee1, FILENAME_1); - strcpy(bakapee1p, FILENAME_1P); + strcpy(bakapee, FILENAME_1); + strcpy(bakapeep, FILENAME_1P); gvar.player[0].enti.overdraww=0; } - if(gvar.in.inst->Keyboard[sc_K]) + else//if(gvar.in.inst->Keyboard[sc_K]) { -// bakapee1=FILENAME_2; -// bakapee1p=FILENAME_2P; - strcpy(bakapee1, FILENAME_2); - strcpy(bakapee1p, FILENAME_2P); + strcpy(bakapee, FILENAME_2); + strcpy(bakapeep, FILENAME_2P); gvar.player[0].enti.overdraww=2; } - //read_vrs(&gvar, bakapee1, gvar.player[0].enti.spri->spritesheet); - VRS_ReadVRS(bakapee1, &gvar.player[0].enti, &gvar); - VL_LoadPalFile(bakapee1p, &gvar.video.palette); + spriteswitch=!spriteswitch; + + //read_vrs(&gvar, bakapee, gvar.player[0].enti.spri->spritesheet); + VRS_ReadVRS(bakapee, &gvar.player[0].enti, &gvar); + VL_LoadPalFile(bakapeep, &gvar.video.palette, &gvar); + ZC_animatePlayer(&gvar.mv, &gvar.player, 0); + IN_UserInput(1, &gvar); }//JK -#ifdef FADE - if(gvar.in.inst->Keyboard[10]){ modexPalOverscan(rand()%56); modexPalUpdate(gvar.video.dpal); IN_UserInput(1, &gvar); } -#endif - if(gvar.in.inst->Keyboard[sc_R]){ modexPalOverscan(rand()%56); } //r +//#ifdef FADE +// if(gvar.in.inst->Keyboard[10]){ modexPalOverscan(rand()%56); modexPalUpdate(gvar.video.dpal); IN_UserInput(1, &gvar); } +//#endif + if(gvar.in.inst->Keyboard[sc_R]){ VL_modexPalOverscan(&gvar.video.palette, rand()%32); } //r + - if((gvar.player[0].enti.q==1) && !(gvar.player[0].enti.x%TILEWH==0 && gvar.player[0].enti.y%TILEWH==0)) Quit (&gvar, "PLAYER OFF THE RAILS!");//break; //incase things go out of sync! + //if((gvar.player[0].enti.q==1) && !(gvar.player[0].enti.x%TILEWH==0 && gvar.player[0].enti.y%TILEWH==0)) Quit (&gvar, "PLAYER OFF THE RAILS!");//break; //incase things go out of sync! + ZC_GirdChk(&gvar, &gvar.player[0]); } /* fade back to text mode */