summaryrefslogtreecommitdiff
path: root/src/script/api/script_marine.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_marine.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_marine.cpp')
-rw-r--r--src/script/api/script_marine.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/script/api/script_marine.cpp b/src/script/api/script_marine.cpp
index f67b8d24c..abc8666f1 100644
--- a/src/script/api/script_marine.cpp
+++ b/src/script/api/script_marine.cpp
@@ -73,6 +73,7 @@
/* static */ bool ScriptMarine::BuildWaterDepot(TileIndex tile, TileIndex front)
{
+ EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY);
EnforcePrecondition(false, ::IsValidTile(tile));
EnforcePrecondition(false, ::IsValidTile(front));
EnforcePrecondition(false, (::TileX(front) == ::TileX(tile)) != (::TileY(front) == ::TileY(tile)));
@@ -82,6 +83,7 @@
/* static */ bool ScriptMarine::BuildDock(TileIndex tile, StationID station_id)
{
+ EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY);
EnforcePrecondition(false, ::IsValidTile(tile));
EnforcePrecondition(false, station_id == ScriptStation::STATION_NEW || station_id == ScriptStation::STATION_JOIN_ADJACENT || ScriptStation::IsValidStation(station_id));
@@ -92,6 +94,7 @@
/* static */ bool ScriptMarine::BuildBuoy(TileIndex tile)
{
+ EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY);
EnforcePrecondition(false, ::IsValidTile(tile));
return ScriptObject::DoCommand(tile, 0, 0, CMD_BUILD_BUOY);
@@ -99,6 +102,7 @@
/* static */ bool ScriptMarine::BuildLock(TileIndex tile)
{
+ EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY);
EnforcePrecondition(false, ::IsValidTile(tile));
return ScriptObject::DoCommand(tile, 0, 0, CMD_BUILD_LOCK);
@@ -106,6 +110,7 @@
/* static */ bool ScriptMarine::BuildCanal(TileIndex tile)
{
+ EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY);
EnforcePrecondition(false, ::IsValidTile(tile));
return ScriptObject::DoCommand(tile, tile, WATER_CLASS_CANAL, CMD_BUILD_CANAL);
@@ -113,6 +118,7 @@
/* static */ bool ScriptMarine::RemoveWaterDepot(TileIndex tile)
{
+ EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY);
EnforcePrecondition(false, ::IsValidTile(tile));
EnforcePrecondition(false, IsWaterDepotTile(tile));
@@ -121,6 +127,7 @@
/* static */ bool ScriptMarine::RemoveDock(TileIndex tile)
{
+ EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY);
EnforcePrecondition(false, ::IsValidTile(tile));
EnforcePrecondition(false, IsDockTile(tile));
@@ -129,6 +136,7 @@
/* static */ bool ScriptMarine::RemoveBuoy(TileIndex tile)
{
+ EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY);
EnforcePrecondition(false, ::IsValidTile(tile));
EnforcePrecondition(false, IsBuoyTile(tile));
@@ -137,6 +145,7 @@
/* static */ bool ScriptMarine::RemoveLock(TileIndex tile)
{
+ EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY);
EnforcePrecondition(false, ::IsValidTile(tile));
EnforcePrecondition(false, IsLockTile(tile));
@@ -145,6 +154,7 @@
/* static */ bool ScriptMarine::RemoveCanal(TileIndex tile)
{
+ EnforcePrecondition(false, ScriptObject::GetCompany() != OWNER_DEITY);
EnforcePrecondition(false, ::IsValidTile(tile));
EnforcePrecondition(false, IsCanalTile(tile));