diff --git a/src/net/clientthread.h b/src/net/clientthread.h index 5a0be2d6..38f8c912 100644 --- a/src/net/clientthread.h +++ b/src/net/clientthread.h @@ -78,6 +78,8 @@ public: void SendResetTimeout(); void SendAskKickPlayer(unsigned playerId); void SendVoteKick(bool doKick); + void SendInvitePlayerToCurrentGame(unsigned playerId); + void SendRejectGameInvitation(unsigned gameId, DenyGameInvitationReason reason); void StartAsyncRead(); void HandleRead(const boost::system::error_code& ec, size_t bytesRead); diff --git a/src/net/common/clientthread.cpp b/src/net/common/clientthread.cpp index 60e4247c..28f6c358 100644 --- a/src/net/common/clientthread.cpp +++ b/src/net/common/clientthread.cpp @@ -310,6 +310,18 @@ ClientThread::SendVoteKick(bool doKick) m_ioService->post(boost::bind(&ClientThread::SendSessionPacket, shared_from_this(), packet)); } +void +ClientThread::SendInvitePlayerToCurrentGame(unsigned playerId) +{ + // TODO +} + +void +ClientThread::SendRejectGameInvitation(unsigned gameId, DenyGameInvitationReason reason) +{ + // TODO +} + void ClientThread::StartAsyncRead() { diff --git a/src/session.cpp b/src/session.cpp index c887c635..7305dd6a 100755 --- a/src/session.cpp +++ b/src/session.cpp @@ -432,6 +432,30 @@ Session::setLogin(const std::string &userName, const std::string &password, bool myNetClient->SetLogin(userName, password, isGuest); } +void +Session::invitePlayerToCurrentGame(unsigned playerId) +{ + if (!myNetClient) + return; // only act if client is running. + myNetClient->SendInvitePlayerToCurrentGame(playerId); +} + +void +Session::acceptGameInvitation(unsigned gameId) +{ + if (!myNetClient) + return; // only act if client is running. + myNetClient->SendJoinGame(gameId, ""); +} + +void +Session::rejectGameInvitation(unsigned gameId, DenyGameInvitationReason reason) +{ + if (!myNetClient) + return; // only act if client is running. + myNetClient->SendRejectGameInvitation(gameId, reason); +} + void Session::voteKick(bool doKick) { if (!myNetClient)