(svn r12031) -Fix [FS#1689,FS#1719]: Prevent towns from removing or claiming ownership of player owned tiles when growing.
authorpeter1138
Thu, 31 Jan 2008 21:16:40 +0000
changeset 8957 ed06a4be28b9
parent 8956 0830ab903057
child 8958 b2c67df4bcc0
(svn r12031) -Fix [FS#1689,FS#1719]: Prevent towns from removing or claiming ownership of player owned tiles when growing.
src/town_cmd.cpp
src/unmovable_cmd.cpp
--- a/src/town_cmd.cpp	Thu Jan 31 18:44:28 2008 +0000
+++ b/src/town_cmd.cpp	Thu Jan 31 21:16:40 2008 +0000
@@ -1189,7 +1189,7 @@
 			/* Don't allow building over roads of other cities */
 			if (IsTileOwner(tile, OWNER_TOWN) && GetTownByTile(tile) != t) {
 				_grow_town_result = GROWTH_SUCCEED;
-			} else if (_game_mode == GM_EDITOR) {
+			} else if (IsTileOwner(tile, OWNER_NONE) && _game_mode == GM_EDITOR) {
 				/* If we are in the SE, and this road-piece has no town owner yet, it just found an
 				 * owner :) (happy happy happy road now) */
 				SetTileOwner(tile, OWNER_TOWN);
--- a/src/unmovable_cmd.cpp	Thu Jan 31 18:44:28 2008 +0000
+++ b/src/unmovable_cmd.cpp	Thu Jan 31 21:16:40 2008 +0000
@@ -264,6 +264,8 @@
 		return_cmd_error(STR_5800_OBJECT_IN_THE_WAY);
 
 	if (IsStatue(tile)) {
+		if (flags & DC_AUTO) return_cmd_error(STR_5800_OBJECT_IN_THE_WAY);
+
 		TownID town = GetStatueTownID(tile);
 		ClrBit(GetTown(town)->statues, _current_player);
 		InvalidateWindow(WC_TOWN_AUTHORITY, town);