X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fstandalone%2FMasterState.hpp;h=04234e5ccea07d18eb99683e6cca088ee0e279c2;hb=f1f8941a3f682fb589cf3c620fc7e7602cfc0f7f;hp=f72c38ceed7b73f83059b3e1249c4da46f4c42f9;hpb=7e782291e0ce39eb2d4e8c1df28f682c313e6f8d;p=blank.git diff --git a/src/standalone/MasterState.hpp b/src/standalone/MasterState.hpp index f72c38c..04234e5 100644 --- a/src/standalone/MasterState.hpp +++ b/src/standalone/MasterState.hpp @@ -4,17 +4,19 @@ #include "../app/State.hpp" #include "../ui/ClientController.hpp" +#include "DirectCLIFeedback.hpp" #include "PreloadState.hpp" #include "UnloadState.hpp" #include "../ai/Spawner.hpp" +#include "../audio/SoundBank.hpp" #include "../graphics/SkyBox.hpp" -#include "../model/ModelRegistry.hpp" -#include "../model/ShapeRegistry.hpp" +#include "../shared/ChatState.hpp" +#include "../shared/CLI.hpp" +#include "../shared/WorldResources.hpp" #include "../ui/DirectInput.hpp" #include "../ui/HUD.hpp" #include "../ui/InteractiveManipulator.hpp" #include "../ui/Interface.hpp" -#include "../world/BlockTypeRegistry.hpp" #include "../world/ChunkIndex.hpp" #include "../world/ChunkLoader.hpp" #include "../world/ChunkRenderer.hpp" @@ -32,7 +34,8 @@ namespace standalone { class MasterState : public State -, public ClientController { +, public ClientController +, public ChatState::Responder { public: MasterState( @@ -47,6 +50,9 @@ public: void OnResume() override; void OnPause() override; + void OnFocus() override; + void OnBlur() override; + void Handle(const SDL_Event &) override; void Update(int dt) override; void Render(Viewport &) override; @@ -58,14 +64,16 @@ public: void SetVideo(bool) override; void SetHUD(bool) override; void SetDebug(bool) override; + void NextCamera() override; void Exit() override; + void OnLineSubmit(const std::string &) override; + private: Config &config; Environment &env; - ShapeRegistry shapes; - BlockTypeRegistry block_types; - ModelRegistry models; + WorldResources res; + SoundBank sounds; const WorldSave &save; World world; ChunkIndex &spawn_index; @@ -82,8 +90,12 @@ private: SkyBox sky; + CLI cli; + DirectCLIFeedback cli_ctx; + PreloadState preload; UnloadState unload; + ChatState chat; };