summaryrefslogtreecommitdiff
path: root/src/ai/api/ai_road.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/ai/api/ai_road.cpp')
-rw-r--r--src/ai/api/ai_road.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/ai/api/ai_road.cpp b/src/ai/api/ai_road.cpp
index 1621e03ec..27694ac10 100644
--- a/src/ai/api/ai_road.cpp
+++ b/src/ai/api/ai_road.cpp
@@ -579,3 +579,16 @@ static bool NeighbourHasReachableRoad(::RoadTypes rts, TileIndex start_tile, Dia
return AIObject::DoCommand(tile, 0, GetRoadStopType(tile), CMD_REMOVE_ROAD_STOP);
}
+
+/* static */ Money AIRoad::GetBuildCost(RoadType roadtype, BuildType build_type)
+{
+ if (!AIRoad::IsRoadTypeAvailable(roadtype)) return -1;
+
+ switch (build_type) {
+ case BT_ROAD: return ::GetPrice(PR_BUILD_ROAD, 1, NULL);
+ case BT_DEPOT: return ::GetPrice(PR_BUILD_DEPOT_ROAD, 1, NULL);
+ case BT_BUS_STOP: return ::GetPrice(PR_BUILD_STATION_BUS, 1, NULL);
+ case BT_TRUCK_STOP: return ::GetPrice(PR_BUILD_STATION_TRUCK, 1, NULL);
+ default: return -1;
+ }
+}