aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/map_settings_manager.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/map_settings_manager.cpp b/src/map_settings_manager.cpp
index 7ef4bf12e..4f070e910 100644
--- a/src/map_settings_manager.cpp
+++ b/src/map_settings_manager.cpp
@@ -32,7 +32,6 @@ MapSettingsManager::MapSettingsManager(Settings *user_settings,
m_user_settings(user_settings)
{
assert(m_user_settings != NULL);
- Mapgen::setDefaultSettings(m_map_settings);
}
@@ -180,6 +179,16 @@ MapgenParams *MapSettingsManager::makeMapgenParams()
params->mgtype = mgtype;
+ // Load the mapgen param defaults
+ /* FIXME: Why is it done like this? MapgenParams should just
+ * set the defaults in its constructor instead. */
+ {
+ Settings default_settings;
+ Mapgen::setDefaultSettings(&default_settings);
+ params->MapgenParams::readParams(&default_settings);
+ params->readParams(&default_settings);
+ }
+
// Load the rest of the mapgen params from our active settings
params->MapgenParams::readParams(m_user_settings);
params->MapgenParams::readParams(m_map_settings);