From 1624b37bf4ce632a486d6729dc90724241417868 Mon Sep 17 00:00:00 2001 From: Vegard Storheil Eriksen Date: Mon, 6 Dec 2010 21:04:00 +0100 Subject: Changed format of Message::Login and Message::LoginResponse to accomodate reconnection. --- common/message.h | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) (limited to 'common') diff --git a/common/message.h b/common/message.h index 2be68c0..76ebf95 100644 --- a/common/message.h +++ b/common/message.h @@ -62,13 +62,16 @@ namespace Message { public: typedef boost::shared_ptr p; - Login(const std::string& n = "") : Base(Types::Login), nick(n) {} + Login(const std::string& n = "", uint64_t c = 0) : Base(Types::Login), nick(n), cookie(c) {} std::string nick; + uint64_t cookie; + template void serialize(Archive & ar, const unsigned int v) { ar & nick; + ar & cookie; } }; @@ -76,13 +79,26 @@ namespace Message { public: typedef boost::shared_ptr p; - LoginResponse(bool ok = false) : Base(Types::LoginResponse), login_ok(ok) {} + //! Response type. + enum Type { + //! Invalid login attempt. + Invalid, + //! Login to lobby. + Lobby, + //! Login to resume ongoing game. + Resume + }; + + LoginResponse(Type t = Invalid, uint64_t c = 0) : Base(Types::LoginResponse), type(t), cookie(c) {} + + Type type; - bool login_ok; + uint64_t cookie; template void serialize(Archive & ar, const unsigned int v) { - ar & login_ok; + ar & type; + ar & cookie; } }; -- cgit v1.2.3