X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=src%2Fsubgame.cpp;h=cd2aa752b56c96ee5049eb1d557d2070569fc615;hb=48cd217e3b6f53af32802c1897ddd1914d215078;hp=7e9a0b368e3452f99821c7a39359c5b163086ea2;hpb=93887043d9443ba6627fea68921994d0f1896517;p=minetest.git diff --git a/src/subgame.cpp b/src/subgame.cpp index 7e9a0b368..cd2aa752b 100644 --- a/src/subgame.cpp +++ b/src/subgame.cpp @@ -291,16 +291,16 @@ bool loadGameConfAndInitWorld(const std::string &path, const SubgameSpec &gamesp // Create world.mt if does not already exist std::string worldmt_path = path + DIR_DELIM "world.mt"; if (!fs::PathExists(worldmt_path)) { - std::ostringstream ss(std::ios_base::binary); - ss << "gameid = " << gamespec.id - << "\nbackend = sqlite3" - << "\ncreative_mode = " << g_settings->get("creative_mode") - << "\nenable_damage = " << g_settings->get("enable_damage") - << "\n"; - if (!fs::safeWriteToFile(worldmt_path, ss.str())) - return false; + Settings conf; - infostream << "Wrote world.mt (" << worldmt_path << ")" << std::endl; + conf.set("gameid", gamespec.id); + conf.set("backend", "sqlite3"); + conf.set("player_backend", "sqlite3"); + conf.setBool("creative_mode", g_settings->getBool("creative_mode")); + conf.setBool("enable_damage", g_settings->getBool("enable_damage")); + + if (!conf.updateConfigFile(worldmt_path.c_str())) + return false; } // Create map_meta.txt if does not already exist @@ -313,8 +313,8 @@ bool loadGameConfAndInitWorld(const std::string &path, const SubgameSpec &gamesp Settings conf; MapgenParams params; - params.load(*g_settings); - params.save(conf); + params.readParams(g_settings); + params.writeParams(&conf); conf.writeLines(oss); oss << "[end_of_params]\n";