]> 4ch.mooo.com Git - 16.git/blobdiff - src/scroll.c
><
[16.git] / src / scroll.c
index 5f8039e575160fd4c27cd18b1df009fd0078ad4a..1156d70f1a85bea6d5a789789cb0499c49164a0d 100755 (executable)
@@ -35,7 +35,7 @@ player_t player[MaxPlayers];
 //page_t screen, gvar.video.page[1], gvar.video.page[2];
 map_view_t mv[3];
 map_view_t *bg, *spri, *mask;//, *tmp;
-planar_buf_t *p;
+bitmap_t p;
 float t;
 sword bakapee;
 
@@ -44,15 +44,15 @@ void main(int argc, char *argv[])
 //     word panswitch=0, panq=1, pand=0;
        word panpagenum=0; //for panning!
        unsigned int i;
-       //static word paloffset=0;
        const char *cpus;
        //static int persist_aniframe = 0;    /* gonna be increased to 1 before being used, so 0 is ok for default */
 
        //map_view_db_t pgid[4];
        word pg;
-#ifdef FADE
-       byte *dpal;
-#endif
+//#ifdef FADE
+       static word paloffset=0;
+       byte *dpal, *default_pal;
+//#endif
        byte *gpal;
        byte *ptr;
        byte *mappalptr;
@@ -90,11 +90,11 @@ void main(int argc, char *argv[])
        mappalptr = map.tiles->data->palette;
 
        /* data */
-       player[0].data = bitmapLoadPcx("data/ptmp.pcx"); // load sprite
+       p = bitmapLoadPcx("data/ptmp.pcx"); // load sprite
        //npctmp = bitmapLoadPcx("ptmp1.pcx"); // load sprite
 
        /* create the planar buffer */
-       p = planar_buf_from_bitmap(&player[0].data);
+       (player[0].data) = *planar_buf_from_bitmap(&p);
 //0000 printf("planar buffer ok\n");
 #endif
        /*      input!  */
@@ -105,6 +105,8 @@ void main(int argc, char *argv[])
 #ifdef MODEX
 #ifdef FADE
        dpal = modexNewPal();
+       default_pal = modexNewPal();
+       *default_pal = *dpal;
        modexPalSave(dpal);
        modexFadeOff(4, dpal);
 #endif
@@ -185,7 +187,7 @@ void main(int argc, char *argv[])
        modexCopyPageRegion(mv[1].page, mv[0].page, 0, 0, 0, 0, mv[0].page->width, mv[0].page->height);
 #ifdef SPRITE
 #ifdef BMPTYPE
-       oldDrawBmp(VGA, player[0].x-4, player[0].y-TILEWH, &player[0].data, 1);
+       //oldDrawBmp(VGA, player[0].x-4, player[0].y-TILEWH, &player[0].data, 1);
 #else
        modexDrawSpriteRegion(spri->page, player[0].x-4, player[0].y-TILEWH, 24, 64, 24, 32, &player[0].data);
 #endif
@@ -389,7 +391,8 @@ void main(int argc, char *argv[])
        }
 
        //9
-       if(IN_KeyDown(10)) modexPalOverscan(gpal, 4);
+       if(IN_KeyDown(10)){ modexPalOverscan(default_pal, rand()%56); modexPalUpdate1(default_pal); }
+       //if(IN_KeyDown(11)){ modexPalOverscan(default_pal, 15); }
        if((player[0].q==1) && !(player[0].x%TILEWH==0 && player[0].y%TILEWH==0)) break;        //incase things go out of sync!
        }