| 123456789101112131415161718192021222324252627282930 |
- import { _decorator, Component, CCString, JsonAsset } from 'cc';
- import { DataSystem } from '../core/data/DataSystem';
- import { ResourceLoader } from '../core/resourceManager/ResourceLoader';
- import { ConfigData } from '../data/ConfigData';
- const { ccclass, property, requireComponent } = _decorator;
- /**
- * 配置组件
- * @description 负责加载游戏配置
- * @author 王锡铜、袁浩
- */
- @ccclass('Config')
- @requireComponent(ResourceLoader)
- export class Config extends Component {
- @property({ tooltip: "需要加载的配置文件根目录路径" })
- public rootPath: string = "configs/";
- @property({ type: [CCString], tooltip: "需要加载的配置文件相对于root的路径" })
- public configPaths: string[] = [];
- public async start() {
- let configData = DataSystem.getData(ConfigData);
- for (let i = 0; i < this.configPaths.length; i++) {
- let result = await (await this.getComponent(ResourceLoader).load<JsonAsset>(this.rootPath + this.configPaths[i], JsonAsset)).json;
- configData.set(this.configPaths[i], result);
- }
- configData.loaded = true;
- }
- }
|