import BaseInitLoad from "./BaseInitLoad"; import { EBundleName } from "../const/GameEnum"; import ConfigT, { IBaseConfigContainer } from "../Mgr_Config/Base/ConfigT"; import { BuildConfigTs } from "../Mgr_Config/_config/BuildConfigTs"; import { EResUrls } from "../ResUrl/EResUrls"; import ResLoadItem from "../ResUrl/ResLoadItem"; import { JsonAsset, Prefab } from "cc"; /** * 游戏初始化加载 * 加载配置表 */ export default class GameInitLoad extends BaseInitLoad { /**准备加载得预制体 */ LoadUIPrefabs:string[]=[ `UICanvas`, ]; /** * 初始化 */ protected _init() { this.subpackages = [ { name: EBundleName.General, root: EBundleName.General, ifLoad: true }, ]; } /** * 获取加载项列表 */ protected _getLoadItems(): ResLoadItem[] { let _loadItems: ResLoadItem[] = []; this.immitPrefabsLoadItems(_loadItems); // this.immitConfigLoadItems(_loadItems); return _loadItems; } //注入配置表加载项HUnter private immitPrefabsLoadItems(_loadItems: ResLoadItem[]) { for (let i = 0; i < this.LoadUIPrefabs.length; i++) { const element = this.LoadUIPrefabs[i]; _loadItems.push(new ResLoadItem(EResUrls.UIPrefabs(element), EBundleName.Presets, Prefab, "prefabs", () => { })); } } //注入配置表加载项HUnter private immitConfigLoadItems(_loadItems: ResLoadItem[]) { //配置表 let _configRes: any[] = BuildConfigTs.getAllConfig().map((item) => { let Configname = (item as IBaseConfigContainer).fileName.replace(".json", ""); return EResUrls.ConfigJsonURL(Configname); }); _loadItems.push(new ResLoadItem([..._configRes], EBundleName.Presets, JsonAsset, 'config', (() => { //初始化全部配置表内容 ConfigT.BuildConfigs(BuildConfigTs.getAllConfig()); ConsoleEx.Com('所有配置表内容:', BuildConfigTs.getAllConfig()); }).bind(this), ((i) => { //ConsoleEx.Log('配置表加载进度', i); }).bind(this))); } /** * 加载完成 */ protected _loadCom() { } }