]> git.lizzy.rs Git - dragonfireclient.git/blobdiff - src/mg_decoration.h
Add function to get server info.
[dragonfireclient.git] / src / mg_decoration.h
index ba3e9d3b258d8abf2cc880c5f5119cf5be8a0c16..986328ec3bc86be4a4ba741823d96bca45920057 100644 (file)
@@ -20,7 +20,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
 #ifndef MG_DECORATION_HEADER
 #define MG_DECORATION_HEADER
 
-#include <set>
+#include "util/cpp11_container.h"
 #include "objdef.h"
 #include "noise.h"
 #include "nodedef.h"
@@ -68,6 +68,7 @@ class Decoration : public ObjDef, public NodeResolver {
 
        virtual void resolveNodeNames();
 
+       bool canPlaceDecoration(MMVManip *vm, v3s16 p);
        size_t placeDeco(Mapgen *mg, u32 blockseed, v3s16 nmin, v3s16 nmax);
        //size_t placeCutoffs(Mapgen *mg, u32 blockseed, v3s16 nmin, v3s16 nmax);
 
@@ -82,25 +83,24 @@ class Decoration : public ObjDef, public NodeResolver {
        s16 y_max;
        float fill_ratio;
        NoiseParams np;
+       std::vector<content_t> c_spawnby;
+       s16 nspawnby;
 
-       std::set<u8> biomes;
+       UNORDERED_SET<u8> biomes;
        //std::list<CutoffData> cutoffs;
        //Mutex cutoff_mutex;
 };
 
 class DecoSimple : public Decoration {
 public:
+       virtual void resolveNodeNames();
        virtual size_t generate(MMVManip *vm, PcgRandom *pr, v3s16 p);
-       bool canPlaceDecoration(MMVManip *vm, v3s16 p);
        virtual int getHeight();
 
-       virtual void resolveNodeNames();
-
        std::vector<content_t> c_decos;
-       std::vector<content_t> c_spawnby;
        s16 deco_height;
        s16 deco_height_max;
-       s16 nspawnby;
+       u8 deco_param2;
 };
 
 class DecoSchematic : public Decoration {