123456789101112131415161718192021222324252627 |
- #pragma once
- #include <Array.h>
- #include <ReferenceCounter.h>
- #include "BiomGenerator.h"
- #include "BiomInterpolator.h"
- #include "Chunk.h"
- class DimensionGenerator : public virtual Framework::ReferenceCounter
- {
- private:
- BiomInterpolator *interpolator;
- Framework::RCArray<BiomGenerator> biomGenerators;
- const int dimensionId;
- void findBiom( int x, int y, Noise *zNoise, BiomGenerator **firstChoice, BiomGenerator **secondChoice, double &firstChoiceWeight, double &secondChoiceWeight );
- protected:
- DimensionGenerator( BiomInterpolator *interpolator, int dimensionId );
- ~DimensionGenerator();
- void registerBiom( BiomGenerator *generator );
- public:
- Chunk *generateChunk( Noise *zNoise, Game *zGame, int centerX, int centerY );
- int getDimensionId() const;
- };
|