コード例 #1
0
    /// <summary>
    /// 保存文本到Bridge
    /// </summary>
    /// <param name="arg1"></param>
    /// <returns></returns>
    private Promise <LancherLoadData> SaveTextToBridge(LancherLoadData www)
    {
        var promise = new Promise <LancherLoadData>();

        CodeBridgeTool.instance.localResText = LancherEncodingUtils.GetString(www.bytes);

        promise.Resolve(www);

        return(promise);
    }
コード例 #2
0
    private IPromise <LancherLoadData> NoticeRepose(LancherLoadData arg1)
    {
        var promise = new Promise <LancherLoadData>();

        var text = LancherEncodingUtils.GetString(arg1.bytes);

        this.ResolveJson(text);

        ReSortList();

        promise.Resolve(arg1);

        return(promise);
    }
コード例 #3
0
    /// <summary>
    /// 解析WWW读的文件 然后准备HTTP服务器地址
    /// </summary>
    /// <param name="_www"></param>
    /// <returns></returns>
    private Promise <LancherLoadData> ParseWWWPrepareServerPath(LancherLoadData _www)
    {
        var promise = new Promise <LancherLoadData>();

        var text = LancherEncodingUtils.GetString(_www.bytes);

        if (text.Length == 0)
        {
            promise.Reject(new Exception(LancherConstTable.LoadConfigError));
            return(promise);
        }

        var infoArray = text.Split(';');

        if (infoArray.Length > 5)
        {
            var channelStr = string.Format("{0}-{1}-{2}-{3}", infoArray[1], infoArray[2], infoArray[3], infoArray[4]).Trim();

            if (infoArray.Length >= 6)//
            {
                CodeBridgeTool.instance.SetUpdateBulidNum(infoArray[5]);
            }

            // 记录当前客户端的 游戏版本号
            if (infoArray.Length >= 8)
            {
                context.localGameVersion = infoArray[7];
            }

            context.serverURL = string.Format("{0}?op_channel={1}", WWW.UnEscapeURL(infoArray[0].ToString()), channelStr);

            promise.Resolve(_www);

            return(promise);
        }
        else
        {
            promise.Reject(new Exception(LancherConstTable.ParseConfigFileError));

            return(promise);
        }
    }
コード例 #4
0
    /// <summary>
    /// 加载服务器Json后
    /// </summary>
    /// <param name="_www"></param>
    /// <returns></returns>
    private Promise <LancherLoadData> LoadServerJson(LancherLoadData _www)
    {
        var promise = new Promise <LancherLoadData>();

        context.serverInfo = JsonUtility.FromJson <TgameSvrInfo>(LancherEncodingUtils.GetString(_www.bytes));

        if (context.serverInfo != null)
        {
            //成功获取到服务器的信息
            LancherPrefs.SetInt(LancherPrefsConst.Need_Code, context.serverInfo.needCode ? 1 : 0);

            LancherPrefs.SetString(LancherPrefsConst.Channel, context.serverInfo.opChannel);

            promise.Resolve(_www);

            CompareGameVersion();
        }
        else
        {
            promise.Reject(new Exception(LancherConstTable.ParseServerFileError));
        }

        return(promise);
    }