(svn r21798) -Fix: loading a TTO savegame failed after loading a TTDP savegame with vehicle multiplier bigger than 1

replace/41b28d7194a279bdc17475d4fbe2ea6ec885a466
smatz 14 years ago
parent 6b86ee9888
commit 804542b3f3

@ -34,9 +34,9 @@
#include "../table/engines.h" #include "../table/engines.h"
#include "../table/townname.h" #include "../table/townname.h"
static bool _read_ttdpatch_flags; static bool _read_ttdpatch_flags;
static uint8 *_old_map3; static uint8 *_old_map3;
void FixOldMapArray() void FixOldMapArray()
{ {
@ -491,15 +491,16 @@ static uint16 _old_extra_chunk_nums;
static void ReadTTDPatchFlags() static void ReadTTDPatchFlags()
{ {
if (_read_ttdpatch_flags) return;
_read_ttdpatch_flags = true;
if (_savegame_type == SGT_TTO) { if (_savegame_type == SGT_TTO) {
_old_vehicle_multiplier = 1; _old_vehicle_multiplier = 1;
_bump_assert_value = 0;
return; return;
} }
if (_read_ttdpatch_flags) return;
_read_ttdpatch_flags = true;
/* TTDPatch misuses _old_map3 for flags.. read them! */ /* TTDPatch misuses _old_map3 for flags.. read them! */
_old_vehicle_multiplier = _old_map3[0]; _old_vehicle_multiplier = _old_map3[0];
/* Somehow.... there was an error in some savegames, so 0 becomes 1 /* Somehow.... there was an error in some savegames, so 0 becomes 1

Loading…
Cancel
Save