summaryrefslogtreecommitdiff
path: root/src/mapgen.cpp
diff options
context:
space:
mode:
authorkwolekr <kwolekr@minetest.net>2015-10-04 02:54:25 -0400
committerkwolekr <kwolekr@minetest.net>2015-10-04 16:27:50 -0400
commit0850d3bb930ac5e2cfd71a58fd49725e4c2a4c96 (patch)
tree15a5f3a2e0e350d6b5ea46caaac104d39d3f5c9b /src/mapgen.cpp
parent1f9c5a4a7b15ab49e717d81162fe58e4202c0814 (diff)
downloadminetest-0850d3bb930ac5e2cfd71a58fd49725e4c2a4c96.tar.gz
minetest-0850d3bb930ac5e2cfd71a58fd49725e4c2a4c96.tar.bz2
minetest-0850d3bb930ac5e2cfd71a58fd49725e4c2a4c96.zip
Add emerge completion callback mechanism
Major refactor of emerge.cpp and Map::init/finishBlockMake
Diffstat (limited to 'src/mapgen.cpp')
-rw-r--r--src/mapgen.cpp21
1 files changed, 14 insertions, 7 deletions
diff --git a/src/mapgen.cpp b/src/mapgen.cpp
index a94b071c5..f5046459e 100644
--- a/src/mapgen.cpp
+++ b/src/mapgen.cpp
@@ -61,8 +61,9 @@ FlagDesc flagdesc_gennotify[] = {
};
-///////////////////////////////////////////////////////////////////////////////
-
+////
+//// Mapgen
+////
Mapgen::Mapgen()
{
@@ -340,8 +341,9 @@ void Mapgen::spreadLight(v3s16 nmin, v3s16 nmax)
}
-
-///////////////////////////////////////////////////////////////////////////////
+////
+//// GenerateNotifier
+////
GenerateNotifier::GenerateNotifier()
{
@@ -407,7 +409,10 @@ void GenerateNotifier::getEvents(
m_notify_events.clear();
}
-///////////////////////////////////////////////////////////////////////////////
+
+////
+//// MapgenParams
+////
void MapgenParams::load(const Settings &settings)
{
@@ -429,9 +434,11 @@ void MapgenParams::load(const Settings &settings)
settings.getNoiseParams("mg_biome_np_humidity_blend", np_biome_humidity_blend);
delete sparams;
- sparams = EmergeManager::createMapgenParams(mg_name);
- if (sparams)
+ MapgenFactory *mgfactory = EmergeManager::getMapgenFactory(mg_name);
+ if (mgfactory) {
+ sparams = mgfactory->createMapgenParams();
sparams->readParams(&settings);
+ }
}