openttd.c
changeset 2293 a71c210076be
parent 2290 3283963c5422
child 2297 0117f7a7c704
--- a/openttd.c	Sat Aug 06 15:18:26 2005 +0000
+++ b/openttd.c	Sat Aug 06 16:07:22 2005 +0000
@@ -579,6 +579,8 @@
 		DoStartupNewPlayer(false);
 
 		_local_player = 0;
+		_current_player = _local_player;
+		DoCommandP(0, (_patches.autorenew << 15 ) | (_patches.autorenew_months << 16) | 4, _patches.autorenew_money, NULL, CMD_REPLACE_VEHICLE);
 	}
 
 	MarkWholeScreenDirty();
@@ -651,6 +653,8 @@
 	StartupDisasters();
 
 	_local_player = 0;
+	_current_player = _local_player;
+	DoCommandP(0, (_patches.autorenew << 15 ) | (_patches.autorenew_months << 16) | 4, _patches.autorenew_money, NULL, CMD_REPLACE_VEHICLE);
 
 	MarkWholeScreenDirty();
 }
@@ -1242,6 +1246,23 @@
 		} END_TILE_LOOP(tile, MapSizeX(), MapSizeY(), 0);
 	}
 
+	if (version < 0x1000) {
+		int i;
+		FOR_ALL_PLAYERS(p) {
+			for (i = 0; i < 256; i++) {
+				p->engine_replacement[i] = INVALID_ENGINE;
+			}
+			p->engine_renew = false;
+			p->engine_renew_months = -6;
+			p->engine_renew_money = 100000;
+		}
+		// Set the human controlled player to the patch settings
+		p = GetPlayer(_local_player);
+		p->engine_renew = _patches.autorenew;
+		p->engine_renew_months = _patches.autorenew_months;
+		p->engine_renew_money = _patches.autorenew_money;
+	}
+
 	FOR_ALL_PLAYERS(p) {
 		p->avail_railtypes = GetPlayerRailtypes(p->index);
 	}