X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=src%2Fmg_ore.h;h=ffe8cfe5081e7f19d7e1b80f5dd3fb5c7da6c5c7;hb=d58211264e98d80dc80fc5b15171670a2b82abb5;hp=e4af435f7c2f9852a7d5f3584cb04157ed823033;hpb=406d9ba87b9f6e57b86c6282bf157e3341aa195c;p=minetest.git diff --git a/src/mg_ore.h b/src/mg_ore.h index e4af435f7..ffe8cfe50 100644 --- a/src/mg_ore.h +++ b/src/mg_ore.h @@ -20,10 +20,10 @@ with this program; if not, write to the Free Software Foundation, Inc., #ifndef MG_ORE_HEADER #define MG_ORE_HEADER -#include "util/string.h" -#include "mapgen.h" +#include "objdef.h" +#include "noise.h" +#include "nodedef.h" -struct NoiseParams; class Noise; class Mapgen; class MMVManip; @@ -63,6 +63,7 @@ class Ore : public ObjDef, public NodeResolver { float nthresh; // threshhold for noise at which an ore is placed NoiseParams np; // noise for distribution of clusters (NULL for uniform scattering) Noise *noise; + std::set biomes; Ore(); virtual ~Ore(); @@ -71,7 +72,7 @@ class Ore : public ObjDef, public NodeResolver { size_t placeOre(Mapgen *mg, u32 blockseed, v3s16 nmin, v3s16 nmax); virtual void generate(MMVManip *vm, int mapseed, u32 blockseed, - v3s16 nmin, v3s16 nmax) = 0; + v3s16 nmin, v3s16 nmax, u8 *biomemap) = 0; }; class OreScatter : public Ore { @@ -79,7 +80,7 @@ class OreScatter : public Ore { static const bool NEEDS_NOISE = false; virtual void generate(MMVManip *vm, int mapseed, u32 blockseed, - v3s16 nmin, v3s16 nmax); + v3s16 nmin, v3s16 nmax, u8 *biomemap); }; class OreSheet : public Ore { @@ -87,7 +88,7 @@ class OreSheet : public Ore { static const bool NEEDS_NOISE = true; virtual void generate(MMVManip *vm, int mapseed, u32 blockseed, - v3s16 nmin, v3s16 nmax); + v3s16 nmin, v3s16 nmax, u8 *biomemap); }; class OreBlob : public Ore { @@ -95,7 +96,7 @@ class OreBlob : public Ore { static const bool NEEDS_NOISE = true; virtual void generate(MMVManip *vm, int mapseed, u32 blockseed, - v3s16 nmin, v3s16 nmax); + v3s16 nmin, v3s16 nmax, u8 *biomemap); }; class OreVein : public Ore { @@ -109,7 +110,7 @@ class OreVein : public Ore { virtual ~OreVein(); virtual void generate(MMVManip *vm, int mapseed, u32 blockseed, - v3s16 nmin, v3s16 nmax); + v3s16 nmin, v3s16 nmax, u8 *biomemap); }; class OreManager : public ObjDefManager {