road_cmd.c
changeset 2074 f23dcde246da
parent 2049 ad0d49c916d4
child 2085 ae9e92ffe168
--- a/road_cmd.c	Fri Jul 15 20:29:06 2005 +0000
+++ b/road_cmd.c	Fri Jul 15 21:17:38 2005 +0000
@@ -139,7 +139,7 @@
 	TileInfo ti;
 	int32 cost;
 	TileIndex tile;
-	byte owner;
+	PlayerID owner;
 	Town *t;
 	/* true if the roadpiece was always removeable,
 	 * false if it was a center piece. Affects town ratings drop */
@@ -154,12 +154,11 @@
 	FindLandscapeHeight(&ti, x, y);
 	tile = ti.tile;
 
-	// owner for railraod crossing is stored somewhere else
+	if (!IsTileType(tile, MP_STREET) && !IsTileType(tile, MP_TUNNELBRIDGE)) return CMD_ERROR;
+
+	// owner for railroad crossing is stored somewhere else
 	// XXX - Fix this so for a given tiletype the owner of the type is in the same variable
-	if (IsTileType(tile, MP_STREET) && IsLevelCrossing(tile)) {
-		owner = _m[tile].m3;
-	} else
-		owner = GetTileOwner(tile);
+	owner = IsLevelCrossing(tile) ? _m[tile].m3 : GetTileOwner(tile);
 
 	if (owner == OWNER_TOWN && _game_mode != GM_EDITOR) {
 		if (IsTileType(tile, MP_TUNNELBRIDGE)) { // index of town is not saved for bridge (no space)