예제 #1
0
    /// <summary> 单组服务器数据协议回调 </summary>
    /// <param name="buffer"></param>
    private void OnGameServerOnePageResponse(byte[] buffer)
    {
        GameServerOnePageResponseProto proto = GameServerOnePageResponseProto.GetProto(buffer);

        proto.ServerOnePageItemList.Reverse();
        SetRightData(proto.ServerOnePageItemList);
    }
예제 #2
0
    private void OnGameServerOnePageRequest(Role role, byte[] buffer)
    {
        GameServerOnePageRequestProto  requestProto = GameServerOnePageRequestProto.GetProto(buffer);
        GameServerOnePageResponseProto proto        = new GameServerOnePageResponseProto();

        proto.ServerOnePageItemList = GetGameServerOnePageList(requestProto.PageIndex);
        proto.ItemCount             = proto.ServerOnePageItemList.Count;
        role.ClientSocket.SendMsg(proto.ToArray());
    }
예제 #3
0
    private void OnGameServerPageRequest(Role role, byte[] buffer)
    {
        GameServerPageResponseProto proto = new GameServerPageResponseProto();

        proto.ServerPageItemList = GetServerPageList();
        proto.ItemCount          = proto.ServerPageItemList.Count;
        role.ClientSocket.SendMsg(proto.ToArray());

        GameServerOnePageResponseProto onePageProto = new GameServerOnePageResponseProto();

        onePageProto.ServerOnePageItemList = GetGameServerOnePageList(proto.ServerPageItemList.Count);
        onePageProto.ItemCount             = onePageProto.ServerOnePageItemList.Count;
        role.ClientSocket.SendMsg(onePageProto.ToArray());
    }
    public static GameServerOnePageResponseProto GetProto(byte[] buffer)
    {
        GameServerOnePageResponseProto proto = new GameServerOnePageResponseProto();

        using (MMO_MemoryStream ms = new MMO_MemoryStream(buffer))
        {
            proto.ItemCount             = ms.ReadInt();
            proto.ServerOnePageItemList = new List <GameServerOnePageItem>();
            for (int i = 0; i < proto.ItemCount; i++)
            {
                GameServerOnePageItem _ServerOnePageItem = new GameServerOnePageItem();
                _ServerOnePageItem.ServerId  = ms.ReadInt();
                _ServerOnePageItem.Status    = ms.ReadInt();
                _ServerOnePageItem.RunState  = ms.ReadInt();
                _ServerOnePageItem.IsCommand = ms.ReadBool();
                _ServerOnePageItem.IsNew     = ms.ReadBool();
                _ServerOnePageItem.Name      = ms.ReadUTF8String();
                _ServerOnePageItem.Ip        = ms.ReadUTF8String();
                _ServerOnePageItem.Port      = ms.ReadInt();
                proto.ServerOnePageItemList.Add(_ServerOnePageItem);
            }
        }
        return(proto);
    }