diff --git a/ttd.c b/ttd.c --- a/ttd.c +++ b/ttd.c @@ -1185,6 +1185,19 @@ void UpdateExclusiveRights() */ } +byte covert_currency[] = { + 0, 1, 12, 8, 3, + 10, 14, 19, 4, 5, + 9, 11, 13, 6, 17, + 16, 22, 21, 7, 15, + 18, 2, 20, }; + +// since savegame version 4.2 the currencies are arranged differently +void UpdateCurrencies() +{ + _opt.currency = covert_currency[_opt.currency]; +} + extern void UpdateOldAircraft(); bool AfterLoadGame(uint version) @@ -1202,6 +1215,11 @@ bool AfterLoadGame(uint version) UpdateExclusiveRights(); } + // from version 4.2 of the savegame, currencies are in a different order + if (version <= 0x401) { + UpdateCurrencies(); + } + // convert road side to my format. if (_opt.road_side) _opt.road_side = 1;