This commit is contained in:
aozhiwei 2020-09-25 16:30:49 +08:00
parent d34c651fe1
commit 70ab00072d
2 changed files with 18 additions and 11 deletions

View File

@ -58,11 +58,20 @@ void Guild::AddMember(GuildMember* member)
} }
} }
void Guild::RemoveMember(const std::string& account_id) void Guild::RemoveMember(const std::string& sender_id,
const std::string& target_id,
int reason)
{ {
GuildMember* member = GetMember(account_id); GuildMember* member = GetMember(target_id);
if (member) { if (member) {
member_hash_.erase(account_id); SyncHelper::Instance()->SyncGuildMemberQuit
(
this,
sender_id,
target_id,
reason
);
member_hash_.erase(target_id);
A8_SAFE_DELETE(member); A8_SAFE_DELETE(member);
GenSortedMembers(); GenSortedMembers();
} }
@ -226,13 +235,9 @@ void Guild::_CMGuildKick(f8::MsgHdr& hdr, const cs::CMGuildKick& msg)
GuildMgr::Instance()->ForwardGuildSMMsg(hdr.socket_handle, GuildMgr::Instance()->ForwardGuildSMMsg(hdr.socket_handle,
forward_msg->context(), forward_msg->context(),
respmsg); respmsg);
SyncHelper::Instance()->SyncGuildMemberQuit RemoveMember(sender->account_id,
( member->account_id,
this, kGuildKick);
sender->account_id,
member->account_id,
kGuildKick
);
} }
void Guild::_CMGuildQuit(f8::MsgHdr& hdr, const cs::CMGuildQuit& msg) void Guild::_CMGuildQuit(f8::MsgHdr& hdr, const cs::CMGuildQuit& msg)

View File

@ -75,7 +75,9 @@ private:
bool IsFull(); bool IsFull();
GuildMember* GetMember(const std::string& account_id); GuildMember* GetMember(const std::string& account_id);
void AddMember(GuildMember* member); void AddMember(GuildMember* member);
void RemoveMember(const std::string& account_id); void RemoveMember(const std::string& sender_id,
const std::string& target_id,
int reason);
void FillGuildBasic(cs::MFGuildBasic* guild_basic); void FillGuildBasic(cs::MFGuildBasic* guild_basic);
void FillGuildDB(ss::MFGuildDB& guild_pb); void FillGuildDB(ss::MFGuildDB& guild_pb);