summaryrefslogtreecommitdiff
path: root/server/game.h
diff options
context:
space:
mode:
Diffstat (limited to 'server/game.h')
-rw-r--r--server/game.h25
1 files changed, 22 insertions, 3 deletions
diff --git a/server/game.h b/server/game.h
index f2f64ac..00da0bc 100644
--- a/server/game.h
+++ b/server/game.h
@@ -1,13 +1,32 @@
#ifndef GAME_H
#define GAME_H
+#include <boost/shared_ptr.hpp>
+#include <boost/enable_shared_from_this.hpp>
+
+#include <vector>
+
#include "player.h"
-class Game {
- private:
-
+class Game : public boost::enable_shared_from_this<Game> {
public:
+ typedef boost::shared_ptr<Game> p;
+
+ static p create(Player::p player_1, Player::p player_2, Player::p player_3, Player::p player_4);
+
+ private:
+ std::vector<Player::p> players;
+
+ int waiting_players;
+
Game(Player::p player_1, Player::p player_2, Player::p player_3, Player::p player_4);
+
+ //! Handle Ready message from player.
+ void handle_ready();
+
+ //! Start the game.
+ void start();
+
};
#endif