1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-01-15 21:19:57 +00:00
openmw-tes3mp/apps/openmw/mwmp/Main.hpp

66 lines
1.8 KiB
C++
Raw Normal View History

#ifndef OPENMW_MWMP_MAIN
#define OPENMW_MWMP_MAIN
2016-11-17 15:16:25 +00:00
#include "../mwworld/ptr.hpp"
2016-08-24 08:15:34 +00:00
#include <boost/program_options.hpp>
#include <components/files/collections.hpp>
namespace mwmp
{
2016-12-16 08:59:15 +00:00
class GUIController;
class CellController;
class LocalSystem;
2016-12-16 08:59:15 +00:00
class LocalPlayer;
class Networking;
class Main
{
public:
Main();
~Main();
static void optionsDesc(boost::program_options::options_description *desc);
static void configure(const boost::program_options::variables_map &variables);
static bool init(std::vector<std::string> &content, Files::Collections &collections);
static void postInit();
static bool isInitialized();
static void destroy();
static const Main &get();
static void frame(float dt);
static bool isValidPacketScript(std::string scriptId);
static bool isValidPacketGlobal(std::string globalId);
2017-05-28 10:26:48 +00:00
static std::string getResDir();
Networking *getNetworking() const;
LocalSystem *getLocalSystem() const;
LocalPlayer *getLocalPlayer() const;
GUIController *getGUIController() const;
CellController *getCellController() const;
void updateWorld(float dt) const;
private:
2017-05-28 10:26:48 +00:00
static std::string resourceDir;
static std::string address;
static std::string serverPassword;
Main (const Main&);
///< not implemented
Main& operator= (const Main&);
///< not implemented
static Main *pMain;
Networking *mNetworking;
LocalSystem *mLocalSystem;
LocalPlayer *mLocalPlayer;
GUIController *mGUIController;
CellController *mCellController;
std::string server;
unsigned short port;
};
}
#endif //OPENMW_MWMP_MAIN