diff options
Diffstat (limited to 'src/mapgen/mapgen.h')
-rw-r--r-- | src/mapgen/mapgen.h | 31 |
1 files changed, 13 insertions, 18 deletions
diff --git a/src/mapgen/mapgen.h b/src/mapgen/mapgen.h index b60aea57e..0ac26d538 100644 --- a/src/mapgen/mapgen.h +++ b/src/mapgen/mapgen.h @@ -102,15 +102,16 @@ private: std::list<GenNotifyEvent> m_notify_events; }; +// Order must match the order of 'static MapgenDesc g_reg_mapgens[]' in mapgen.cpp enum MapgenType { - MAPGEN_V5, - MAPGEN_V6, MAPGEN_V7, + MAPGEN_VALLEYS, + MAPGEN_CARPATHIAN, + MAPGEN_V5, MAPGEN_FLAT, MAPGEN_FRACTAL, - MAPGEN_VALLEYS, MAPGEN_SINGLENODE, - MAPGEN_CARPATHIAN, + MAPGEN_V6, MAPGEN_INVALID, }; @@ -189,11 +190,12 @@ public: void updateLiquid(UniqueQueue<v3s16> *trans_liquid, v3s16 nmin, v3s16 nmax); void setLighting(u8 light, v3s16 nmin, v3s16 nmax); - void lightSpread(VoxelArea &a, v3s16 p, u8 light); + void lightSpread(VoxelArea &a, std::queue<std::pair<v3s16, u8>> &queue, + const v3s16 &p, u8 light); void calcLighting(v3s16 nmin, v3s16 nmax, v3s16 full_nmin, v3s16 full_nmax, bool propagate_shadow = true); void propagateSunlight(v3s16 nmin, v3s16 nmax, bool propagate_shadow); - void spreadLight(v3s16 nmin, v3s16 nmax); + void spreadLight(const v3s16 &nmin, const v3s16 &nmax); virtual void makeChunk(BlockMakeData *data) {} virtual int getGroundLevelAtPoint(v2s16 p) { return 0; } @@ -208,8 +210,8 @@ public: // Mapgen management functions static MapgenType getMapgenType(const std::string &mgname); static const char *getMapgenName(MapgenType mgtype); - static Mapgen *createMapgen(MapgenType mgtype, int mgid, - MapgenParams *params, EmergeManager *emerge); + static Mapgen *createMapgen(MapgenType mgtype, MapgenParams *params, + EmergeManager *emerge); static MapgenParams *createMapgenParams(MapgenType mgtype); static void getMapgenNames(std::vector<const char *> *mgnames, bool include_hidden); @@ -257,21 +259,11 @@ protected: v3s16 full_node_min; v3s16 full_node_max; - // Content required for generateBiomes content_t c_stone; - content_t c_desert_stone; - content_t c_sandstone; content_t c_water_source; content_t c_river_water_source; content_t c_lava_source; - - // Content required for generateDungeons content_t c_cobble; - content_t c_stair_cobble; - content_t c_mossycobble; - content_t c_stair_desert_stone; - content_t c_sandstonebrick; - content_t c_stair_sandstone_block; int ystride; int zstride; @@ -283,9 +275,12 @@ protected: NoiseParams np_cave1; NoiseParams np_cave2; NoiseParams np_cavern; + NoiseParams np_dungeons; float cave_width; float cavern_limit; float cavern_taper; float cavern_threshold; + // TODO 'lava_depth' is deprecated and should be removed. Cave liquids are + // now defined and located using biome definitions. int lava_depth; }; |