From 900fa26965a2fbdf2b9de74e2d680c083de91482 Mon Sep 17 00:00:00 2001 From: kwolekr Date: Sun, 28 Dec 2014 03:11:00 -0500 Subject: Ore: Add Blob ore type --- src/mg_ore.h | 28 ++++++++++++++++++---------- 1 file changed, 18 insertions(+), 10 deletions(-) (limited to 'src/mg_ore.h') diff --git a/src/mg_ore.h b/src/mg_ore.h index 3b413674e..a20aeefe0 100644 --- a/src/mg_ore.h +++ b/src/mg_ore.h @@ -47,9 +47,9 @@ class ManualMapVoxelManipulator; enum OreType { - ORE_SCATTER, - ORE_SHEET, - ORE_CLAYLIKE + ORE_TYPE_SCATTER, + ORE_TYPE_SHEET, + ORE_TYPE_BLOB, }; extern FlagDesc flagdesc_ore[]; @@ -78,7 +78,7 @@ public: size_t placeOre(Mapgen *mg, u32 blockseed, v3s16 nmin, v3s16 nmax); virtual void generate(ManualMapVoxelManipulator *vm, int seed, - u32 blockseed, v3s16 nmin, v3s16 nmax) = 0; + u32 blockseed, v3s16 nmin, v3s16 nmax) = 0; }; class OreScatter : public Ore { @@ -86,7 +86,7 @@ public: static const bool NEEDS_NOISE = false; virtual void generate(ManualMapVoxelManipulator *vm, int seed, - u32 blockseed, v3s16 nmin, v3s16 nmax); + u32 blockseed, v3s16 nmin, v3s16 nmax); }; class OreSheet : public Ore { @@ -94,7 +94,15 @@ public: static const bool NEEDS_NOISE = true; virtual void generate(ManualMapVoxelManipulator *vm, int seed, - u32 blockseed, v3s16 nmin, v3s16 nmax); + u32 blockseed, v3s16 nmin, v3s16 nmax); +}; + +class OreBlob : public Ore { +public: + static const bool NEEDS_NOISE = true; + + virtual void generate(ManualMapVoxelManipulator *vm, int seed, + u32 blockseed, v3s16 nmin, v3s16 nmax); }; class OreManager : public GenElementManager { @@ -108,12 +116,12 @@ public: Ore *create(int type) { switch (type) { - case ORE_SCATTER: + case ORE_TYPE_SCATTER: return new OreScatter; - case ORE_SHEET: + case ORE_TYPE_SHEET: return new OreSheet; - //case ORE_CLAYLIKE: //TODO: implement this! - // return new OreClaylike; + case ORE_TYPE_BLOB: + return new OreBlob; default: return NULL; } -- cgit v1.2.3