(svn r3319) - Fix (regression): "Unnamed Competitors". A result of revision r3224 which allowed AI's for multiplayer. Old AI's didn't function correctly anymore. The update of last-built tile is moved back, but to a slightly different place so it is only executed when the command is actually successfully executed. This code shouldn't be neccessary, but alas, the old AI doesn't use DoCommandDP() functions.
authorDarkvater
Sun, 18 Dec 2005 22:48:45 +0000
changeset 2772 593f2304e5ea
parent 2771 18a5056d5dd9
child 2773 121bea441d07
(svn r3319) - Fix (regression): "Unnamed Competitors". A result of revision r3224 which allowed AI's for multiplayer. Old AI's didn't function correctly anymore. The update of last-built tile is moved back, but to a slightly different place so it is only executed when the command is actually successfully executed. This code shouldn't be neccessary, but alas, the old AI doesn't use DoCommandDP() functions.
command.c
--- a/command.c	Sun Dec 18 20:48:22 2005 +0000
+++ b/command.c	Sun Dec 18 22:48:45 2005 +0000
@@ -377,6 +377,10 @@
 	// if toplevel, subtract the money.
 	if (--_docommand_recursive == 0) {
 		SubtractMoneyFromPlayer(res);
+		// XXX - Old AI hack which doesn't use DoCommandDP; update last build coord of player
+		if ( (x|y) != 0 && _current_player < MAX_PLAYERS) {
+			GetPlayer(_current_player)->last_build_coordinate = TileVirtXY(x, y);
+		}
 	}
 
 	_cmd_text = NULL;