| using System; | 
| using System.Collections.Generic; | 
| using System.IO; | 
| using UnityEngine; | 
|   | 
|   | 
| public class DownLoadAssetTask : LaunchTask | 
| { | 
|     public override float expectTime | 
|     { | 
|         get { return LocalSave.GetFloat("DownLoadAssetTask_ExpectTime", 3f); } | 
|         protected set { LocalSave.SetFloat("DownLoadAssetTask_ExpectTime", value); } | 
|     } | 
|   | 
|     public override void Begin() | 
|     { | 
|         LaunchInHot.m_CurrentStage = LaunchStage.DownLoad; | 
|         outTime = 9999f; | 
|         duration = Mathf.Max(0.5f, expectTime); | 
|         if (VersionUtility.Instance.NeedDownAsset()) | 
|         { | 
|             if (!AssetVersionUtility.priorAssetDownLoadDone) | 
|             { | 
|                 AssetVersionUtility.BeginDownLoadTask(true); | 
|                 done = false; | 
|                 progress = 0f; | 
|             } | 
|             else | 
|             { | 
|                 done = true; | 
|             } | 
|   | 
|         } | 
|         else | 
|         { | 
|             done = true; | 
|         } | 
|     } | 
|   | 
|     public override void End() | 
|     { | 
|         expectTime = timer; | 
|         Debug.LogFormat("{0}执行时长:{1};", this.GetType().Name, timer); | 
|         if (!AssetVersionUtility.unPriorAssetDownLoadDone) | 
|         { | 
|             AssetVersionUtility.BeginDownLoadTask(false); | 
|         } | 
|     } | 
|   | 
|     public override void Update() | 
|     { | 
|         if (done) | 
|         { | 
|             return; | 
|         } | 
|   | 
|         timer += Time.deltaTime; | 
|         if (!AssetVersionUtility.priorAssetDownLoadDone) | 
|         { | 
|             done = false; | 
|             progress = 0f; | 
|         } | 
|         else | 
|         { | 
|             done = true; | 
|         } | 
|   | 
|         ExceptionReport(); | 
|     } | 
|   | 
| } |