(svn r13526) [NoAI] -Fix: some namespace problems and forgotten pre-condition noai
authortruebrain
Sun, 15 Jun 2008 22:37:35 +0000
branchnoai
changeset 10972 986675d19245
parent 10971 aaf89f8c59b9
child 10973 8577bc56132c
(svn r13526) [NoAI] -Fix: some namespace problems and forgotten pre-condition
src/ai/api/ai_road.cpp
src/ai/api/ai_road.hpp
--- a/src/ai/api/ai_road.cpp	Sun Jun 15 22:18:10 2008 +0000
+++ b/src/ai/api/ai_road.cpp	Sun Jun 15 22:37:35 2008 +0000
@@ -120,9 +120,9 @@
 	EnforcePrecondition(false, start != end);
 	EnforcePrecondition(false, ::IsValidTile(start));
 	EnforcePrecondition(false, ::IsValidTile(end));
-	EnforcePrecondition(false, TileX(start) == TileX(end) || TileY(start) == TileY(end));
+	EnforcePrecondition(false, ::TileX(start) == ::TileX(end) || ::TileY(start) == ::TileY(end));
 
-	return AIObject::DoCommand(end, start, (TileY(start) != TileY(end) ? 4 : 0) | (start < end ? 1 : 2) | (AIObject::GetRoadType() << 3), CMD_BUILD_LONG_ROAD);
+	return AIObject::DoCommand(end, start, (::TileY(start) != ::TileY(end) ? 4 : 0) | (start < end ? 1 : 2) | (AIObject::GetRoadType() << 3), CMD_BUILD_LONG_ROAD);
 }
 
 /* static */ bool AIRoad::BuildRoadFull(TileIndex start, TileIndex end)
@@ -130,9 +130,9 @@
 	EnforcePrecondition(false, start != end);
 	EnforcePrecondition(false, ::IsValidTile(start));
 	EnforcePrecondition(false, ::IsValidTile(end));
-	EnforcePrecondition(false, TileX(start) == TileX(end) || TileY(start) == TileY(end));
+	EnforcePrecondition(false, ::TileX(start) == ::TileX(end) || ::TileY(start) == ::TileY(end));
 
-	return AIObject::DoCommand(end, start, (TileY(start) != TileY(end) ? 4 : 0) | (start < end ? 2 : 1) | (AIObject::GetRoadType() << 3), CMD_BUILD_LONG_ROAD);
+	return AIObject::DoCommand(end, start, (::TileY(start) != ::TileY(end) ? 4 : 0) | (start < end ? 2 : 1) | (AIObject::GetRoadType() << 3), CMD_BUILD_LONG_ROAD);
 }
 
 /* static */ bool AIRoad::BuildRoadDepot(TileIndex tile, TileIndex front)
@@ -140,8 +140,9 @@
 	EnforcePrecondition(false, tile != front);
 	EnforcePrecondition(false, ::IsValidTile(tile));
 	EnforcePrecondition(false, ::IsValidTile(front));
+	EnforcePrecondition(false, ::TileX(tile) == ::TileX(front) || ::TileY(tile) == ::TileY(front));
 
-	uint entrance_dir = (TileX(tile) == TileX(front)) ? (TileY(tile) < TileY(front) ? 1 : 3) : (TileX(tile) < TileX(front) ? 2 : 0);
+	uint entrance_dir = (::TileX(tile) == ::TileX(front)) ? (::TileY(tile) < ::TileY(front) ? 1 : 3) : (::TileX(tile) < ::TileX(front) ? 2 : 0);
 
 	return AIObject::DoCommand(tile, entrance_dir | (AIObject::GetRoadType() << 2), 0, CMD_BUILD_ROAD_DEPOT);
 }
@@ -151,12 +152,13 @@
 	EnforcePrecondition(false, tile != front);
 	EnforcePrecondition(false, ::IsValidTile(tile));
 	EnforcePrecondition(false, ::IsValidTile(front));
+	EnforcePrecondition(false, ::TileX(tile) == ::TileX(front) || ::TileY(tile) == ::TileY(front));
 
 	uint entrance_dir;
 	if (drive_through) {
-		entrance_dir = TileY(tile) != TileY(front);
+		entrance_dir = ::TileY(tile) != ::TileY(front);
 	} else {
-		entrance_dir = (TileX(tile) == TileX(front)) ? (TileY(tile) < TileY(front) ? 1 : 3) : (TileX(tile) < TileX(front) ? 2 : 0);
+		entrance_dir = (::TileX(tile) == ::TileX(front)) ? (::TileY(tile) < ::TileY(front) ? 1 : 3) : (::TileX(tile) < ::TileX(front) ? 2 : 0);
 	}
 
 	return AIObject::DoCommand(tile, entrance_dir, (drive_through ? 2 : 0) | (truck ? 1 : 0) | (::RoadTypeToRoadTypes(AIObject::GetRoadType()) << 2), CMD_BUILD_ROAD_STOP);
@@ -166,18 +168,18 @@
 {
 	EnforcePrecondition(false, ::IsValidTile(start));
 	EnforcePrecondition(false, ::IsValidTile(end));
-	EnforcePrecondition(false, TileX(start) == TileX(end) || TileY(start) == TileY(end));
+	EnforcePrecondition(false, ::TileX(start) == ::TileX(end) || ::TileY(start) == ::TileY(end));
 
-	return AIObject::DoCommand(end, start, (TileY(start) != TileY(end) ? 4 : 0) | (start < end ? 1 : 2) | (AIObject::GetRoadType() << 3), CMD_REMOVE_LONG_ROAD);
+	return AIObject::DoCommand(end, start, (::TileY(start) != ::TileY(end) ? 4 : 0) | (start < end ? 1 : 2) | (AIObject::GetRoadType() << 3), CMD_REMOVE_LONG_ROAD);
 }
 
 /* static */ bool AIRoad::RemoveRoadFull(TileIndex start, TileIndex end)
 {
 	EnforcePrecondition(false, ::IsValidTile(start));
 	EnforcePrecondition(false, ::IsValidTile(end));
-	EnforcePrecondition(false, TileX(start) == TileX(end) || TileY(start) == TileY(end));
+	EnforcePrecondition(false, ::TileX(start) == ::TileX(end) || ::TileY(start) == ::TileY(end));
 
-	return AIObject::DoCommand(end, start, (TileY(start) != TileY(end) ? 4 : 0) | (start < end ? 2 : 1) | (AIObject::GetRoadType() << 3), CMD_REMOVE_LONG_ROAD);
+	return AIObject::DoCommand(end, start, (::TileY(start) != ::TileY(end) ? 4 : 0) | (start < end ? 2 : 1) | (AIObject::GetRoadType() << 3), CMD_REMOVE_LONG_ROAD);
 }
 
 /* static */ bool AIRoad::RemoveRoadDepot(TileIndex tile)
--- a/src/ai/api/ai_road.hpp	Sun Jun 15 22:18:10 2008 +0000
+++ b/src/ai/api/ai_road.hpp	Sun Jun 15 22:37:35 2008 +0000
@@ -204,7 +204,7 @@
 	 * @param front The tile exactly in front of the depot.
 	 * @pre AIMap::IsValidTile(tile).
 	 * @pre AIMap::IsValidTile(front).
-	 * @pre Tile is not equal to front.
+	 * @pre 'tile' is not equal to 'front', but in a straight line of it.
 	 * @exception AIError::ERR_FLAT_LAND_REQUIRED
 	 * @exception AIError::ERR_AREA_NOT_CLEAR
 	 * @return Whether the road depot has been/can be build or not.
@@ -220,7 +220,7 @@
 	 * @param drive_through Whether to make the station drive through or not.
 	 * @pre AIMap::IsValidTile(tile).
 	 * @pre AIMap::IsValidTile(front).
-	 * @pre 'tile' is not equal to 'front'.
+	 * @pre 'tile' is not equal to 'front', but in a straight line of it.
 	 * @exception AIError::ERR_OWNED_BY_ANOTHER_COMPANY
 	 * @exception AIError::ERR_AREA_NOT_CLEAR
 	 * @exception AIError::ERR_FLAT_LAND_REQUIRED