diff options
author | truebrain <truebrain@openttd.org> | 2011-12-19 21:05:36 +0000 |
---|---|---|
committer | truebrain <truebrain@openttd.org> | 2011-12-19 21:05:36 +0000 |
commit | 9b6b2cabc187f3cb72a53d396418ab1b9ebd2933 (patch) | |
tree | ac5d34e3837adcdf45c69ab844bd823dc740900a /src/script/api/script_rail.cpp | |
parent | cc3f42794d134b9f4b6c7efecb07d4b3366887c1 (diff) | |
download | openttd-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_rail.cpp')
-rw-r--r-- | src/script/api/script_rail.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/script/api/script_rail.cpp b/src/script/api/script_rail.cpp index edd931388..f77894d92 100644 --- a/src/script/api/script_rail.cpp +++ b/src/script/api/script_rail.cpp @@ -113,6 +113,7 @@ /* static */ bool ScriptRail::ConvertRailType(TileIndex start_tile, TileIndex end_tile, ScriptRail::RailType convert_to) { + EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY); EnforcePrecondition(false, ::IsValidTile(start_tile)); EnforcePrecondition(false, ::IsValidTile(end_tile)); EnforcePrecondition(false, IsRailTypeAvailable(convert_to)); @@ -136,6 +137,7 @@ /* static */ bool ScriptRail::BuildRailDepot(TileIndex tile, TileIndex front) { + EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY); EnforcePrecondition(false, tile != front); EnforcePrecondition(false, ::IsValidTile(tile)); EnforcePrecondition(false, ::IsValidTile(front)); @@ -149,6 +151,7 @@ /* static */ bool ScriptRail::BuildRailStation(TileIndex tile, RailTrack direction, uint num_platforms, uint platform_length, StationID station_id) { + EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY); EnforcePrecondition(false, ::IsValidTile(tile)); EnforcePrecondition(false, direction == RAILTRACK_NW_SE || direction == RAILTRACK_NE_SW); EnforcePrecondition(false, num_platforms > 0 && num_platforms <= 0xFF); @@ -164,6 +167,7 @@ /* static */ bool ScriptRail::BuildNewGRFRailStation(TileIndex tile, RailTrack direction, uint num_platforms, uint platform_length, StationID station_id, CargoID cargo_id, IndustryType source_industry, IndustryType goal_industry, int distance, bool source_station) { + EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY); EnforcePrecondition(false, ::IsValidTile(tile)); EnforcePrecondition(false, direction == RAILTRACK_NW_SE || direction == RAILTRACK_NE_SW); EnforcePrecondition(false, num_platforms > 0 && num_platforms <= 0xFF); @@ -196,6 +200,7 @@ /* static */ bool ScriptRail::BuildRailWaypoint(TileIndex tile) { + EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY); EnforcePrecondition(false, ::IsValidTile(tile)); EnforcePrecondition(false, IsRailTile(tile)); EnforcePrecondition(false, GetRailTracks(tile) == RAILTRACK_NE_SW || GetRailTracks(tile) == RAILTRACK_NW_SE); @@ -206,6 +211,7 @@ /* static */ bool ScriptRail::RemoveRailWaypointTileRectangle(TileIndex tile, TileIndex tile2, bool keep_rail) { + EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY); EnforcePrecondition(false, ::IsValidTile(tile)); EnforcePrecondition(false, ::IsValidTile(tile2)); @@ -214,6 +220,7 @@ /* static */ bool ScriptRail::RemoveRailStationTileRectangle(TileIndex tile, TileIndex tile2, bool keep_rail) { + EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY); EnforcePrecondition(false, ::IsValidTile(tile)); EnforcePrecondition(false, ::IsValidTile(tile2)); @@ -232,6 +239,7 @@ /* static */ bool ScriptRail::BuildRailTrack(TileIndex tile, RailTrack rail_track) { + EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY); EnforcePrecondition(false, ::IsValidTile(tile)); EnforcePrecondition(false, rail_track != 0); EnforcePrecondition(false, (rail_track & ~::TRACK_BIT_ALL) == 0); @@ -243,6 +251,7 @@ /* static */ bool ScriptRail::RemoveRailTrack(TileIndex tile, RailTrack rail_track) { + EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY); EnforcePrecondition(false, ::IsValidTile(tile)); EnforcePrecondition(false, ::IsPlainRailTile(tile) || ::IsLevelCrossingTile(tile)); EnforcePrecondition(false, GetRailTracks(tile) & rail_track); @@ -336,6 +345,7 @@ static uint32 SimulateDrag(TileIndex from, TileIndex tile, TileIndex *to) /* static */ bool ScriptRail::BuildRail(TileIndex from, TileIndex tile, TileIndex to) { + EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY); EnforcePrecondition(false, ::IsValidTile(from)); EnforcePrecondition(false, ::IsValidTile(tile)); EnforcePrecondition(false, ::IsValidTile(to)); @@ -353,6 +363,7 @@ static uint32 SimulateDrag(TileIndex from, TileIndex tile, TileIndex *to) /* static */ bool ScriptRail::RemoveRail(TileIndex from, TileIndex tile, TileIndex to) { + EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY); EnforcePrecondition(false, ::IsValidTile(from)); EnforcePrecondition(false, ::IsValidTile(tile)); EnforcePrecondition(false, ::IsValidTile(to)); @@ -426,6 +437,7 @@ static bool IsValidSignalType(int signal_type) /* static */ bool ScriptRail::BuildSignal(TileIndex tile, TileIndex front, SignalType signal) { + EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY); EnforcePrecondition(false, ScriptMap::DistanceManhattan(tile, front) == 1) EnforcePrecondition(false, ::IsPlainRailTile(tile)); EnforcePrecondition(false, ::IsValidSignalType(signal)); @@ -455,6 +467,7 @@ static bool IsValidSignalType(int signal_type) /* static */ bool ScriptRail::RemoveSignal(TileIndex tile, TileIndex front) { + EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY); EnforcePrecondition(false, ScriptMap::DistanceManhattan(tile, front) == 1) EnforcePrecondition(false, GetSignalType(tile, front) != SIGNALTYPE_NONE); |