X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fapp%2FEnvironment.hpp;h=7061000fa221ffe1f3da97ad7e42ff43d4a08fcf;hb=4727825186798902f68df5b99a6a32f0ef618454;hp=95813fc12dd7ad43f5e6352924939a80c26040e2;hpb=9ebe2c320fd9f94266ab93fa2f9d9908a0a284d3;p=blank.git diff --git a/src/app/Environment.hpp b/src/app/Environment.hpp index 95813fc..7061000 100644 --- a/src/app/Environment.hpp +++ b/src/app/Environment.hpp @@ -6,6 +6,8 @@ #include "StateControl.hpp" #include "../audio/Audio.hpp" #include "../graphics/Viewport.hpp" +#include "../rand/GaloisLFSR.hpp" +#include "../shared/MessageState.hpp" #include "../ui/Keymap.hpp" #include @@ -17,14 +19,29 @@ class Window; struct HeadlessEnvironment { + struct Config { + std::string asset_path; + std::string save_path; + + std::string GetWorldPath( + const std::string &world_name + ) const; + std::string GetWorldPath( + const std::string &world_name, + const std::string &hostname + ) const; + } config; + AssetLoader loader; FrameCounter counter; StateControl state; + GaloisLFSR rng; + - explicit HeadlessEnvironment(const std::string &asset_path); + explicit HeadlessEnvironment(const Config &); }; @@ -40,8 +57,12 @@ struct Environment Keymap keymap; + MessageState msg_state; + + + Environment(Window &win, const Config &); - Environment(Window &win, const std::string &asset_path); + void ShowMessage(const char *); };