diff options
author | kwolekr <kwolekr@minetest.net> | 2016-06-14 00:10:55 -0400 |
---|---|---|
committer | kwolekr <kwolekr@minetest.net> | 2016-07-03 14:04:11 -0400 |
commit | 92705306bfb4994107a43514f29997cea15d48dc (patch) | |
tree | d1919cc2b5091ef6e31cdd312f5cd92ba058e76e /src/mapgen_v6.h | |
parent | 70e2c1c7d413d20757f571e3f1e02b05c95418f1 (diff) | |
download | minetest-92705306bfb4994107a43514f29997cea15d48dc.tar.gz minetest-92705306bfb4994107a43514f29997cea15d48dc.tar.bz2 minetest-92705306bfb4994107a43514f29997cea15d48dc.zip |
Mapgen: Refactor mapgen creation and management
- Move mapgen creation logic out of EmergeManager and into Mapgen
- Internally represent mapgen type as an enum value, instead of a string
- Remove the need for a MapgenFactory per mapgen
Diffstat (limited to 'src/mapgen_v6.h')
-rw-r--r-- | src/mapgen_v6.h | 16 |
1 files changed, 2 insertions, 14 deletions
diff --git a/src/mapgen_v6.h b/src/mapgen_v6.h index a55fc6d53..20b0bf92e 100644 --- a/src/mapgen_v6.h +++ b/src/mapgen_v6.h @@ -127,6 +127,8 @@ public: MapgenV6(int mapgenid, MapgenParams *params, EmergeManager *emerge); ~MapgenV6(); + virtual MapgenType getType() const { return MAPGEN_V6; } + void makeChunk(BlockMakeData *data); int getGroundLevelAtPoint(v2s16 p); int getSpawnLevelAtPoint(v2s16 p); @@ -162,18 +164,4 @@ public: virtual void generateCaves(int max_stone_y); }; - -struct MapgenFactoryV6 : public MapgenFactory { - Mapgen *createMapgen(int mgid, MapgenParams *params, EmergeManager *emerge) - { - return new MapgenV6(mgid, params, emerge); - }; - - MapgenSpecificParams *createMapgenParams() - { - return new MapgenV6Params(); - }; -}; - - #endif |