summaryrefslogtreecommitdiffstats
path: root/source/BioGen.h
diff options
context:
space:
mode:
Diffstat (limited to 'source/BioGen.h')
-rw-r--r--source/BioGen.h75
1 files changed, 75 insertions, 0 deletions
diff --git a/source/BioGen.h b/source/BioGen.h
new file mode 100644
index 000000000..316399436
--- /dev/null
+++ b/source/BioGen.h
@@ -0,0 +1,75 @@
+
+// BioGen.h
+
+/*
+Interfaces to the various biome generators:
+ - cBioGenConstant
+ - cBioGenCheckerboard
+ - cBioGenDistortedVoronoi
+*/
+
+
+
+
+
+#pragma once
+
+#include "cChunkGenerator.h"
+
+
+
+
+
+class cBioGenConstant :
+ public cBiomeGen
+{
+public:
+ cBioGenConstant(EMCSBiome a_Biome) : m_Biome(a_Biome) {}
+
+protected:
+
+ EMCSBiome m_Biome;
+
+ // cBiomeGen override:
+ virtual void GenBiomes(int a_ChunkX, int a_ChunkZ, cChunkDef::BiomeMap & a_BiomeMap) override;
+} ;
+
+
+
+
+
+class cBioGenDistortedVoronoi :
+ public cBiomeGen
+{
+public:
+ cBioGenDistortedVoronoi(int a_Seed) : m_Seed(a_Seed) {}
+
+protected:
+
+ int m_Seed;
+
+ // cBiomeGen override:
+ virtual void GenBiomes(int a_ChunkX, int a_ChunkZ, cChunkDef::BiomeMap & a_BiomeMap) override;
+} ;
+
+
+
+
+
+class cBioGenCheckerboard :
+ public cBiomeGen
+{
+public:
+ cBioGenCheckerboard(int a_BiomeSize) : m_BiomeSize((a_BiomeSize < 8) ? 8 : a_BiomeSize) {}
+
+protected:
+
+ int m_BiomeSize;
+
+ // cBiomeGen override:
+ virtual void GenBiomes(int a_ChunkX, int a_ChunkZ, cChunkDef::BiomeMap & a_BiomeMap) override;
+} ;
+
+
+
+