add struct Biome & move generator-related scripting to scripting_world_generation.cpp
This commit is contained in:
@@ -33,6 +33,12 @@ struct BlocksLayers {
|
||||
uint lastLayersHeight;
|
||||
};
|
||||
|
||||
struct Biome {
|
||||
std::string name;
|
||||
BlocksLayers groundLayers;
|
||||
BlocksLayers seaLayers;
|
||||
};
|
||||
|
||||
/// @brief Generator behaviour and settings interface
|
||||
class GeneratorScript {
|
||||
public:
|
||||
@@ -46,8 +52,7 @@ public:
|
||||
virtual std::shared_ptr<Heightmap> generateHeightmap(
|
||||
const glm::ivec2& offset, const glm::ivec2& size, uint64_t seed) = 0;
|
||||
|
||||
virtual const BlocksLayers& getGroundLayers() const = 0;
|
||||
virtual const BlocksLayers& getSeaLayers() const = 0;
|
||||
virtual const Biome& getBiome() const = 0;
|
||||
|
||||
virtual uint getSeaLevel() const = 0;
|
||||
|
||||
|
||||
@@ -56,8 +56,9 @@ void WorldGenerator::generate(
|
||||
{chunkX * CHUNK_W, chunkZ * CHUNK_D}, {CHUNK_W, CHUNK_D}, seed
|
||||
);
|
||||
auto values = heightmap->getValues();
|
||||
const auto& groundLayers = def.script->getGroundLayers();
|
||||
const auto& seaLayers = def.script->getSeaLayers();
|
||||
const auto& biome = def.script->getBiome();
|
||||
const auto& groundLayers = biome.groundLayers;
|
||||
const auto& seaLayers = biome.seaLayers;
|
||||
|
||||
uint seaLevel = def.script->getSeaLevel();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user