public void CalcWalkable()
{
int lastx = -1;
int lasty = -1;
List<MultiTile> xyarr = new List<MultiTile>();
WalkableCount = 0;
foreach (MultiTile tile in Tiles)
{
if (tile.isVirtualFloor)
continue;
ItemData itemdata = TileData.ItemTable[tile.ID];
if ((itemdata.Flags & TileFlag.Surface) != 0)
{
if (tile.X != lastx && tile.Y != lasty)
xyarr = GetXYArray(tile.X, tile.Y);
int Start = tile.Z + itemdata.CalcHeight;
if (tile.IsWalkable(Start, xyarr))
++WalkableCount;
}
}
}