summaryrefslogtreecommitdiffstats
path: root/include/world
diff options
context:
space:
mode:
Diffstat (limited to 'include/world')
-rw-r--r--include/world/Block.hpp15
-rw-r--r--include/world/Collision.hpp8
-rw-r--r--include/world/Section.hpp51
-rw-r--r--include/world/World.hpp38
4 files changed, 0 insertions, 112 deletions
diff --git a/include/world/Block.hpp b/include/world/Block.hpp
deleted file mode 100644
index 2f823fe..0000000
--- a/include/world/Block.hpp
+++ /dev/null
@@ -1,15 +0,0 @@
-#pragma once
-
-struct Block {
- Block();
-
- Block(unsigned short id, unsigned char state);
-
- ~Block();
-
- unsigned short id : 13;
- unsigned char state : 4;
- //unsigned char light:4;
-};
-
-bool operator<(const Block &lhs, const Block &rhs); \ No newline at end of file
diff --git a/include/world/Collision.hpp b/include/world/Collision.hpp
deleted file mode 100644
index b88fbf7..0000000
--- a/include/world/Collision.hpp
+++ /dev/null
@@ -1,8 +0,0 @@
-#pragma once
-
-struct AABB {
- double x,y,z;
- double w,l,h;
-};
-
-bool TestCollision(AABB first, AABB second); \ No newline at end of file
diff --git a/include/world/Section.hpp b/include/world/Section.hpp
deleted file mode 100644
index 2df0cfe..0000000
--- a/include/world/Section.hpp
+++ /dev/null
@@ -1,51 +0,0 @@
-#pragma once
-
-#include <vector>
-#include <map>
-#include <condition_variable>
-#include <functional>
-
-#include <easylogging++.h>
-
-#include <world/Block.hpp>
-#include <Vector.hpp>
-#include <Utility.hpp>
-
-const int SECTION_WIDTH = 16;
-const int SECTION_LENGTH = 16;
-const int SECTION_HEIGHT = 16;
-
-class Section {
- std::vector<unsigned short> m_palette;
- byte *m_dataBlocks = nullptr;
- size_t m_dataBlocksLen;
- byte *m_dataLight = nullptr;
- byte *m_dataSkyLight = nullptr;
- byte m_bitsPerBlock = 0;
- std::vector<Block> m_blocks;
- std::condition_variable parseWaiter;
-
- Section();
-
- Vector worldPosition;
-
-public:
- void Parse();
-
- Section(Vector position, byte *dataBlocks, size_t dataBlocksLength, byte *dataLight, byte *dataSky, byte bitsPerBlock,
- std::vector<unsigned short> palette);
-
- ~Section();
-
- Block &GetBlock(Vector pos);
-
- Section &operator=(Section other);
-
- friend void swap(Section &a, Section &b);
-
- Section(const Section &other);
-
- Vector GetPosition();
-
- size_t GetHash();
-}; \ No newline at end of file
diff --git a/include/world/World.hpp b/include/world/World.hpp
deleted file mode 100644
index 6b09f1f..0000000
--- a/include/world/World.hpp
+++ /dev/null
@@ -1,38 +0,0 @@
-#pragma once
-
-#include <map>
-#include <bitset>
-
-#include <easylogging++.h>
-
-#include <world/Block.hpp>
-#include <world/Section.hpp>
-#include <network/Packet.hpp>
-#include <world/Collision.hpp>
-
-class World {
- std::map<Vector, Section> sections;
- std::map<Vector, std::mutex> sectionMutexes;
- int dimension = 0;
-
- Section ParseSection(StreamInput *data, Vector position);
-
- World(const World &other);
- World &operator=(const World &other);
-public:
- World();
-
- ~World();
-
- void ParseChunkData(std::shared_ptr<PacketChunkData> packet);
-
- bool isPlayerCollides(double X, double Y, double Z);
-
- Block &GetBlock(Vector pos);
-
- std::vector<Vector> GetSectionsList();
-
- Section &GetSection(Vector sectionPos);
-
- glm::vec3 Raycast(glm::vec3 position, glm::vec3 direction, float maxLength = 1000.0f, float minPrecision = 0.01f);
-}; \ No newline at end of file