# ai_map.cpp

Go to the documentation of this file.

    00001 /* $Id: ai_map.cpp 15299 2009-01-31 20:16:06Z smatz $ */
    00002
    00005 #include "ai_map.hpp"
    00006 #include "../../tile_map.h"
    00007
    00008 /* static */ bool AIMap::IsValidTile(TileIndex t)
    00009 {
    00010   return ::IsValidTile(t);
    00011 }
    00012
    00013 /* static */ TileIndex AIMap::GetMapSize()
    00014 {
    00015   return ::MapSize();
    00016 }
    00017
    00018 /* static */ uint32 AIMap::GetMapSizeX()
    00019 {
    00020   return ::MapSizeX();
    00021 }
    00022
    00023 /* static */ uint32 AIMap::GetMapSizeY()
    00024 {
    00025   return ::MapSizeY();
    00026 }
    00027
    00028 /* static */ int32 AIMap::GetTileX(TileIndex t)
    00029 {
    00030   if (!::IsValidTile(t)) return -1;
    00031   return ::TileX(t);
    00032 }
    00033
    00034 /* static */ int32 AIMap::GetTileY(TileIndex t)
    00035 {
    00036   if (!::IsValidTile(t)) return -1;
    00037   return ::TileY(t);
    00038 }
    00039
    00040 /* static */ TileIndex AIMap::GetTileIndex(uint32 x, uint32 y)
    00041 {
    00042   return ::TileXY(x, y);
    00043 }
    00044
    00045 /* static */ int32 AIMap::DistanceManhattan(TileIndex t1, TileIndex t2)
    00046 {
    00047   if (!::IsValidTile(t1) || !::IsValidTile(t2)) return -1;
    00048   return ::DistanceManhattan(t1, t2);
    00049 }
    00050
    00051 /* static */ int32 AIMap::DistanceMax(TileIndex t1, TileIndex t2)
    00052 {
    00053   if (!::IsValidTile(t1) || !::IsValidTile(t2)) return -1;
    00054   return ::DistanceMax(t1, t2);
    00055 }
    00056
    00057 /* static */ int32 AIMap::DistanceSquare(TileIndex t1, TileIndex t2)
    00058 {
    00059   if (!::IsValidTile(t1) || !::IsValidTile(t2)) return -1;
    00060   return ::DistanceSquare(t1, t2);
    00061 }
    00062
    00063 /* static */ int32 AIMap::DistanceFromEdge(TileIndex t)
    00064 {
    00065   if (!::IsValidTile(t)) return -1;
    00066   return ::DistanceFromEdge(t);
    00067 }