public ErrorCode OnCs2LsGslost(NetSessionBase session, Google.Protobuf.IMessage message) { Protos.CS2LS_GSLost gsLost = (Protos.CS2LS_GSLost)message; LS.instance.gsInfos.Remove(gsLost.Gsid); Logger.Log($"GS lost:{gsLost.Gsid},count:{LS.instance.gsInfos.Count}"); return(ErrorCode.Success); }
public void OnGSSessionClosed(NetSessionBase session) { //更新GS列表 CS.instance.lIDToGSInfos.Remove(session.logicID); CS.instance.UpdateAppropriateGSInfo(); //踢出所有连接到该GS的玩家 CS.instance.userMgr.OnGSDisconnect(session.logicID); //通知LS有GS断开连接了 Protos.CS2LS_GSLost message = ProtoCreator.Q_CS2LS_GSLost(); message.Gsid = session.logicID; CS.instance.netSessionMgr.Send(SessionType.ServerLS, message); session.logicID = 0; }