private GameStructure() { GameCollection.Parameters pars = new GameCollection.Parameters() { RequestAssemblyCallback = OnRequestAssembly, RequestResourceCallback = OnRequestResource, }; FileCollection = new GameCollection(pars); }
private void Load(List <string> pathes, LayoutInfo layinfo) { if (CheckPC(pathes)) { } else if (CheckLinux(pathes)) { } else if (CheckMac(pathes)) { } else if (CheckAndroid(pathes)) { } else if (CheckiOS(pathes)) { } else if (CheckSwitch(pathes)) { } else if (CheckWebGL(pathes)) { } else if (CheckWebPlayer(pathes)) { } CheckMixed(pathes); using (GameStructureProcessor processor = new GameStructureProcessor()) { if (PlatformStructure != null) { ProcessPlatformStructure(processor, PlatformStructure); } if (MixedStructure != null) { ProcessPlatformStructure(processor, MixedStructure); } processor.AddDependencySchemes(RequestDependency); if (processor.IsValid) { layinfo = layinfo ?? processor.GetLayoutInfo(); AssetLayout layout = new AssetLayout(layinfo); GameCollection.Parameters pars = new GameCollection.Parameters(layout); pars.ScriptBackend = GetScriptingBackend(); pars.RequestAssemblyCallback = OnRequestAssembly; pars.RequestResourceCallback = OnRequestResource; FileCollection = new GameCollection(pars); processor.ProcessSchemes(FileCollection); } } }