(svn r12038) -Fix: Change ownership of or remove statues when merging/bankrupting companies.
authorpeter1138
Fri, 01 Feb 2008 22:13:59 +0000
changeset 8468 c21aff50e6f5
parent 8467 605661f3a91c
child 8469 c3621b1a6454
(svn r12038) -Fix: Change ownership of or remove statues when merging/bankrupting companies.
src/unmovable_cmd.cpp
--- a/src/unmovable_cmd.cpp	Fri Feb 01 22:02:14 2008 +0000
+++ b/src/unmovable_cmd.cpp	Fri Feb 01 22:13:59 2008 +0000
@@ -449,6 +449,19 @@
 
 	if (IsOwnedLand(tile) && new_player != PLAYER_SPECTATOR) {
 		SetTileOwner(tile, new_player);
+	} else if (IsStatueTile(tile)) {
+		TownID town = GetStatueTownID(tile);
+		Town *t = GetTown(town);
+		ClrBit(t->statues, old_player);
+		if (new_player != PLAYER_SPECTATOR && !HasBit(t->statues, new_player)) {
+			/* Transfer ownership to the new company */
+			SetBit(t->statues, new_player);
+			SetTileOwner(tile, new_player);
+		} else {
+			DoClearSquare(tile);
+		}
+
+		InvalidateWindow(WC_TOWN_AUTHORITY, town);
 	} else {
 		DoClearSquare(tile);
 	}