changeset 6286:a04d2e1b80be draft

(svn r9105) -Fix [FS#629]: disable the ability to make flooding water with the canal build tool. In the scenario editor you can still make both canals and flooding water at height level 0.
author rubidium <rubidium@openttd.org>
date Sat, 10 Mar 2007 21:44:22 +0000
parents 3e2faa1f190c
children ae09d5d46d9d
files src/dock_gui.cpp src/water_cmd.cpp
diffstat 2 files changed, 4 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/dock_gui.cpp
+++ b/src/dock_gui.cpp
@@ -156,7 +156,7 @@
 			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;
--- a/src/water_cmd.cpp
+++ b/src/water_cmd.cpp
@@ -212,7 +212,7 @@
 /** 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 @@
 	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);