Beispiel #1
0
    /// <summary>
    /// 发送帐号验证请求
    /// </summary>
    private void AccountVerify()
    {
        KC2G_AccountVerifyRequest request = SingleInstanceCache.GetInstanceByType <KC2G_AccountVerifyRequest>();

        request.byProtocol = (byte)KC2G_Protocol.c2g_account_verify_request;
        request.account    = Account;
        request.nGroupID   = (int)KConstDefine.cdDefaultGroupID;
        request.password   = AccountToken;
        request.pf         = "?";// ApplicationManager.channel;
        request.nTag       = (int)centerType;
        request.roleIdList = new List <ulong>();

        // ServerListProxy serverListProxy = DataManager.GetProxy<ServerListProxy>();
        // string serverId = serverListProxy.LastLoginServer != null ? serverListProxy.LastLoginServer.gid : string.Empty;
        // CharacterListProxy characterListProxy = DataManager.GetProxy<CharacterListProxy>();
        // Character[] characters = characterListProxy.GetAll(serverId);
        // for (int i = 0; i < characters.Length; i++)
        // {
        //     request.roleIdList.Add(characters[i].Id);
        //     //Debug.LogError("send grpc role id: " + characters[i].Id);
        // }

        NetworkManager.Instance.SendToGatewayServer(request);

        Debug.LogFormat("Account Verify Request: account={0}, groupId={1}", request.account, request.nGroupID);
    }
        public void OnHandShakeRespond(KProtoBuf buf)
        {
            KG2C_HandshakeRespond respond = buf as KG2C_HandshakeRespond;
            KGateWayHandShakeCode code    = EnumUtils.GetEnumIns <KGateWayHandShakeCode>(respond.code);

            log.Debug("网关握手返回:" + code);
            if (code == KGateWayHandShakeCode.ghcHandshakeSucceed)
            {
                KC2G_AccountVerifyRequest request = new KC2G_AccountVerifyRequest();
                request.byProtocol = (byte)KC2G_Protocol.c2g_account_verify_request;
                log.Debug("Account=" + ConfigManager.GetInstance().Account);
                request.account  = ConfigManager.GetInstance().Account;
                request.nGroupID = ConfigManager.GetInstance().GroupID;
                request.password = password;
                SendMessage(request);
            }
            else if (code == KGateWayHandShakeCode.ghcGatewayVersionError)
            {
            }
        }