diff options
author | sfan5 <sfan5@live.de> | 2022-01-09 21:15:35 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-01-09 21:15:35 +0100 |
commit | 4c8c6497799c83cb5bac773ac4eac7ea572ec78f (patch) | |
tree | ffa67ce9002a94f6354eedbc94a1b768ed0cd336 /src/content | |
parent | b164e16d1be30220029729d63a1e621395ad00ad (diff) | |
download | minetest-4c8c6497799c83cb5bac773ac4eac7ea572ec78f.tar.gz minetest-4c8c6497799c83cb5bac773ac4eac7ea572ec78f.tar.bz2 minetest-4c8c6497799c83cb5bac773ac4eac7ea572ec78f.zip |
Mainmenu game-related changes (#11887)
fixes:
* Switching between games does not immediately hide creative mode / damage buttons if so specified
* World creation menu has a game selection list even though the menu already provides a gamebar
* Showing gameid in world list is unnecessary
* Choice of mapgen parameters in menu persists between games (and was half-broken)
Diffstat (limited to 'src/content')
-rw-r--r-- | src/content/subgames.cpp | 17 |
1 files changed, 5 insertions, 12 deletions
diff --git a/src/content/subgames.cpp b/src/content/subgames.cpp index e834f40cd..62e82e0e4 100644 --- a/src/content/subgames.cpp +++ b/src/content/subgames.cpp @@ -24,7 +24,7 @@ with this program; if not, write to the Free Software Foundation, Inc., #include "log.h" #include "util/strfnd.h" #include "defaultsettings.h" // for set_default_settings -#include "mapgen/mapgen.h" // for MapgenParams +#include "map_settings_manager.h" #include "util/string.h" #ifndef SERVER @@ -370,19 +370,12 @@ void loadGameConfAndInitWorld(const std::string &path, const std::string &name, // Create map_meta.txt if does not already exist std::string map_meta_path = final_path + DIR_DELIM + "map_meta.txt"; if (!fs::PathExists(map_meta_path)) { - verbosestream << "Creating map_meta.txt (" << map_meta_path << ")" - << std::endl; - std::ostringstream oss(std::ios_base::binary); + MapSettingsManager mgr(map_meta_path); - Settings conf; - MapgenParams params; - - params.readParams(g_settings); - params.writeParams(&conf); - conf.writeLines(oss); - oss << "[end_of_params]\n"; + mgr.setMapSetting("seed", g_settings->get("fixed_map_seed")); - fs::safeWriteToFile(map_meta_path, oss.str()); + mgr.makeMapgenParams(); + mgr.saveMapMeta(); } // The Settings object is no longer needed for created worlds |