(svn r8071) -Fix (r5999): [FS#536] Merging 32bit dates broke the inauguration date of companies in
authorDarkvater
Fri, 12 Jan 2007 00:44:49 +0000
changeset 5865 7410b9ee6435
parent 5864 3f21c4757b8d
child 5866 20a8aa5fbc36
(svn r8071) -Fix (r5999): [FS#536] Merging 32bit dates broke the inauguration date of companies in
oldloader: "The year the company was inaugurated (full value, not base-1920)"
(Marcin Grzegorczyk's TTD internals site)
src/oldloader.cpp
--- a/src/oldloader.cpp	Thu Jan 11 21:49:39 2007 +0000
+++ b/src/oldloader.cpp	Fri Jan 12 00:44:49 2007 +0000
@@ -724,7 +724,6 @@
 }
 
 static PlayerID _current_player_id;
-static uint16 _old_inaugurated_year;
 static int32 _old_yearly;
 
 static const OldChunks player_yearly_chunk[] = {
@@ -939,9 +938,9 @@
 	OCL_CHUNK( 3, OldPlayerYearly ),
 	OCL_CHUNK( 1, OldPlayerEconomy ),
 
-	OCL_VAR ( OC_UINT16,   1,    &_old_inaugurated_year ),
-	OCL_SVAR(   OC_TILE, Player, last_build_coordinate ),
-	OCL_SVAR(  OC_UINT8, Player, num_valid_stat_ent ),
+	OCL_SVAR( OC_FILE_U16 | OC_VAR_I32, Player, inaugurated_year),
+	OCL_SVAR(                  OC_TILE, Player, last_build_coordinate ),
+	OCL_SVAR(                 OC_UINT8, Player, num_valid_stat_ent ),
 
 	OCL_CHUNK( 1, OldPlayerAI ),
 
@@ -990,7 +989,7 @@
 		p->money64 = p->player_money = p->current_loan = 100000;
 
 	_player_colors[num] = p->player_color;
-	p->inaugurated_year = _old_inaugurated_year;
+	p->inaugurated_year -= ORIGINAL_BASE_YEAR;
 	if (p->location_of_house == 0xFFFF)
 		p->location_of_house = 0;