]> git.lizzy.rs Git - minetest.git/commitdiff
Mapgen: Fix on-by-default flags broken since eca6ee9 (#10318)
authorSmallJoker <SmallJoker@users.noreply.github.com>
Fri, 28 Aug 2020 22:14:38 +0000 (00:14 +0200)
committerGitHub <noreply@github.com>
Fri, 28 Aug 2020 22:14:38 +0000 (00:14 +0200)
src/map_settings_manager.cpp

index 4f070e910fcff6e1cb698cd399fb04a1ee9d0af9..9c447b3d0262eb33c5f4547e7616746121f8adb2 100644 (file)
@@ -32,6 +32,10 @@ MapSettingsManager::MapSettingsManager(Settings *user_settings,
        m_user_settings(user_settings)
 {
        assert(m_user_settings != NULL);
+
+       Mapgen::setDefaultSettings(m_map_settings);
+       // This inherits the combined defaults provided by loadGameConfAndInitWorld.
+       m_map_settings->overrideDefaults(user_settings);
 }
 
 
@@ -179,20 +183,8 @@ 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);
-       params->readParams(m_user_settings);
        params->readParams(m_map_settings);
 
        // Hold onto our params