diff --git a/server/hallserver/player/player.go b/server/hallserver/player/player.go index ae6ff110..8bccd380 100644 --- a/server/hallserver/player/player.go +++ b/server/hallserver/player/player.go @@ -34,6 +34,13 @@ func (this *player) init(req *pendingLoginRequest){ this.sessionId = req.msg.GetSessionId() } +func (this *player) onOffline(){ + this.socket.Reset() + if this.room != nil { + this.room.OnPlayerOffline(this) + } +} + func (this *player) CMCreateRoom(hdr *f5.MsgHdr, msg *cs.CMCreateRoom) { } diff --git a/server/hallserver/player/playermgr.go b/server/hallserver/player/playermgr.go index cce14fe9..72f1731c 100644 --- a/server/hallserver/player/playermgr.go +++ b/server/hallserver/player/playermgr.go @@ -227,8 +227,5 @@ func (this *playerMgr) SS_WSP_SocketDisconnect(hdr *f5.MsgHdr, msg *ss.SS_WSP_So return } delete(this.socketHash, hdr.GetSocket()) - hum.socket.Reset() - if hum.room != nil { - hum.room.OnPlayerOffline(hum) - } + hum.onOffline() }