From 410dc67362c976dd92d088f44cd9499ea855b99b Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Tue, 9 Apr 2024 13:17:02 +0800 Subject: [PATCH] 1 --- server/imserver_new/guild/guildmgr.go | 4 ++++ server/imserver_new/player/player.go | 11 +++++++++++ 2 files changed, 15 insertions(+) diff --git a/server/imserver_new/guild/guildmgr.go b/server/imserver_new/guild/guildmgr.go index 8a89f261..8d12f8a4 100644 --- a/server/imserver_new/guild/guildmgr.go +++ b/server/imserver_new/guild/guildmgr.go @@ -539,6 +539,10 @@ func (this *guildMgr) AsyncKickout(accountId string, targetId string, cb func(in cb(0, "") return; } + if guild.getMember(targetId) == nil { + cb(0, "") + return; + } } func (this *guildMgr) AsyncDisband(accountId string, cb func(int32, string, []string)) { diff --git a/server/imserver_new/player/player.go b/server/imserver_new/player/player.go index 383d3817..b1a76469 100644 --- a/server/imserver_new/player/player.go +++ b/server/imserver_new/player/player.go @@ -497,6 +497,17 @@ func (this *player) CMLeaveGuild(hdr *f5.MsgHdr, msg *cs.CMLeaveGuild) { } func (this *player) CMDismissMember(hdr *f5.MsgHdr, msg *cs.CMDismissMember) { + rspMsg := new(cs.SMDismissMember) + GetGuildMgr().AsyncKickout( + this.GetAccountId(), + msg.GetDismissAccountId(), + func (errCode int32, errMsg string) { + if errCode != 0 { + this.SendMsg(rspMsg.Err(errCode, errMsg)) + return + } + this.SendMsg(rspMsg) + }) } func (this *player) CMSetMemberLevel(hdr *f5.MsgHdr, msg *cs.CMSetMemberLevel) {