12345678910111213141516171819202122232425 |
- #pragma once
- #include <ReferenceCounter.h>
- #include <Either.h>
- #include "GenerationTemplate.h"
- class Block;
- class Noise;
- class BiomGenerator : public virtual Framework::ReferenceCounter
- {
- private:
- Framework::RCArray<GenerationTemplate> templates;
- protected:
- void addTemplateGenerator( GenerationTemplate* gTemplate );
- public:
- BiomGenerator();
- virtual Framework::Either<Block*, int> generateSurfaceBlock( int x, int y, int z ) = 0;
- virtual Framework::Either<Block*, int> generateBelowSurfaceBlock( int x, int y, int z ) = 0;
- virtual Noise* zHeightMapNoise( int seed ) = 0;
- const Framework::RCArray<GenerationTemplate>& getTemplates();
- };
|