]> git.localhorst.tv Git - blank.git/blobdiff - src/ui/Interface.hpp
check for entities under crosshair
[blank.git] / src / ui / Interface.hpp
index 82eade3be2b06771e49ffd159409520c12f42bbb..907f9c234a320e5434c0da1f21bd2244c397c958 100644 (file)
@@ -7,18 +7,19 @@
 #include "../app/FPSController.hpp"
 #include "../app/IntervalTimer.hpp"
 #include "../audio/Sound.hpp"
-#include "../graphics/Font.hpp"
 #include "../model/geometry.hpp"
 #include "../model/OutlineModel.hpp"
 #include "../world/Block.hpp"
 
 #include <string>
 #include <glm/glm.hpp>
+#include <SDL.h>
 
 
 namespace blank {
 
 class Chunk;
+class Entity;
 class Environment;
 class Viewport;
 class World;
@@ -70,6 +71,8 @@ public:
        void ToggleDebug();
        void UpdateCounter();
        void UpdatePosition();
+       void UpdateOrientation();
+       void UpdateBlockInfo();
 
        void PostMessage(const char *);
        void PostMessage(const std::string &msg) {
@@ -82,16 +85,17 @@ public:
 
 private:
        void CheckAim();
+       void UpdateOutline();
 
 private:
        Environment &env;
        World &world;
        FPSController ctrl;
-       Font font;
        HUD hud;
 
        Ray aim;
        Chunk *aim_chunk;
+       Entity *aim_entity;
        int aim_block;
        glm::vec3 aim_normal;
 
@@ -100,6 +104,9 @@ private:
 
        FixedText counter_text;
        FixedText position_text;
+       FixedText orientation_text;
+       FixedText block_text;
+       Block last_displayed;
        MessageBox messages;
        IntervalTimer msg_timer;
 
@@ -114,7 +121,9 @@ private:
        Sound place_sound;
        Sound remove_sound;
 
-       glm::tvec3<int> fwd, rev;
+       glm::ivec3 fwd, rev;
+
+       bool debug;
 
 };