public override void OnSetup(IStageContext <Empty> ctx) { ItemLoader loader = new ItemLoader(); //Setup Loaders ctx.Loaders.Add("assembly", loader.LoadAssembly); }
public override IEnumerator OnRuntime(IStageContext <IEnumerator> ctx) { ItemLoader loader = new ItemLoader(); //On-Demand Loaders ctx.Loaders.Add("item_data", loader.StartAssetDataLoad); ctx.Loaders.Add("item_first_late", loader.RegisterAssetLoadFirstLate); ctx.Loaders.Add("item_unordered_late", loader.RegisterAssetLoadUnorderedLate); ctx.Loaders.Add("item_last_late", loader.RegisterAssetLoadLastLate); //Immediate Loaders ctx.Loaders.Add("item", loader.StartAssetLoadFirst); ctx.Loaders.Add("item_unordered", loader.StartAssetLoadUnordered); ctx.Loaders.Add("item_last", loader.StartAssetLoadLast); loader.LoadLegacyAssets(coroutineStarter); foreach (DirectLoadMod mod in directLoadMods) { loader.LoadDirectAssets(coroutineStarter, mod.path, mod.guid, mod.dependancies.Split(','), mod.loadFirst.Split(','), mod.loadAny.Split(','), mod.loadLast.Split(',')); } yield break; }