]> git.lizzy.rs Git - dragonblocks3d.git/blobdiff - src/local_entity.hpp
New structure
[dragonblocks3d.git] / src / local_entity.hpp
diff --git a/src/local_entity.hpp b/src/local_entity.hpp
new file mode 100644 (file)
index 0000000..1248bc1
--- /dev/null
@@ -0,0 +1,37 @@
+#pragma once
+
+#include "async_mgr.hpp"
+#include "entity.hpp"
+#include "gl.hpp"
+#include "tile_def.hpp"
+
+namespace dragonblocks
+{
+       class Map;
+       class Mesh;
+       class Scene;
+       class ShaderProgram;
+       
+       class LocalEntity : public IEntity
+       {
+               public:
+               void setPos(glm::vec3);
+               glm::vec3 getPos();
+               void setSize(glm::vec3);
+               glm::vec3 getSize();
+               void setRotationAxis(glm::vec3);
+               glm::vec3 getRotationAxis();
+               void setRotationAngle(double);
+               double getRotationAngle();
+               void setVisible(bool);
+               bool isVisible();
+               void step(double);
+               
+               LocalEntity(Map *, Scene *, const TileDef &, ShaderProgram *);
+               ~LocalEntity();
+               
+               protected:
+               TileDef tile_def;
+               Mesh *mesh;
+       };
+}