summaryrefslogtreecommitdiffhomepage
path: root/Starserver/StarServer.h
diff options
context:
space:
mode:
authorAki <please@ignore.pl>2022-04-07 00:24:56 +0200
committerAki <please@ignore.pl>2022-04-07 00:24:56 +0200
commitd8c1d5b840acc183e2cef112ebc6760952583f87 (patch)
treefc855d24ec6314c49f5aef61e722a60552e093d7 /Starserver/StarServer.h
parent7d00261f6b3bf7da2b9371796848883dc3b40392 (diff)
downloadstarshatter-d8c1d5b840acc183e2cef112ebc6760952583f87.zip
starshatter-d8c1d5b840acc183e2cef112ebc6760952583f87.tar.gz
starshatter-d8c1d5b840acc183e2cef112ebc6760952583f87.tar.bz2
Moved server exclusive files to own module
Diffstat (limited to 'Starserver/StarServer.h')
-rw-r--r--Starserver/StarServer.h54
1 files changed, 54 insertions, 0 deletions
diff --git a/Starserver/StarServer.h b/Starserver/StarServer.h
new file mode 100644
index 0000000..0bcab06
--- /dev/null
+++ b/Starserver/StarServer.h
@@ -0,0 +1,54 @@
+/* Starshatter: The Open Source Project
+ Copyright (c) 2021-2022, Starshatter: The Open Source Project Contributors
+ Copyright (c) 2011-2012, Starshatter OpenSource Distribution Contributors
+ Copyright (c) 1997-2006, Destroyer Studios LLC.
+
+ AUTHOR: John DiCamillo
+
+*/
+
+#ifndef StarServer_h
+#define StarServer_h
+
+#include "Game.h"
+#include "NetLobbyServer.h"
+#include "NetServer.h"
+#include "Mission.h"
+#include "Types.h"
+#include "Universe.h"
+
+
+class StarServer : public Game
+{
+public:
+ static StarServer* GetInstance();
+
+ StarServer();
+ virtual ~StarServer();
+
+ virtual bool Init(HINSTANCE hi, HINSTANCE hpi, LPSTR cmdline, int nCmdShow);
+ virtual bool InitGame();
+
+ virtual void UpdateWorld();
+ virtual void GameState();
+
+ bool Server() const override;
+ void SetGameMode(int mode) override;
+
+ void CreateWorld();
+
+protected:
+ virtual void InstantiateMission();
+
+ Universe* world;
+ Mission* current_mission;
+
+ NetServer* admin_server;
+ NetLobbyServer* lobby_server;
+
+private:
+ static StarServer* instance;
+};
+
+
+#endif // StarServer_h