diff options
-rw-r--r-- | src/subgame.cpp | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/src/subgame.cpp b/src/subgame.cpp index 55bbd3954..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 |