summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYexo <yexo@openttd.org>2009-01-26 20:18:50 +0000
committerYexo <yexo@openttd.org>2009-01-26 20:18:50 +0000
commit7f9c91901ee4e55f98fe2cc83ea81000eba7c06e (patch)
tree09b2881948f0d28bd84ec4459ebc43b0028a595f
parentd960d0a85161d1e251faab7506f5b6a42f22004b (diff)
downloadopenttd-7f9c91901ee4e55f98fe2cc83ea81000eba7c06e.tar.xz
(svn r15277) -Fix (r15027): Building bridges in AITestMode always returned false.
-rw-r--r--src/ai/api/ai_bridge.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/ai/api/ai_bridge.cpp b/src/ai/api/ai_bridge.cpp
index e67794e2a..1ca26b81d 100644
--- a/src/ai/api/ai_bridge.cpp
+++ b/src/ai/api/ai_bridge.cpp
@@ -81,6 +81,7 @@ static void _DoCommandReturnBuildBridge1(class AIInstance *instance)
}
AIObject::SetCallbackVariable(0, start);
+ AIObject::SetCallbackVariable(1, end);
if (!AIObject::DoCommand(end, start, type | bridge_id, CMD_BUILD_BRIDGE, NULL, &_DoCommandReturnBuildBridge1)) return false;
/* In case of test-mode, test if we can build both road pieces */
@@ -91,7 +92,7 @@ static void _DoCommandReturnBuildBridge1(class AIInstance *instance)
{
/* Build the piece of road on the 'start' side of the bridge */
TileIndex end = AIObject::GetCallbackVariable(0);
- TileIndex start = AIBridge::GetOtherBridgeEnd(end);
+ TileIndex start = AIObject::GetCallbackVariable(1);
DiagDirection dir_1 = (DiagDirection)((::TileX(start) == ::TileX(end)) ? (::TileY(start) < ::TileY(end) ? DIAGDIR_NW : DIAGDIR_SE) : (::TileX(start) < ::TileX(end) ? DIAGDIR_NE : DIAGDIR_SW));
DiagDirection dir_2 = ::ReverseDiagDir(dir_1);
@@ -106,7 +107,7 @@ static void _DoCommandReturnBuildBridge1(class AIInstance *instance)
{
/* Build the piece of road on the 'end' side of the bridge */
TileIndex end = AIObject::GetCallbackVariable(0);
- TileIndex start = AIBridge::GetOtherBridgeEnd(end);
+ TileIndex start = AIObject::GetCallbackVariable(1);
DiagDirection dir_1 = (DiagDirection)((::TileX(start) == ::TileX(end)) ? (::TileY(start) < ::TileY(end) ? DIAGDIR_NW : DIAGDIR_SE) : (::TileX(start) < ::TileX(end) ? DIAGDIR_NE : DIAGDIR_SW));
DiagDirection dir_2 = ::ReverseDiagDir(dir_1);