From 8fff4a840747478c68ec19e931b1c83ed3eb0fbb Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Tue, 29 Sep 2020 15:05:51 +0800 Subject: [PATCH] 1 --- server/imserver/guild.cc | 4 ++++ server/imserver/guild.h | 1 + server/imserver/handlermgr.cc | 2 ++ server/imserver/player.cc | 12 ++++++++++++ server/imserver/player.h | 1 + server/tools/protobuild/cs_msgid.proto | 2 ++ server/tools/protobuild/cs_proto.proto | 11 +++++++++++ 7 files changed, 33 insertions(+) diff --git a/server/imserver/guild.cc b/server/imserver/guild.cc index 29618ba..5fa2424 100644 --- a/server/imserver/guild.cc +++ b/server/imserver/guild.cc @@ -268,6 +268,10 @@ void Guild::_CMGuildAgree(f8::MsgHdr& hdr, const cs::CMGuildAgree& msg) ClearApplyBySenderId(msg.apply().base_data().account_id()); } +void Guild::_CMGuildRefuse(f8::MsgHdr& hdr, const cs::CMGuildRefuse& msg) +{ +} + void Guild::_CMGuildKick(f8::MsgHdr& hdr, const cs::CMGuildKick& msg) { ss::SS_IM_ForwardGuildCMMsg *forward_msg = (ss::SS_IM_ForwardGuildCMMsg*)hdr.user_data; diff --git a/server/imserver/guild.h b/server/imserver/guild.h index 0b5cd22..dd12780 100644 --- a/server/imserver/guild.h +++ b/server/imserver/guild.h @@ -19,6 +19,7 @@ public: void _CMGuildInfo(f8::MsgHdr& hdr, const cs::CMGuildInfo& msg); void _CMGuildJoin(f8::MsgHdr& hdr, const cs::CMGuildJoin& msg); void _CMGuildAgree(f8::MsgHdr& hdr, const cs::CMGuildAgree& msg); + void _CMGuildRefuse(f8::MsgHdr& hdr, const cs::CMGuildRefuse& msg); void _CMGuildKick(f8::MsgHdr& hdr, const cs::CMGuildKick& msg); void _CMGuildQuit(f8::MsgHdr& hdr, const cs::CMGuildQuit& msg); void _CMGuildDismiss(f8::MsgHdr& hdr, const cs::CMGuildDismiss& msg); diff --git a/server/imserver/handlermgr.cc b/server/imserver/handlermgr.cc index 0294936..a9ec8c3 100644 --- a/server/imserver/handlermgr.cc +++ b/server/imserver/handlermgr.cc @@ -107,6 +107,7 @@ void HandlerMgr::RegisterNetMsgHandlers() RegisterNetMsgHandler(&wsmsghandler, &Player::_CMGuildCreate); RegisterNetMsgHandler(&wsmsghandler, &Player::_CMGuildJoin); RegisterNetMsgHandler(&wsmsghandler, &Player::_CMGuildAgree); + RegisterNetMsgHandler(&wsmsghandler, &Player::_CMGuildRefuse); RegisterNetMsgHandler(&wsmsghandler, &Player::_CMGuildKick); RegisterNetMsgHandler(&wsmsghandler, &Player::_CMGuildQuit); RegisterNetMsgHandler(&wsmsghandler, &Player::_CMGuildDismiss); @@ -121,6 +122,7 @@ void HandlerMgr::RegisterNetMsgHandlers() RegisterNetMsgHandler(&guild_msghandler, &Guild::_CMGuildInfo); RegisterNetMsgHandler(&guild_msghandler, &Guild::_CMGuildJoin); RegisterNetMsgHandler(&guild_msghandler, &Guild::_CMGuildAgree); + RegisterNetMsgHandler(&guild_msghandler, &Guild::_CMGuildRefuse); RegisterNetMsgHandler(&guild_msghandler, &Guild::_CMGuildKick); RegisterNetMsgHandler(&guild_msghandler, &Guild::_CMGuildQuit); RegisterNetMsgHandler(&guild_msghandler, &Guild::_CMGuildDismiss); diff --git a/server/imserver/player.cc b/server/imserver/player.cc index 2870fc8..d37577e 100644 --- a/server/imserver/player.cc +++ b/server/imserver/player.cc @@ -726,6 +726,18 @@ void Player::_CMGuildAgree(f8::MsgHdr& hdr, const cs::CMGuildAgree& msg) ForwardGuildCMMsg(hdr, GuildId()); } +void Player::_CMGuildRefuse(f8::MsgHdr& hdr, const cs::CMGuildRefuse& msg) +{ + cs::SMGuildRefuse respmsg; + if (GuildId() == 0) { + respmsg.set_errcode(1); + respmsg.set_errmsg("你还没有公会"); + SendMsg(respmsg); + return; + } + ForwardGuildCMMsg(hdr, GuildId()); +} + void Player::_CMGuildKick(f8::MsgHdr& hdr, const cs::CMGuildKick& msg) { cs::SMGuildKick respmsg; diff --git a/server/imserver/player.h b/server/imserver/player.h index 746c5e2..3b1f8bf 100644 --- a/server/imserver/player.h +++ b/server/imserver/player.h @@ -99,6 +99,7 @@ class Player void _CMGuildCreate(f8::MsgHdr& hdr, const cs::CMGuildCreate& msg); void _CMGuildJoin(f8::MsgHdr& hdr, const cs::CMGuildJoin& msg); void _CMGuildAgree(f8::MsgHdr& hdr, const cs::CMGuildAgree& msg); + void _CMGuildRefuse(f8::MsgHdr& hdr, const cs::CMGuildRefuse& msg); void _CMGuildKick(f8::MsgHdr& hdr, const cs::CMGuildKick& msg); void _CMGuildQuit(f8::MsgHdr& hdr, const cs::CMGuildQuit& msg); void _CMGuildDismiss(f8::MsgHdr& hdr, const cs::CMGuildDismiss& msg); diff --git a/server/tools/protobuild/cs_msgid.proto b/server/tools/protobuild/cs_msgid.proto index 7a26850..8a97417 100644 --- a/server/tools/protobuild/cs_msgid.proto +++ b/server/tools/protobuild/cs_msgid.proto @@ -40,6 +40,7 @@ enum CMMessageId_e _CMGuildApplyList = 242; _CMGuildLog = 243; _CMGuildMemberSetJob = 244; + _CMGuildRefuse = 245; _CMGuildMsgEnd = 270; _CMTeamCreate = 301; @@ -87,6 +88,7 @@ enum SMMessageId_e _SMGuildApplyList = 242; _SMGuildLog = 243; _SMGuildMemberSetJob = 244; + _SMGuildRefuse = 245; _SMGuildMsgEnd = 270; _SMTeamCreate = 301; diff --git a/server/tools/protobuild/cs_proto.proto b/server/tools/protobuild/cs_proto.proto index 0130c43..95e0b51 100644 --- a/server/tools/protobuild/cs_proto.proto +++ b/server/tools/protobuild/cs_proto.proto @@ -404,6 +404,17 @@ message SMGuildAgree optional string errmsg = 2; } +//拒绝加公会申请 +message CMGuildRefuse +{ + optional MFGuildApply apply = 1; //申请信息 +} +message SMGuildRefuse +{ + optional int32 errcode = 1; + optional string errmsg = 2; +} + //踢人 message CMGuildKick {