22 extern "C" _CRTIMP 
void __cdecl _assert(
void *, 
void *, 
unsigned);
 
   47       (size_x & (size_x - 1)) != 0 ||
 
   48       (size_y & (size_y - 1)) != 0) {
 
   49     error(
"Invalid map size");
 
   52   DEBUG(map, 1, 
"Allocating map of size %dx%d", size_x, size_y);
 
   71   const char *exp, 
const char *file, 
int line)
 
   88     seprintf(buf, 
lastof(buf), 
"TILE_ADD(%s) when adding 0x%.4X and 0x%.4X failed",
 
   90 #if !defined(_MSC_VER) || defined(WINCE) 
   91     fprintf(stderr, 
"%s:%d %s\n", file, line, buf);
 
   93     _assert(buf, (
char*)file, line);
 
  118   uint x = 
TileX(tile) + addx;
 
  119   uint y = 
TileY(tile) + addy;
 
  180   return dx * dx + dy * dy;
 
  211   return dx > dy ? 2 * dx + dy : 2 * dy + dx;
 
  221   const uint xl = 
TileX(tile);
 
  222   const uint yl = 
TileY(tile);
 
  223   const uint xh = 
MapSizeX() - 1 - xl;
 
  224   const uint yh = 
MapSizeY() - 1 - yl;
 
  225   const uint minl = 
min(xl, yl);
 
  226   const uint minh = 
min(xh, yh);
 
  227   return min(minl, minh);
 
  243     default: NOT_REACHED();
 
  262   assert(proc != NULL);
 
  268     if (proc(*tile, user_data)) 
return true;
 
  300   assert(proc != NULL);
 
  303   uint x = 
TileX(*tile) + w + 1;
 
  304   uint y = 
TileY(*tile);
 
  308   for (uint n = 0; n < radius; n++) {
 
  311       for (uint j = extent[dir] + n * 2 + 1; j != 0; j--) {
 
  315           if (proc(t, user_data)) {
 
  323         x += _tileoffs_by_diagdir[dir].
x;
 
  324         y += _tileoffs_by_diagdir[dir].
y;
 
  328     x += _tileoffs_by_dir[
DIR_W].
x;
 
  329     y += _tileoffs_by_dir[
DIR_W].
y;
 
  346   uint max_dist = water ? 0x7F : 0x200;
 
  356   for (uint dist = 1; dist < max_dist; dist++) {
 
  362       static const int8 ddx[
DIAGDIR_END] = { -1,  1,  1, -1};
 
  363       static const int8 ddy[
DIAGDIR_END] = {  1,  1, -1, -1};
 
  369       for (uint a = 0; a < dist; a++) {