少年修仙传客户端代码仓库
Client_PangDeRong
2018-08-29 f5e149a338a02e667be03ecbb6fe6ff57fd9350d
Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts
1个文件已修改
160 ■■■■ 已修改文件
System/AssetVersion/InGameDownLoad.cs 160 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/AssetVersion/InGameDownLoad.cs
@@ -1,57 +1,63 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
using Snxxz.UI;
using System.Text.RegularExpressions;
using TableConfig;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
using Snxxz.UI;
using System.Text.RegularExpressions;
using TableConfig;
public class InGameDownLoad : SingletonMonobehaviour<InGameDownLoad>
{
    public const int BYTE_PER_KILOBYTE = 1024;
    public const int BYTE_PER_MILLIONBYTE = 1048576;
    public const int BYTE_PER_MILLIONBYTE = 1048576;
    List<RemoteFile> workingQueue = new List<RemoteFile>();
    List<AssetVersion> tasks = new List<AssetVersion>();
    public bool inGameDownLoadAllow = false;
    public float progress {
        get {
    public float progress
    {
        get
        {
            return Mathf.Clamp01((float)showDownLoadedSize / showTotalSize);
        }
    }
    }
    public bool isDone { get { return state == State.Completed; } }
    public long showDownLoadedSize { get { return downLoadedSizeRecord + RemoteFile.TotalDownloadedSize - backGroundDownLoadSizeRecord; } }
    public long showTotalSize { get { return totalSize - backGroundDownLoadSizeRecord; } }
    public int showTotalCount { get { return totalCount - downLoadedCountRecord; } }
    public int showOkCount { get { return okCount - downLoadedCountRecord; } }
    long totalSize = 0;
    int totalCount = 0;
    int m_OkCount = 0;
    int okCount {
    public int showOkCount { get { return okCount - downLoadedCountRecord; } }
    long totalSize = 0;
    int totalCount = 0;
    int m_OkCount = 0;
    int okCount
    {
        get { return m_OkCount; }
        set {
        set
        {
            m_OkCount = value;
        }
    }
    long backGroundDownLoadSizeRecord = 0;//后台偷偷已经下载到资源量
    long downLoadedSizeRecord = 0;//记录上次暂停时记录的下载量
    int downLoadedCountRecord = 0;//已经下载完成的资源包数量
    }
    long backGroundDownLoadSizeRecord = 0;//后台偷偷已经下载到资源量
    long downLoadedSizeRecord = 0;//记录上次暂停时记录的下载量
    int downLoadedCountRecord = 0;//已经下载完成的资源包数量
    public event Action<State> downLoadStateChangeEvent;
    public event Action<Dominant> dominantDownLoadEvent;
    Action onDownLoadOk;
    Dominant m_DominantState = Dominant.None;
    public Dominant dominantState {
    public Dominant dominantState
    {
        get { return m_DominantState; }
        private set {
        private set
        {
            if (m_DominantState != value)
            {
                m_DominantState = value;
@@ -64,9 +70,11 @@
    }
    State m_State = State.None;
    public State state {
    public State state
    {
        get { return m_State; }
        set {
        set
        {
            if (m_State != value)
            {
                m_State = value;
@@ -83,7 +91,8 @@
    public List<Reward> rewards = new List<Reward>();
    public bool hasReward { get; private set; }
    public string completeDownLoadAccount {
    public string completeDownLoadAccount
    {
        get { return LocalSave.GetString("InGameDownLoadCompleteAccount"); }
        set { LocalSave.SetString("InGameDownLoadCompleteAccount", value); }
    }
@@ -113,8 +122,8 @@
        PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= OnPlayerLevelChange;
        PlayerDatas.Instance.PlayerDataRefreshInfoEvent += OnPlayerLevelChange;
    }
    }
    public void ParseRewardConfig()
    {
        var rewardString = Config.Instance.Get<FuncConfigConfig>("DownReward").Numerical1;
@@ -123,8 +132,8 @@
        {
            rewards.Add(new Reward(matches[i].Value));
        }
    }
    }
    public void UpdateRewardInfo(HA319_tagMCPackDownloadRecord _package)
    {
        hasReward = _package.Record == 1;
@@ -135,16 +144,16 @@
        }
        downLoadRedpoint.state = state == State.Award ? RedPointState.Simple : RedPointState.None;
    }
    }
    public void RequestDownLoadReward(bool _manual)
    {
        var send = new CA504_tagCMPlayerGetReward();
        send.RewardType = 15;
        send.DataEx = (byte)(_manual ? 0 : 1);
        GameNetSystem.Instance.SendInfo(send);
    }
    }
    public void TryDownLoad(Dominant _dominant)
    {
        if (!inGameDownLoadAllow)
@@ -185,7 +194,6 @@
                {
                    backGroundDownLoadSizeRecord = RemoteFile.TotalDownloadedSize;
                    downLoadedCountRecord = okCount;
                    state = State.Prepared;
                }
                StartDownLoad();
                dominantState = Dominant.Half;
@@ -209,8 +217,8 @@
                break;
        }
    }
    }
    public void StartDownLoad()
    {
        if (state == State.None || state == State.Prepared || state == State.Pause)
@@ -236,9 +244,9 @@
            RemoteFile.MaxConnectLimit = 0;
            state = State.Pause;
        }
    }
    }
    IEnumerator Co_StartDownLoad()
    {
        downLoadedSizeRecord += RemoteFile.TotalDownloadedSize;
@@ -308,7 +316,7 @@
            onDownLoadOk = null;
        }
    }
    private void OnFileDownLoadCompleted(bool _ok, AssetVersion _assetVersion)
    {
        foreach (var remote in workingQueue)
@@ -338,10 +346,12 @@
    }
    Clock netSwitchClock;
    NetworkReachability m_NetworkReachability = NetworkReachability.NotReachable;
    NetworkReachability networkReachability {
    NetworkReachability m_NetworkReachability = NetworkReachability.NotReachable;
    NetworkReachability networkReachability
    {
        get { return m_NetworkReachability; }
        set {
        set
        {
            if (m_NetworkReachability != value)
            {
                m_NetworkReachability = value;
@@ -374,13 +384,15 @@
                }
            }
        }
    }
    bool m_SimulateWifi = true;
    public bool simulateWifi {
    }
    bool m_SimulateWifi = true;
    public bool simulateWifi
    {
        get { return m_SimulateWifi; }
        set {
        set
        {
            if (m_SimulateWifi != value)
            {
                m_SimulateWifi = value;
@@ -407,11 +419,11 @@
            }
        }
    }
    float netCheckTimer = 0f;
    }
    float netCheckTimer = 0f;
    private void LateUpdate()
    {
        if (state == State.None || state == State.Award || state == State.Completed)
@@ -481,7 +493,7 @@
        }
        return true;
    }
    }
    public bool IsHighLevelPlayer()
    {
@@ -512,8 +524,8 @@
                }
                break;
        }
    }
    }
    private void OnMainTaskChange(int _taskId, int _state)
    {
        var mainTaskId = taskModel.currentMission;
@@ -525,9 +537,9 @@
                TryDownLoad(Dominant.Whole);
            }
        }
    }
    }
    public struct Reward
    {
        public int id;
@@ -568,8 +580,8 @@
            }
        }
    }
    }
    public enum State
    {
        None,
@@ -585,6 +597,6 @@
        None = 0,
        Half = 1,
        Whole = 2,
    }
}
    }
}