summaryrefslogtreecommitdiff
path: root/src/script/api/script_road.cpp
diff options
context:
space:
mode:
authortruebrain <truebrain@openttd.org>2011-12-19 21:05:36 +0000
committertruebrain <truebrain@openttd.org>2011-12-19 21:05:36 +0000
commit9b6b2cabc187f3cb72a53d396418ab1b9ebd2933 (patch)
treeac5d34e3837adcdf45c69ab844bd823dc740900a /src/script/api/script_road.cpp
parentcc3f42794d134b9f4b6c7efecb07d4b3366887c1 (diff)
downloadopenttd-9b6b2cabc187f3cb72a53d396418ab1b9ebd2933.tar.xz
(svn r23633) -Add: allow most build commands from GameScript given a CompanyMode is active in that scope
Diffstat (limited to 'src/script/api/script_road.cpp')
-rw-r--r--src/script/api/script_road.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/script/api/script_road.cpp b/src/script/api/script_road.cpp
index b25f74c61..19db9a901 100644
--- a/src/script/api/script_road.cpp
+++ b/src/script/api/script_road.cpp
@@ -468,6 +468,7 @@ static bool NeighbourHasReachableRoad(::RoadTypes rts, TileIndex start_tile, Dia
/* static */ bool ScriptRoad::BuildOneWayRoad(TileIndex start, TileIndex end)
{
+ EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY);
return _BuildRoadInternal(start, end, true, false);
}
@@ -478,11 +479,13 @@ static bool NeighbourHasReachableRoad(::RoadTypes rts, TileIndex start_tile, Dia
/* static */ bool ScriptRoad::BuildOneWayRoadFull(TileIndex start, TileIndex end)
{
+ EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY);
return _BuildRoadInternal(start, end, true, true);
}
/* static */ bool ScriptRoad::BuildRoadDepot(TileIndex tile, TileIndex front)
{
+ EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY);
EnforcePrecondition(false, tile != front);
EnforcePrecondition(false, ::IsValidTile(tile));
EnforcePrecondition(false, ::IsValidTile(front));
@@ -496,6 +499,7 @@ static bool NeighbourHasReachableRoad(::RoadTypes rts, TileIndex start_tile, Dia
/* static */ bool ScriptRoad::_BuildRoadStationInternal(TileIndex tile, TileIndex front, RoadVehicleType road_veh_type, bool drive_through, StationID station_id)
{
+ EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY);
EnforcePrecondition(false, tile != front);
EnforcePrecondition(false, ::IsValidTile(tile));
EnforcePrecondition(false, ::IsValidTile(front));
@@ -532,6 +536,7 @@ static bool NeighbourHasReachableRoad(::RoadTypes rts, TileIndex start_tile, Dia
/* static */ bool ScriptRoad::RemoveRoad(TileIndex start, TileIndex end)
{
+ EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY);
EnforcePrecondition(false, ::IsValidTile(start));
EnforcePrecondition(false, ::IsValidTile(end));
EnforcePrecondition(false, ::TileX(start) == ::TileX(end) || ::TileY(start) == ::TileY(end));
@@ -542,6 +547,7 @@ static bool NeighbourHasReachableRoad(::RoadTypes rts, TileIndex start_tile, Dia
/* static */ bool ScriptRoad::RemoveRoadFull(TileIndex start, TileIndex end)
{
+ EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY);
EnforcePrecondition(false, ::IsValidTile(start));
EnforcePrecondition(false, ::IsValidTile(end));
EnforcePrecondition(false, ::TileX(start) == ::TileX(end) || ::TileY(start) == ::TileY(end));
@@ -552,6 +558,7 @@ static bool NeighbourHasReachableRoad(::RoadTypes rts, TileIndex start_tile, Dia
/* static */ bool ScriptRoad::RemoveRoadDepot(TileIndex tile)
{
+ EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY);
EnforcePrecondition(false, ::IsValidTile(tile));
EnforcePrecondition(false, IsTileType(tile, MP_ROAD))
EnforcePrecondition(false, GetRoadTileType(tile) == ROAD_TILE_DEPOT);
@@ -561,6 +568,7 @@ static bool NeighbourHasReachableRoad(::RoadTypes rts, TileIndex start_tile, Dia
/* static */ bool ScriptRoad::RemoveRoadStation(TileIndex tile)
{
+ EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY);
EnforcePrecondition(false, ::IsValidTile(tile));
EnforcePrecondition(false, IsTileType(tile, MP_STATION));
EnforcePrecondition(false, IsRoadStop(tile));