summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/dock_gui.cpp2
-rw-r--r--src/water_cmd.cpp4
2 files changed, 4 insertions, 2 deletions
diff --git a/src/dock_gui.cpp b/src/dock_gui.cpp
index 184c69ea9..77282403c 100644
--- a/src/dock_gui.cpp
+++ b/src/dock_gui.cpp
@@ -156,7 +156,7 @@ static void BuildDocksToolbWndProc(Window *w, WindowEvent *e)
if ((e->we.place.userdata & 0xF) == VPM_X_AND_Y) { // dragged actions
GUIPlaceProcDragXY(e);
} else if (e->we.place.userdata == VPM_X_OR_Y) {
- DoCommandP(e->we.place.tile, e->we.place.starttile, _ctrl_pressed, CcBuildCanal, CMD_BUILD_CANAL | CMD_AUTO | CMD_MSG(STR_CANT_BUILD_CANALS));
+ DoCommandP(e->we.place.tile, e->we.place.starttile, 0, CcBuildCanal, CMD_BUILD_CANAL | CMD_AUTO | CMD_MSG(STR_CANT_BUILD_CANALS));
}
}
break;
diff --git a/src/water_cmd.cpp b/src/water_cmd.cpp
index 4b1270797..5643aa8fe 100644
--- a/src/water_cmd.cpp
+++ b/src/water_cmd.cpp
@@ -212,7 +212,7 @@ int32 CmdBuildLock(TileIndex tile, uint32 flags, uint32 p1, uint32 p2)
/** Build a piece of canal.
* @param tile end tile of stretch-dragging
* @param p1 start tile of stretch-dragging
- * @param p2 ctrl pressed - toggles ocean / canals at sealevel
+ * @param p2 ctrl pressed - toggles ocean / canals at sealevel (ocean only allowed in the scenario editor)
*/
int32 CmdBuildCanal(TileIndex tile, uint32 flags, uint32 p1, uint32 p2)
{
@@ -223,6 +223,8 @@ int32 CmdBuildCanal(TileIndex tile, uint32 flags, uint32 p1, uint32 p2)
int sx, sy;
if (p1 >= MapSize()) return CMD_ERROR;
+ /* Outside of the editor you can only build canals, not oceans */
+ if (HASBIT(p2, 0) && _game_mode != GM_EDITOR) return CMD_ERROR;
x = TileX(tile);
y = TileY(tile);