diff --git a/contrib/extractor/System.cpp b/contrib/extractor/System.cpp index d86af0b14..30e28e211 100644 --- a/contrib/extractor/System.cpp +++ b/contrib/extractor/System.cpp @@ -31,6 +31,7 @@ map_id * map_ids; uint16 * areas; char output_path[128]="."; char input_path[128]="."; +uint32 maxAreaId = 0; enum Extract { @@ -146,6 +147,8 @@ void ReadAreaTableDBC() for(unsigned int x=0; x unsigned int iRes=256; -extern uint16*areas; +extern uint16 *areas; + +extern uint32 maxAreaId; vec wmoc; @@ -409,7 +411,7 @@ bool ConvertADT(char * filename,char * filename2) { for(unsigned int y=0;y<16;y++) { - if(mcells->ch[y][x].area_id && mcells->ch[y][x].area_id < 0x102D) + if(mcells->ch[y][x].area_id && mcells->ch[y][x].area_id <= maxAreaId) { if(areas[mcells->ch[y][x].area_id]==0xffff) printf("\nCan't find area flag for areaid %u.\n",mcells->ch[y][x].area_id); diff --git a/src/game/GridDefines.h b/src/game/GridDefines.h index 0942c5c31..ced42871b 100644 --- a/src/game/GridDefines.h +++ b/src/game/GridDefines.h @@ -41,10 +41,10 @@ class Player; #define MIN_GRID_DELAY MINUTE*1000 #define MIN_MAP_UPDATE_DELAY 50 -#define MAX_NUMBER_OF_CELLS 8 +#define MAX_NUMBER_OF_CELLS 4 #define SIZE_OF_GRID_CELL (SIZE_OF_GRIDS/MAX_NUMBER_OF_CELLS) -#define CENTER_GRID_CELL_ID 256 +#define CENTER_GRID_CELL_ID 128 #define CENTER_GRID_CELL_OFFSET (SIZE_OF_GRID_CELL/2) #define TOTAL_NUMBER_OF_CELLS_PER_MAP (MAX_NUMBER_OF_GRIDS*MAX_NUMBER_OF_CELLS)