ServerEnvironment::loadDefaultMeta: Loading default meta is only possible for ServerE...
authorLoic Blot <loic.blot@unix-experience.fr>
Fri, 16 Mar 2018 07:52:42 +0000 (08:52 +0100)
committerLoic Blot <loic.blot@unix-experience.fr>
Fri, 16 Mar 2018 07:52:42 +0000 (08:52 +0100)
src/server.cpp
src/serverenvironment.cpp
src/serverenvironment.h

index 5b2f69df991109d276410de4fcf3ad56523cf9f2..0f9394300cd175d4960de7c78db8b34e5ca03063 100644 (file)
@@ -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");
index 4ca76eead2a954844fe031335cc957f3f5187a41..74b44c730f7d34826bc58141727f6cb9806cc739 100644 (file)
@@ -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);
index f4996cdc61a552d77f61fa7f22d93c84847a9887..225f788d9d5ea4e13ad78d1a4212e0546f6a189a 100644 (file)
@@ -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);
        /*