(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)
--- 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;