| Core/GameEngine/Login/LoginStage.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Fight/MapTransferUtility.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Fight/Stage/CreateRoleStage.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Fight/Stage/SelectRoleStage.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/AssetVersion/InGameDownLoad.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/AssetVersion/InGameDownLoadProgress.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/Dungeon/DungeonModel.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| System/MainInterfacePanel/TipPanel.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
Core/GameEngine/Login/LoginStage.cs
@@ -50,7 +50,7 @@ if (!AssetVersionUtility.hasDownLoadFullAsset) { InGameDownLoad.Instance.inGameDownLoadAllow = true; InGameDownLoad.Instance.TryDownLoad(false); InGameDownLoad.Instance.TryDownLoad(InGameDownLoad.Dominant.None); } } Fight/MapTransferUtility.cs
@@ -719,7 +719,7 @@ if (!assetVersion.IsPriorAsset()) { InGameDownLoad.Instance.TryDownLoad(true); InGameDownLoad.Instance.TryDownLoad(InGameDownLoad.Dominant.Whole); return false; } } Fight/Stage/CreateRoleStage.cs
@@ -24,7 +24,7 @@ if (!AssetVersionUtility.hasDownLoadFullAsset) { InGameDownLoad.Instance.TryDownLoad(false); InGameDownLoad.Instance.TryDownLoad(InGameDownLoad.Dominant.None); } } Fight/Stage/SelectRoleStage.cs
@@ -22,7 +22,7 @@ if (!AssetVersionUtility.hasDownLoadFullAsset) { InGameDownLoad.Instance.TryDownLoad(false); InGameDownLoad.Instance.TryDownLoad(InGameDownLoad.Dominant.None); } //屏蔽职业特效预先加载逻,以减少不必要的内存损耗和获得更快的场景切换速度,资源压缩使用LZ4才行。 System/AssetVersion/InGameDownLoad.cs
@@ -16,20 +16,7 @@ public bool inGameDownLoadAllow = false; bool m_DominantDownLoadStarted = false; public bool dominantDownLoadStarted { get { return m_DominantDownLoadStarted; } private set { if (m_DominantDownLoadStarted != value) { m_DominantDownLoadStarted = value; if (dominantDownLoadEvent != null) { dominantDownLoadEvent(); } } } } public float progress { get { @@ -59,9 +46,24 @@ int downLoadedCountRecord = 0;//已经下载完成的资源包数量 public event Action<State> downLoadStateChangeEvent; public event Action dominantDownLoadEvent; public event Action<Dominant> dominantDownLoadEvent; Action onDownLoadOk; Dominant m_DominantState = Dominant.None; public Dominant dominantState { get { return m_DominantState; } private set { if (m_DominantState != value) { m_DominantState = value; if (dominantDownLoadEvent != null) { dominantDownLoadEvent(m_DominantState); } } } } State m_State = State.None; public State state { @@ -145,7 +147,7 @@ GameNetSystem.Instance.SendInfo(send); } public void TryDownLoad(bool _force) public void TryDownLoad(Dominant _dominant) { if (!inGameDownLoadAllow) { @@ -157,22 +159,14 @@ return; } if (_force) if (_dominant < dominantState) { if (!dominantDownLoadStarted) { backGroundDownLoadSizeRecord = RemoteFile.TotalDownloadedSize; downLoadedCountRecord = okCount; dominantDownLoadStarted = true; Pause(); state = State.Prepared; return; } WindowCenter.Instance.Open<InGameDownLoadWin>(); } else switch (_dominant) { case Dominant.None: if (InGameDownTestUtility.enable) { if (InGameDownTestUtility.isWifi) @@ -187,6 +181,34 @@ StartDownLoad(); } } break; case Dominant.Half: if (dominantState == Dominant.None) { backGroundDownLoadSizeRecord = RemoteFile.TotalDownloadedSize; downLoadedCountRecord = okCount; state = State.Prepared; } StartDownLoad(); dominantState = Dominant.Half; break; case Dominant.Whole: if (dominantState == Dominant.None) { backGroundDownLoadSizeRecord = RemoteFile.TotalDownloadedSize; downLoadedCountRecord = okCount; Pause(); state = State.Prepared; } else if (dominantState == Dominant.Half) { Pause(); state = State.Prepared; } dominantState = Dominant.Whole; WindowCenter.Instance.Open<InGameDownLoadWin>(); break; } } @@ -258,7 +280,7 @@ if (!hasReward) { if (!dominantDownLoadStarted) if (dominantState == Dominant.None) { RequestDownLoadReward(false); state = State.Completed; @@ -302,6 +324,7 @@ } } Clock netSwitchClock; NetworkReachability m_NetworkReachability = NetworkReachability.NotReachable; NetworkReachability networkReachability { get { return m_NetworkReachability; } @@ -310,23 +333,27 @@ { m_NetworkReachability = value; if (!dominantDownLoadStarted) if (dominantState != Dominant.Whole) { switch (m_NetworkReachability) { case NetworkReachability.ReachableViaCarrierDataNetwork: Pause(); var endTime = DateTime.Now + new TimeSpan(TimeSpan.TicksPerSecond * 10); Clock.Create(endTime, () => var endTime = DateTime.Now + new TimeSpan(TimeSpan.TicksPerSecond * 3); if (netSwitchClock != null) { netSwitchClock.Stop(); } netSwitchClock = Clock.Create(endTime, () => { if (CheckDominantDownLoad()) { TryDownLoad(true); TryDownLoad(Dominant.Whole); } }); break; case NetworkReachability.ReachableViaLocalAreaNetwork: TryDownLoad(false); TryDownLoad(Dominant.None); break; default: break; @@ -345,11 +372,11 @@ { m_SimulateWifi = value; if (!dominantDownLoadStarted) if (dominantState != Dominant.Whole) { if (m_SimulateWifi) { TryDownLoad(false); TryDownLoad(Dominant.None); } else { @@ -359,7 +386,7 @@ { if (CheckDominantDownLoad()) { TryDownLoad(true); TryDownLoad(Dominant.Whole); } }); } @@ -397,7 +424,7 @@ public bool CheckDominantDownLoad() { if (tasks == null || tasks.Count == 0 || isDone || dominantDownLoadStarted || NewBieCenter.Instance.inGuiding) if (tasks == null || tasks.Count == 0 || isDone || dominantState == Dominant.Whole || NewBieCenter.Instance.inGuiding) { return false; } @@ -467,7 +494,7 @@ { if (CheckDominantDownLoad()) { TryDownLoad(true); TryDownLoad(Dominant.Whole); } } break; @@ -482,7 +509,7 @@ { if (CheckDominantDownLoad()) { TryDownLoad(true); TryDownLoad(Dominant.Whole); } } } @@ -540,4 +567,11 @@ Completed, } public enum Dominant { None = 0, Half = 1, Whole = 2, } } System/AssetVersion/InGameDownLoadProgress.cs
@@ -18,7 +18,7 @@ private void Awake() { if (InGameDownLoad.Instance.dominantDownLoadStarted if (InGameDownLoad.Instance.dominantState != InGameDownLoad.Dominant.None && InGameDownLoad.Instance.state != InGameDownLoad.State.Completed) { this.gameObject.SetActive(true); @@ -36,7 +36,7 @@ } InGameDownLoad.Instance.downLoadStateChangeEvent += OnDownLoadStateChange; InGameDownLoad.Instance.dominantDownLoadEvent += OnDominantDownLoadStarted; InGameDownLoad.Instance.dominantDownLoadEvent += OnDownLoadDominantStateChange; m_ViewDownLoad.AddListener(OpenInGameDownloadWin); } @@ -55,13 +55,13 @@ { m_ViewDownLoad.RemoveAllListeners(); InGameDownLoad.Instance.downLoadStateChangeEvent -= OnDownLoadStateChange; InGameDownLoad.Instance.dominantDownLoadEvent -= OnDominantDownLoadStarted; InGameDownLoad.Instance.dominantDownLoadEvent -= OnDownLoadDominantStateChange; } private void OnDominantDownLoadStarted() private void OnDownLoadDominantStateChange(InGameDownLoad.Dominant _dominant) { UpdateDownLoadProgress(); this.gameObject.SetActive(InGameDownLoad.Instance.dominantDownLoadStarted); this.gameObject.SetActive(InGameDownLoad.Instance.dominantState != InGameDownLoad.Dominant.None); } private void OnDownLoadStateChange(InGameDownLoad.State _step) @@ -75,7 +75,7 @@ case InGameDownLoad.State.None: case InGameDownLoad.State.Prepared: case InGameDownLoad.State.DownLoad: if (InGameDownLoad.Instance.dominantDownLoadStarted) if (InGameDownLoad.Instance.dominantState != InGameDownLoad.Dominant.None) { UpdateDownLoadProgress(); this.gameObject.SetActive(true); @@ -118,7 +118,7 @@ case InGameDownLoad.State.None: case InGameDownLoad.State.Pause: case InGameDownLoad.State.Prepared: InGameDownLoad.Instance.TryDownLoad(true); WindowCenter.Instance.Open<InGameDownLoadWin>(); break; case InGameDownLoad.State.Award: WindowCenter.Instance.Open<InGameDownLoadWin>(); System/Dungeon/DungeonModel.cs
@@ -73,13 +73,11 @@ set { m_DungeonResult = value; } } public int dungeonCoinInspireCount { public int dungeonCoinInspireCount { get; private set; } public int dungeonJadeInspireCount { public int dungeonJadeInspireCount { get; private set; } @@ -1175,7 +1173,7 @@ if (!assetVersion.IsPriorAsset()) { InGameDownLoad.Instance.TryDownLoad(true); InGameDownLoad.Instance.TryDownLoad(InGameDownLoad.Dominant.Whole); return; } } System/MainInterfacePanel/TipPanel.cs
@@ -89,7 +89,14 @@ { if (InGameDownLoad.Instance.CheckDominantDownLoad()) { InGameDownLoad.Instance.TryDownLoad(true); if (Application.internetReachability == NetworkReachability.ReachableViaLocalAreaNetwork) { InGameDownLoad.Instance.TryDownLoad(InGameDownLoad.Dominant.Half); } else { InGameDownLoad.Instance.TryDownLoad(InGameDownLoad.Dominant.Whole); } } }