summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorfrosch <frosch@openttd.org>2011-07-03 10:59:25 +0000
committerfrosch <frosch@openttd.org>2011-07-03 10:59:25 +0000
commitd29def43b072864fd80495b1ff786476e094c771 (patch)
treec1305508216d5791caa3a04190c69a784dec8c8a
parent9c015d369e01f027ccefea080b6ea7004e20afae (diff)
downloadopenttd-d29def43b072864fd80495b1ff786476e094c771.tar.xz
(svn r22626) -Fix [FS#4622]: Also initialise _old_vds with newgame settings; TTD savegames do not contain these settings.
-rw-r--r--src/openttd.cpp3
-rw-r--r--src/settings_internal.h2
-rw-r--r--src/settings_type.h3
3 files changed, 6 insertions, 2 deletions
diff --git a/src/openttd.cpp b/src/openttd.cpp
index 198e648fa..6cf40ffba 100644
--- a/src/openttd.cpp
+++ b/src/openttd.cpp
@@ -314,7 +314,10 @@ void MakeNewgameSettingsLive()
}
#endif /* ENABLE_AI */
+ /* Copy newgame settings to active settings.
+ * Also initialise old settings needed for savegame conversion. */
_settings_game = _settings_newgame;
+ _old_vds = _settings_client.company.vehicle;
#ifdef ENABLE_AI
for (CompanyID c = COMPANY_FIRST; c < MAX_COMPANIES; c++) {
diff --git a/src/settings_internal.h b/src/settings_internal.h
index 5ada21eaa..5c1d4adef 100644
--- a/src/settings_internal.h
+++ b/src/settings_internal.h
@@ -93,6 +93,4 @@ bool SetSettingValue(uint index, int32 value, bool force_newgame = false);
bool SetSettingValue(uint index, const char *value, bool force_newgame = false);
void SetCompanySetting(uint index, int32 value);
-extern VehicleDefaultSettings _old_vds;
-
#endif /* SETTINGS_INTERNAL_H */
diff --git a/src/settings_type.h b/src/settings_type.h
index 5179c7da8..5ff4a0637 100644
--- a/src/settings_type.h
+++ b/src/settings_type.h
@@ -465,6 +465,9 @@ extern GameSettings _settings_game;
/** The settings values that are used for new games and/or modified in config file. */
extern GameSettings _settings_newgame;
+/** Old vehicle settings, which were game settings before, and are company settings now. (Needed for savegame conversion) */
+extern VehicleDefaultSettings _old_vds;
+
/**
* Get the settings-object applicable for the current situation: the newgame settings
* when we're in the main menu and otherwise the settings of the current game.