]> git.lizzy.rs Git - dragonfireclient.git/blobdiff - src/emerge.cpp
Expose mapgen parameters on scripting init
[dragonfireclient.git] / src / emerge.cpp
index 133fd4a5979d25493cb955512e7fe8b43ef51392..2828d490bb3dbd490821ccb1b2e5bc41f13a1cad 100644 (file)
@@ -82,7 +82,8 @@ class EmergeThread : public JThread
 
 /////////////////////////////// Emerge Manager ////////////////////////////////
 
-EmergeManager::EmergeManager(IGameDef *gamedef) {
+EmergeManager::EmergeManager(IGameDef *gamedef)
+{
        //register built-in mapgens
        registerMapgen("v5",         new MapgenFactoryV5());
        registerMapgen("v6",         new MapgenFactoryV6());
@@ -132,7 +133,8 @@ EmergeManager::EmergeManager(IGameDef *gamedef) {
 }
 
 
-EmergeManager::~EmergeManager() {
+EmergeManager::~EmergeManager()
+{
        for (unsigned int i = 0; i != emergethread.size(); i++) {
                if (threads_active) {
                        emergethread[i]->Stop();
@@ -162,7 +164,8 @@ EmergeManager::~EmergeManager() {
 }
 
 
-void EmergeManager::loadMapgenParams() {
+void EmergeManager::loadMapgenParams()
+{
        loadParamsFromSettings(g_settings);
 
        if (g_settings->get("fixed_map_seed").empty()) {
@@ -174,7 +177,8 @@ void EmergeManager::loadMapgenParams() {
 }
 
 
-void EmergeManager::initMapgens() {
+void EmergeManager::initMapgens()
+{
        if (mapgen.size())
                return;
 
@@ -197,7 +201,8 @@ void EmergeManager::initMapgens() {
 }
 
 
-Mapgen *EmergeManager::getCurrentMapgen() {
+Mapgen *EmergeManager::getCurrentMapgen()
+{
        for (unsigned int i = 0; i != emergethread.size(); i++) {
                if (emergethread[i]->IsSameThread())
                        return emergethread[i]->mapgen;
@@ -207,7 +212,8 @@ Mapgen *EmergeManager::getCurrentMapgen() {
 }
 
 
-void EmergeManager::startThreads() {
+void EmergeManager::startThreads()
+{
        if (threads_active)
                return;
 
@@ -218,7 +224,8 @@ void EmergeManager::startThreads() {
 }
 
 
-void EmergeManager::stopThreads() {
+void EmergeManager::stopThreads()
+{
        if (!threads_active)
                return;
 
@@ -236,7 +243,8 @@ void EmergeManager::stopThreads() {
 }
 
 
-bool EmergeManager::enqueueBlockEmerge(u16 peer_id, v3s16 p, bool allow_generate) {
+bool EmergeManager::enqueueBlockEmerge(u16 peer_id, v3s16 p, bool allow_generate)
+{
        std::map<v3s16, BlockEmergeData *>::const_iterator iter;
        BlockEmergeData *bedata;
        u16 count;
@@ -290,7 +298,8 @@ bool EmergeManager::enqueueBlockEmerge(u16 peer_id, v3s16 p, bool allow_generate
 }
 
 
-int EmergeManager::getGroundLevelAtPoint(v2s16 p) {
+int EmergeManager::getGroundLevelAtPoint(v2s16 p)
+{
        if (mapgen.size() == 0 || !mapgen[0]) {
                errorstream << "EmergeManager: getGroundLevelAtPoint() called"
                        " before mapgen initialized" << std::endl;
@@ -301,7 +310,8 @@ int EmergeManager::getGroundLevelAtPoint(v2s16 p) {
 }
 
 
-bool EmergeManager::isBlockUnderground(v3s16 blockpos) {
+bool EmergeManager::isBlockUnderground(v3s16 blockpos)
+{
        /*
        v2s16 p = v2s16((blockpos.X * MAP_BLOCKSIZE) + MAP_BLOCKSIZE / 2,
                                        (blockpos.Y * MAP_BLOCKSIZE) + MAP_BLOCKSIZE / 2);
@@ -315,7 +325,8 @@ bool EmergeManager::isBlockUnderground(v3s16 blockpos) {
 }
 
 
-u32 EmergeManager::getBlockSeed(v3s16 p) {
+u32 EmergeManager::getBlockSeed(v3s16 p)
+{
        return (u32)(params.seed & 0xFFFFFFFF) +
                p.Z * 38134234 +
                p.Y * 42123 +
@@ -324,12 +335,13 @@ u32 EmergeManager::getBlockSeed(v3s16 p) {
 
 
 Mapgen *EmergeManager::createMapgen(std::string mgname, int mgid,
-                                                                        MapgenParams *mgparams) {
+       MapgenParams *mgparams)
+{
        std::map<std::string, MapgenFactory *>::const_iterator iter;
        iter = mglist.find(mgname);
        if (iter == mglist.end()) {
                errorstream << "EmergeManager; mapgen " << mgname <<
-                " not registered" << std::endl;
+                       " not registered" << std::endl;
                return NULL;
        }
 
@@ -338,12 +350,13 @@ Mapgen *EmergeManager::createMapgen(std::string mgname, int mgid,
 }
 
 
-MapgenSpecificParams *EmergeManager::createMapgenParams(std::string mgname) {
+MapgenSpecificParams *EmergeManager::createMapgenParams(std::string mgname)
+{
        std::map<std::string, MapgenFactory *>::const_iterator iter;
        iter = mglist.find(mgname);
        if (iter == mglist.end()) {
                errorstream << "EmergeManager: mapgen " << mgname <<
-                " not registered" << std::endl;
+                       " not registered" << std::endl;
                return NULL;
        }
 
@@ -352,7 +365,8 @@ MapgenSpecificParams *EmergeManager::createMapgenParams(std::string mgname) {
 }
 
 
-void EmergeManager::loadParamsFromSettings(Settings *settings) {
+void EmergeManager::loadParamsFromSettings(Settings *settings)
+{
        std::string seed_str;
        const char *setname = (settings == g_settings) ? "fixed_map_seed" : "seed";
 
@@ -373,7 +387,8 @@ void EmergeManager::loadParamsFromSettings(Settings *settings) {
 }
 
 
-void EmergeManager::saveParamsToSettings(Settings *settings) {
+void EmergeManager::saveParamsToSettings(Settings *settings)
+{
        settings->set("mg_name",         params.mg_name);
        settings->setU64("seed",         params.seed);
        settings->setS16("water_level",  params.water_level);
@@ -387,7 +402,8 @@ void EmergeManager::saveParamsToSettings(Settings *settings) {
 }
 
 
-void EmergeManager::registerMapgen(std::string mgname, MapgenFactory *mgfactory) {
+void EmergeManager::registerMapgen(std::string mgname, MapgenFactory *mgfactory)
+{
        mglist.insert(std::make_pair(mgname, mgfactory));
        infostream << "EmergeManager: registered mapgen " << mgname << std::endl;
 }
@@ -395,7 +411,8 @@ void EmergeManager::registerMapgen(std::string mgname, MapgenFactory *mgfactory)
 
 ////////////////////////////// Emerge Thread //////////////////////////////////
 
-bool EmergeThread::popBlockEmerge(v3s16 *pos, u8 *flags) {
+bool EmergeThread::popBlockEmerge(v3s16 *pos, u8 *flags)
+{
        std::map<v3s16, BlockEmergeData *>::iterator iter;
        JMutexAutoLock queuelock(emerge->queuemutex);
 
@@ -423,7 +440,8 @@ bool EmergeThread::popBlockEmerge(v3s16 *pos, u8 *flags) {
 
 
 bool EmergeThread::getBlockOrStartGen(v3s16 p, MapBlock **b,
-                                                                       BlockMakeData *data, bool allow_gen) {
+       BlockMakeData *data, bool allow_gen)
+{
        v2s16 p2d(p.X, p.Z);
        //envlock: usually takes <=1ms, sometimes 90ms or ~400ms to acquire
        JMutexAutoLock envlock(m_server->m_env_mutex);
@@ -454,7 +472,8 @@ bool EmergeThread::getBlockOrStartGen(v3s16 p, MapBlock **b,
 }
 
 
-void *EmergeThread::Thread() {
+void *EmergeThread::Thread()
+{
        ThreadStarted();
        log_register_thread("EmergeThread" + itos(id));
        DSTACK(__FUNCTION_NAME);