]> 4ch.mooo.com Git - 16.git/commitdiff
PRE reattempt at optimizing scroll map draw stuff
authorsparky4 <sparky4@cock.li>
Thu, 26 Jan 2017 16:02:53 +0000 (10:02 -0600)
committersparky4 <sparky4@cock.li>
Thu, 26 Jan 2017 16:02:53 +0000 (10:02 -0600)
src/lib/16_tdef.h
src/lib/scroll16.c
src/zcroll.c

index 2021b8777f319afb8af1b40956885e4fd0fd5cea..278218f793ae2b02a3d723bdd52da7eab0fd0a88 100755 (executable)
@@ -498,6 +498,8 @@ typedef struct
 } global_game_variables_t;\r
 \r
 extern char global_temp_status_text[512];\r
+extern char global_temp_status_textR[512];\r
+extern char global_temp_status_textC[512];\r
 #ifdef __WATCOMC__\r
 #define EINVFMT EMFILE\r
 #endif\r
index b1d60d498ca5fd059e06e16b8157e2102672b7ee..4e94e9ba4e6f2ced62d1339510a45d59b1f71ffe 100755 (executable)
@@ -748,20 +748,26 @@ mapDrawTile(tiles_t *t, word i, page_t *page, word x, word y)
        }\r
 }\r
 \r
+char global_temp_status_textR[512];\r
+char global_temp_status_textC[512];\r
+\r
 void near mapDrawRow(map_view_t *mv, int tx, int ty, word y, player_t *player, word poopoffset)\r
 {\r
        word x;\r
        int i;\r
        poopoffset%=player[0].enti.speed;\r
-//printf("y: %d\n", poopoffset);\r
+//     printf("y: %d\n", poopoffset);\r
+//     sprintf(global_temp_status_textR, "y:%u", poopoffset); modexprint(mv[0].page, player[0].enti.x, player[0].enti.y-28, 1, 2, 1, global_temp_status_textR);\r
        /* the position within the map array */\r
        i=ty * mv->map->width + tx;\r
-       for(x=poopoffset; x<(mv->page->sw+mv->dxThresh)/(poopoffset+1) && tx < mv->map->width; x+=mv->map->tiles->tileWidth, tx++) {\r
-       if(i>=0) {\r
-               /* we are in the map, so copy! */\r
-               mapDrawTile(mv->map->tiles, mv->map->data[i], mv->page, x, y);\r
-       }\r
-       i++; /* next! */\r
+       for(x=poopoffset;\r
+               x<(mv->page->sw+mv->dxThresh)/(poopoffset+1) && tx < mv->map->width;\r
+       x+=mv->map->tiles->tileWidth, tx++) {\r
+               if(i>=0) {\r
+                       /* we are in the map, so copy! */\r
+                       mapDrawTile(mv->map->tiles, mv->map->data[i], mv->page, x, y);\r
+               }\r
+               i++; /* next! */\r
        }\r
 }\r
 \r
@@ -771,17 +777,20 @@ void near mapDrawCol(map_view_t *mv, int tx, int ty, word x, player_t *player, w
        int i;\r
        poopoffset%=player[0].enti.speed;\r
 //printf("x: %d\n", poopoffset);\r
+//     sprintf(global_temp_status_textR, "x:%u", poopoffset); modexprint(mv[0].page, player[0].enti.x, player[0].enti.y-28, 1, 2, 1, global_temp_status_textR);\r
        /* location in the map array */\r
        i=ty * mv->map->width + tx;\r
 \r
        /* We'll copy all of the columns in the screen,\r
           i + 1 row above and one below */\r
-       for(y=poopoffset; y<(mv->page->sh+mv->dyThresh)/(poopoffset+1) && ty < mv->map->height; y+=mv->map->tiles->tileHeight, ty++) {\r
-       if(i>=0) {\r
-               /* we are in the map, so copy away! */\r
-               mapDrawTile(mv->map->tiles, mv->map->data[i], mv->page, x, y);\r
-       }\r
-       i += mv->map->width;\r
+       for(y=poopoffset;\r
+               y<(mv->page->sh+mv->dyThresh)/(poopoffset+1) && ty < mv->map->height;\r
+       y+=mv->map->tiles->tileHeight, ty++) {\r
+               if(i>=0) {\r
+                       /* we are in the map, so copy away! */\r
+                       mapDrawTile(mv->map->tiles, mv->map->data[i], mv->page, x, y);\r
+               }\r
+               i += mv->map->width;\r
        }\r
 }\r
 \r
index 1667459fa1501d29127589726bd653b740ada43a..6830023118b652217ee3f6f5b12d1bb0ca7b43f1 100755 (executable)
@@ -32,7 +32,7 @@ float t;
 //debugswitches\r
 boolean panswitch=0,baka=0;\r
 //extern boolean pageflipflop=1;\r
-boolean pagenorendermap = 1;   //default: 0\r
+boolean pagenorendermap = 0;   //default: 0\r
 unsigned int i;\r
 \r
 #ifdef FADE\r