-EmergeManager::EmergeManager(IGameDef *gamedef) {
- //register built-in mapgens
- registerMapgen("v6", new MapgenFactoryV6());
- registerMapgen("v7", new MapgenFactoryV7());
- registerMapgen("indev", new MapgenFactoryIndev());
- registerMapgen("singlenode", new MapgenFactorySinglenode());
- registerMapgen("math", new MapgenFactoryMath());
-
- this->ndef = gamedef->getNodeDefManager();
- this->biomedef = new BiomeDefManager();
- this->params = NULL;
-
- this->luaoverride_params = NULL;
- this->luaoverride_params_modified = 0;
- this->luaoverride_flagmask = 0;
-
- this->gennotify = 0;
+EmergeManager::EmergeManager(IGameDef *gamedef)
+{
+ this->ndef = gamedef->getNodeDefManager();
+ this->biomemgr = new BiomeManager(gamedef);
+ this->oremgr = new OreManager(gamedef);
+ this->decomgr = new DecorationManager(gamedef);
+ this->schemmgr = new SchematicManager(gamedef);
+ this->gen_notify_on = 0;
+
+ // Note that accesses to this variable are not synchronized.
+ // This is because the *only* thread ever starting or stopping
+ // EmergeThreads should be the ServerThread.
+ this->threads_active = false;