(svn r13566) [NoAI] -Fix: make AITileList_StationType a bit more friendly, and allow STATION_ANY
--- a/src/ai/api/ai_tilelist.cpp Wed Jun 18 10:58:16 2008 +0000
+++ b/src/ai/api/ai_tilelist.cpp Wed Jun 18 19:58:44 2008 +0000
@@ -156,12 +156,11 @@
if (!AIStation::IsValidStation(station_id)) return;
const StationRect *rect = &::GetStation(station_id)->rect;
- int station_type_value = ::FindFirstBit(station_type);
BEGIN_TILE_LOOP(cur_tile, rect->right - rect->left + 1, rect->bottom - rect->top + 1, ::TileXY(rect->left, rect->top)) {
if (!::IsTileType(cur_tile, MP_STATION)) continue;
if (::GetStationIndex(cur_tile) != station_id) continue;
- if (::GetStationType(cur_tile) != station_type_value) continue;
+ if (!HasBit(station_type, ::GetStationType(cur_tile))) continue;
this->AddTile(cur_tile);
} END_TILE_LOOP(cur_tile, rect->right - rect->left + 1, rect->bottom - rect->top + 1, ::TileXY(rect->left, rect->top))
}