X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fui%2FInterface.hpp;h=1ade2d1bf326b4d776f60e4eb8e1821ae85a5c40;hb=a1f911f8257f614f874c201fede5d5206f5b7e80;hp=00b76e66b0c2232ea48cfc0eec1f053e03c3aaac;hpb=3f35e70a6b66daf2ffd59590e98e2dd11e6eaabb;p=blank.git diff --git a/src/ui/Interface.hpp b/src/ui/Interface.hpp index 00b76e6..1ade2d1 100644 --- a/src/ui/Interface.hpp +++ b/src/ui/Interface.hpp @@ -4,6 +4,7 @@ #include "HUD.hpp" #include "../app/FPSController.hpp" #include "../app/IntervalTimer.hpp" +#include "../audio/Sound.hpp" #include "../graphics/FixedText.hpp" #include "../graphics/Font.hpp" #include "../graphics/MessageBox.hpp" @@ -18,6 +19,7 @@ namespace blank { class Assets; +class Audio; class Chunk; class FrameCounter; class Viewport; @@ -33,10 +35,11 @@ public: bool keyboard_disabled = false; bool mouse_disabled = false; + bool audio_disabled = false; bool visual_disabled = false; }; - Interface(const Config &, const Assets &, const FrameCounter &, World &); + Interface(const Config &, const Assets &, Audio &, const FrameCounter &, World &); void HandlePress(const SDL_KeyboardEvent &); void HandleRelease(const SDL_KeyboardEvent &); @@ -63,8 +66,12 @@ public: void SelectNext(); void SelectPrevious(); - void ToggleCounter(); + void ToggleAudio(); + void ToggleVisual(); + + void ToggleDebug(); void UpdateCounter(); + void UpdatePosition(); void PostMessage(const char *); void PostMessage(const std::string &msg) { @@ -79,6 +86,7 @@ private: void CheckAim(); private: + Audio &audio; const FrameCounter &counter; World &world; FPSController ctrl; @@ -94,6 +102,7 @@ private: glm::mat4 outline_transform; FixedText counter_text; + FixedText position_text; MessageBox messages; IntervalTimer msg_timer; @@ -105,6 +114,9 @@ private: Block remove; Block selection; + Sound place_sound; + Sound remove_sound; + glm::tvec3 fwd, rev; };