From 121387bfccc0ca2e35d39a8c1c92471f24e4848a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Atle=20Hellvik=20Havs=C3=B8?= Date: Mon, 6 Dec 2010 20:57:12 +0100 Subject: Added GameEnd message and made the GameEndDialog use it. --- common/connectionbase.cpp | 6 ++++++ common/message.h | 16 ++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/common/connectionbase.cpp b/common/connectionbase.cpp index 448e833..9a110f7 100644 --- a/common/connectionbase.cpp +++ b/common/connectionbase.cpp @@ -116,6 +116,12 @@ void ConnectionBase::got_data(uint8_t* data, std::size_t bytes) { got_message(m); } break; + case Message::Types::GameEnd: { + Message::GameEnd::p m = make_shared(); + ia & m; + got_message(m); + } break; + default: throw std::runtime_error("Deserialization attempted on unknown message type."); } diff --git a/common/message.h b/common/message.h index 4390cdd..2be68c0 100644 --- a/common/message.h +++ b/common/message.h @@ -234,6 +234,8 @@ namespace Message { int won; Score score[4]; + bool game_end; + template void serialize(Archive & ar, const unsigned int v) { ar & hand; @@ -242,9 +244,23 @@ namespace Message { ar & total_fu; ar & won; ar & score; + ar & game_end; } }; + class GameEnd : public Base { + public: + typedef boost::shared_ptr p; + Message::RoundEnd::Score scores[4]; + + GameEnd() : Base(Types::GameEnd) {} + + template + void serialize(Archive & ar, const unsigned int v) { + ar & scores; + } + + }; typedef boost::shared_ptr p; }; -- cgit v1.2.3