From 7c0e707cf1d0031788567bfec66f6c13ec901cdc Mon Sep 17 00:00:00 2001 From: kwolekr Date: Sun, 7 Apr 2013 21:21:17 -0400 Subject: Add param2 field for ores, some minor fixes and misc. code cleanup --- src/mapgen.h | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'src/mapgen.h') diff --git a/src/mapgen.h b/src/mapgen.h index e708f23b1..17136a137 100644 --- a/src/mapgen.h +++ b/src/mapgen.h @@ -120,7 +120,6 @@ class Ore { public: std::string ore_name; std::string wherein_name; - content_t ore; content_t wherein; // the node to be replaced u32 clust_scarcity; // ore cluster has a 1-in-clust_scarcity chance of appearing at a node @@ -128,6 +127,7 @@ public: s16 clust_size; // how large (in nodes) a chunk of ore is s16 height_min; s16 height_max; + u8 ore_param2; // to set node-specific attributes u32 flags; // attributes for this ore float nthresh; // threshhold for noise at which an ore is placed NoiseParams *np; // noise for distribution of clusters (NULL for uniform scattering) @@ -141,15 +141,19 @@ public: } void resolveNodeNames(INodeDefManager *ndef); - virtual void generate(Mapgen *mg, u32 blockseed, v3s16 nmin, v3s16 nmax) = 0; + void placeOre(Mapgen *mg, u32 blockseed, v3s16 nmin, v3s16 nmax); + virtual void generate(ManualMapVoxelManipulator *vm, int seed, + u32 blockseed, v3s16 nmin, v3s16 nmax) = 0; }; class OreScatter : public Ore { - void generate(Mapgen *mg, u32 blockseed, v3s16 nmin, v3s16 nmax); + virtual void generate(ManualMapVoxelManipulator *vm, int seed, + u32 blockseed, v3s16 nmin, v3s16 nmax); }; class OreSheet : public Ore { - void generate(Mapgen *mg, u32 blockseed, v3s16 nmin, v3s16 nmax); + virtual void generate(ManualMapVoxelManipulator *vm, int seed, + u32 blockseed, v3s16 nmin, v3s16 nmax); }; Ore *createOre(OreType type); -- cgit v1.2.3