#pragma once #include #include #include "DimensionGenerator.h" #include "Area.h" class WorldGenerator : public Framework::Thread { private: Framework::Critical cs; Framework::Array requestQueue; bool exit; int seed; public: WorldGenerator( int seed ); ~WorldGenerator(); void thread() override; void requestGeneration( Area request ); void exitAndWait(); Framework::Either generateSingleBlock( Framework::Vec3 location, int dimensionId ); };