(svn r17494) -Codechange: improve algorithmic complexitiy of Depot::GetByTile from O(n) to O(1)

This commit is contained in:
rubidium
2009-09-10 14:36:38 +00:00
parent 55ddce8da2
commit 751ea62f44
2 changed files with 5 additions and 25 deletions

View File

@@ -23,29 +23,6 @@
DepotPool _depot_pool("Depot");
INSTANTIATE_POOL_METHODS(Depot)
/**
* Gets a depot from a tile
* @param tile tile with depot
* @return Returns the depot if the tile had a depot, else it returns NULL
*/
/* static */ Depot *Depot::GetByTile(TileIndex tile)
{
/* A ship depot is multiple tiles. The north most tile is
* always the ->xy tile, so make sure we always look for
* the nothern tile and not the southern one. */
if (IsShipDepotTile(tile)) {
tile = min(tile, GetOtherShipDepotTile(tile));
}
Depot *depot;
FOR_ALL_DEPOTS(depot) {
if (depot->xy == tile) return depot;
}
return NULL;
}
/**
* Clean up a depot
*/