Add: [Script] ScriptTileList_StationCoverage (#12015)
This commit is contained in:
@@ -21,6 +21,7 @@
|
||||
* \li AITimeMode
|
||||
* \li AITown::ROAD_LAYOUT_RANDOM
|
||||
* \li AIVehicle::IsPrimaryVehicle
|
||||
* \li AITileList_StationCoverage
|
||||
*
|
||||
* API removals:
|
||||
* \li AIError::ERR_PRECONDITION_TOO_MANY_PARAMETERS, that error is never returned anymore.
|
||||
|
@@ -87,10 +87,11 @@
|
||||
* \li GSStoryPage::IsValidStoryPageButtonColour
|
||||
* \li GSStoryPage::IsValidStoryPageButtonFlags
|
||||
* \li GSStoryPage::IsValidStoryPageButtonCursor
|
||||
* \li GSTileList_StationCoverage
|
||||
*
|
||||
* API removals:
|
||||
* \li GSError::ERR_PRECONDITION_TOO_MANY_PARAMETERS, that error is never returned anymore.
|
||||
* \li AIInfo::CONFIG_RANDOM, no longer used.
|
||||
* \li GSInfo::CONFIG_RANDOM, no longer used.
|
||||
*
|
||||
* Other changes:
|
||||
* \li GSGroupList accepts an optional filter function
|
||||
|
@@ -147,3 +147,13 @@ ScriptTileList_StationType::ScriptTileList_StationType(StationID station_id, Scr
|
||||
this->AddTile(cur_tile);
|
||||
}
|
||||
}
|
||||
|
||||
ScriptTileList_StationCoverage::ScriptTileList_StationCoverage(StationID station_id)
|
||||
{
|
||||
if (!ScriptStation::IsValidStation(station_id)) return;
|
||||
|
||||
BitmapTileIterator it(::Station::Get(station_id)->catchment_tiles);
|
||||
for (TileIndex tile = it; tile != INVALID_TILE; tile = ++it) {
|
||||
this->AddTile(tile);
|
||||
}
|
||||
}
|
||||
|
@@ -104,4 +104,17 @@ public:
|
||||
ScriptTileList_StationType(StationID station_id, ScriptStation::StationType station_type);
|
||||
};
|
||||
|
||||
/**
|
||||
* Creates a list of tiles in the catchment area of the StationID.
|
||||
* @api ai game
|
||||
* @ingroup ScriptList
|
||||
*/
|
||||
class ScriptTileList_StationCoverage : public ScriptTileList {
|
||||
public:
|
||||
/**
|
||||
* @param station_id The station to create the ScriptTileList for.
|
||||
*/
|
||||
ScriptTileList_StationCoverage(StationID station_id);
|
||||
};
|
||||
|
||||
#endif /* SCRIPT_TILELIST_HPP */
|
||||
|
Reference in New Issue
Block a user