]> git.localhorst.tv Git - blank.git/blobdiff - src/world/World.hpp
try to get every chunk change saved to disk
[blank.git] / src / world / World.hpp
index da02b1f25902f42dc4ba8774900005a57e9f071c..2c343dc7fd5a857e87c4705ee6ed1d972d311643 100644 (file)
@@ -5,6 +5,7 @@
 #include "ChunkLoader.hpp"
 #include "Entity.hpp"
 #include "Generator.hpp"
+#include "../graphics/ArrayTexture.hpp"
 #include "../model/shapes.hpp"
 
 #include <list>
@@ -14,6 +15,7 @@
 
 namespace blank {
 
+class Assets;
 class Viewport;
 class WorldCollision;
 
@@ -35,7 +37,7 @@ public:
                ChunkLoader::Config load = ChunkLoader::Config();
        };
 
-       explicit World(const Config &);
+       World(const Assets &, const Config &, const WorldSave &);
 
        bool Intersection(
                const Ray &,
@@ -55,7 +57,7 @@ public:
        Entity &AddEntity() { entities.emplace_back(); return entities.back(); }
 
        Chunk &PlayerChunk();
-       Chunk &Next(const Chunk &to, const glm::tvec3<int> &dir);
+       Chunk &Next(const Chunk &to, const glm::ivec3 &dir);
 
        void Update(int dt);
 
@@ -67,6 +69,8 @@ private:
        StairShape stairShape;
        CuboidShape slabShape;
 
+       ArrayTexture block_tex;
+
        Generator generate;
        ChunkLoader chunks;