diff options
author | Loic Blot <loic.blot@unix-experience.fr> | 2018-03-16 08:52:42 +0100 |
---|---|---|
committer | Loic Blot <loic.blot@unix-experience.fr> | 2018-03-16 08:52:42 +0100 |
commit | 95ce5583a9e4a0f95a4d9b28e0faedccd73e2b9d (patch) | |
tree | 512adae4ad72d5e139b9b4bcc1b187d844f53a9a | |
parent | 858c95630f799f23b06e845848faf241b7e010f0 (diff) | |
download | minetest-95ce5583a9e4a0f95a4d9b28e0faedccd73e2b9d.tar.gz minetest-95ce5583a9e4a0f95a4d9b28e0faedccd73e2b9d.tar.bz2 minetest-95ce5583a9e4a0f95a4d9b28e0faedccd73e2b9d.zip |
ServerEnvironment::loadDefaultMeta: Loading default meta is only possible for ServerEnv itself
-rw-r--r-- | src/server.cpp | 8 | ||||
-rw-r--r-- | src/serverenvironment.cpp | 13 | ||||
-rw-r--r-- | src/serverenvironment.h | 8 |
3 files changed, 19 insertions, 10 deletions
diff --git a/src/server.cpp b/src/server.cpp index 5b2f69df9..0f9394300 100644 --- a/src/server.cpp +++ b/src/server.cpp @@ -274,13 +274,7 @@ Server::Server( // Register us to receive map edit events servermap->addEventReceiver(this); - // If file exists, load environment metadata - if (fs::PathExists(m_path_world + DIR_DELIM "env_meta.txt")) { - infostream << "Server: Loading environment metadata" << std::endl; - m_env->loadMeta(); - } else { - m_env->loadDefaultMeta(); - } + m_env->loadMeta(); m_liquid_transform_every = g_settings->getFloat("liquid_update"); m_max_chatmessage_length = g_settings->getU16("chat_message_max_size"); diff --git a/src/serverenvironment.cpp b/src/serverenvironment.cpp index 4ca76eead..74b44c730 100644 --- a/src/serverenvironment.cpp +++ b/src/serverenvironment.cpp @@ -614,6 +614,16 @@ void ServerEnvironment::saveMeta() void ServerEnvironment::loadMeta() { + // If file doesn't exist, load default environment metadata + if (!fs::PathExists(m_path_world + DIR_DELIM "env_meta.txt")) { + infostream << "ServerEnvironment: Loading default environment metadata" + << std::endl; + loadDefaultMeta(); + return; + } + + infostream << "ServerEnvironment: Loading environment metadata" << std::endl; + std::string path = m_path_world + DIR_DELIM "env_meta.txt"; // Open file and deserialize @@ -664,6 +674,9 @@ void ServerEnvironment::loadMeta() args.getU64("day_count") : 0; } +/** + * called if env_meta.txt doesn't exist (e.g. new world) + */ void ServerEnvironment::loadDefaultMeta() { m_lbm_mgr.loadIntroductionTimes("", m_server, m_game_time); diff --git a/src/serverenvironment.h b/src/serverenvironment.h index f4996cdc6..225f788d9 100644 --- a/src/serverenvironment.h +++ b/src/serverenvironment.h @@ -232,9 +232,6 @@ public: */ void saveMeta(); void loadMeta(); - // to be called instead of loadMeta if - // env_meta.txt doesn't exist (e.g. new world) - void loadDefaultMeta(); u32 addParticleSpawner(float exptime); u32 addParticleSpawner(float exptime, u16 attached_id); @@ -371,6 +368,11 @@ public: const Settings &cmd_args); private: + /** + * called if env_meta.txt doesn't exist (e.g. new world) + */ + void loadDefaultMeta(); + static PlayerDatabase *openPlayerDatabase(const std::string &name, const std::string &savedir, const Settings &conf); /* |