From 65ebd56c28c5ee1d01485afb2736fa3f84d8f031 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Thu, 21 Mar 2024 11:37:59 +0800 Subject: [PATCH] 1 --- server/imserver_new/player/player.go | 4 +++- server/imserver_new/player/playermgr.go | 14 +++++++++++--- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/server/imserver_new/player/player.go b/server/imserver_new/player/player.go index ceef8efe..d3649fd7 100644 --- a/server/imserver_new/player/player.go +++ b/server/imserver_new/player/player.go @@ -963,7 +963,6 @@ func (this *player) FillMFUser(profile *PlayerProfile) *cs.MFUser { } */ -// FillMFChatUser 填充聊天信息 func (this *player) FillMFChatUser() *cs.MFChatUser { /* accountId := p.accountId @@ -1006,6 +1005,9 @@ func (this *player) IncrPrivateChatLastId() uint64 { } */ +func (this *player) onOffline() { +} + func newPlayer() *player { hum := new(player) return hum diff --git a/server/imserver_new/player/playermgr.go b/server/imserver_new/player/playermgr.go index b1a0018b..c491a259 100644 --- a/server/imserver_new/player/playermgr.go +++ b/server/imserver_new/player/playermgr.go @@ -8,7 +8,7 @@ import ( "github.com/golang/protobuf/proto" "mt" "q5" - //"net" + "net" "main/constant" "main/common" . "main/global" @@ -47,7 +47,6 @@ func (this *playerMgr) init() { f5.GetApp().RegisterIMMsgHandle( constant.IM_WSP_CLOSE, func(args q5.Args) { - /* conn := args[0].(net.Conn) deletedPlayers := make(map[f5.WspCliConn]*player) for socket, hum := range this.socketHash { @@ -57,7 +56,7 @@ func (this *playerMgr) init() { } for socket, _ := range deletedPlayers { this.onSocketClose(socket) - }*/ + } }) } @@ -276,3 +275,12 @@ func (this *playerMgr) CMReconnect(hdr *f5.MsgHdr, msg *cs.CMReconnect) { hum.reBind(hdr.GetSocket()) GetWspListener().SendProxyMsg(hdr.Conn, hdr.SocketHandle, rspMsg) } + +func (this *playerMgr) onSocketClose(conn f5.WspCliConn) { + hum := this.internalGetPlayerBySocket(conn) + if hum == nil { + return + } + delete(this.socketHash, conn) + hum.onOffline() +}