#ifndef MAPBLOCK_H #define MAPBLOCK_H #include #include "Base.h" class NodeManager { public: NodeManager() { } virtual ~NodeManager() { } //8191 void printMapBlock() { for(int i = 0; i < 10536; i++) { printf("\n[%i] %i", i, mapBlock[i]); } } void addNode(int id, int meta, int x, int y, int z) { mapBlock[256 * y + z * 16 + x] = id; } bool isAir(int x, int y, int z) { return getNodeAt(x, y, z) == 0; } int getNodeAt(int x, int y, int z) { return x < 16 && z < 16 && x >= 0 && z >= 0 ? mapBlock[256 * y + z * 16 + x] : 0; } protected: private: int mapBlock[65536]; }; class Block { public: Block(int x, int z) { } int getBlockFromNodeCoordinates(int x, int z) { } }; #endif