| 123456789101112131415161718192021222324252627282930313233343536373839 | using UnityEngine;namespace VEngine{    public sealed class InitializeVersions : Operation    {        public ManifestAsset asset;        public string file { get; private set; }        public override void Start()        {            base.Start();            var settings = Resources.Load<PlayerSettings>(nameof(PlayerSettings));            if (settings == null) settings = ScriptableObject.CreateInstance<PlayerSettings>();            file = nameof(Manifest);            Versions.builtinAssets.AddRange(settings.assets);            Versions.OfflineMode = settings.offlineMode;            asset = ManifestAsset.LoadAsync(file, true);        }        protected override void Update()        {            if (status == OperationStatus.Processing)            {                progress = asset.progress;                if (!asset.isDone) return;                if (string.IsNullOrEmpty(asset.error))                {                    asset.Override();                    asset.Release();                }                Finish(asset.error);            }        }    }}
 |