125 lines
4.2 KiB
JavaScript
125 lines
4.2 KiB
JavaScript
System.register(["__unresolved_0", "cc", "__unresolved_1", "__unresolved_2"], function (_export, _context) {
|
|
"use strict";
|
|
|
|
var _reporterNs, _cclegacy, __checkObsolete__, __checkObsoleteInNamespace__, _decorator, js, resources, SingletonBase, setClassName, _dec, _class, _crd, ccclass, property, DataMgr;
|
|
|
|
function _reportPossibleCrUseOfSingletonBase(extras) {
|
|
_reporterNs.report("SingletonBase", "../SingletonBase", _context.meta, extras);
|
|
}
|
|
|
|
function _reportPossibleCrUseOfsetClassName(extras) {
|
|
_reporterNs.report("setClassName", "../../data/ConfigData", _context.meta, extras);
|
|
}
|
|
|
|
return {
|
|
setters: [function (_unresolved_) {
|
|
_reporterNs = _unresolved_;
|
|
}, function (_cc) {
|
|
_cclegacy = _cc.cclegacy;
|
|
__checkObsolete__ = _cc.__checkObsolete__;
|
|
__checkObsoleteInNamespace__ = _cc.__checkObsoleteInNamespace__;
|
|
_decorator = _cc._decorator;
|
|
js = _cc.js;
|
|
resources = _cc.resources;
|
|
}, function (_unresolved_2) {
|
|
SingletonBase = _unresolved_2.SingletonBase;
|
|
}, function (_unresolved_3) {
|
|
setClassName = _unresolved_3.setClassName;
|
|
}],
|
|
execute: function () {
|
|
_crd = true;
|
|
|
|
_cclegacy._RF.push({}, "70a16xMXkFGCoewS0CQ22w8", "DataMgr", undefined);
|
|
|
|
__checkObsolete__(['_decorator', 'Component', 'js', 'JsonAsset', 'Node', 'resources', 'TypeScript']);
|
|
|
|
({
|
|
ccclass,
|
|
property
|
|
} = _decorator);
|
|
|
|
_export("DataMgr", DataMgr = (_dec = ccclass('DataMgr'), _dec(_class = class DataMgr extends (_crd && SingletonBase === void 0 ? (_reportPossibleCrUseOfSingletonBase({
|
|
error: Error()
|
|
}), SingletonBase) : SingletonBase) {
|
|
constructor() {
|
|
super(...arguments);
|
|
this.datas = new Map();
|
|
}
|
|
|
|
start() {
|
|
(_crd && setClassName === void 0 ? (_reportPossibleCrUseOfsetClassName({
|
|
error: Error()
|
|
}), setClassName) : setClassName)();
|
|
this.initAllConfig();
|
|
}
|
|
|
|
createInstance(className) {
|
|
var Constructor = window.ConfigData[className];
|
|
|
|
if (typeof Constructor === 'function') {
|
|
return new Constructor();
|
|
} else {
|
|
console.error("Class " + className + " is not a constructor");
|
|
return null;
|
|
}
|
|
}
|
|
|
|
initAllConfig() {
|
|
resources.loadDir("data", null, null, (err, assets) => {
|
|
for (var i = 0; i < assets.length; i++) {
|
|
var jsonAsset = assets[i];
|
|
var className = jsonAsset.name;
|
|
var array = new Array(); // this.datas.set((window as any)[className].name, array)
|
|
|
|
console.log("是否有类", window.ConfigData, className, window.ConfigData[className]);
|
|
this.datas.set(js.getClassName(window.ConfigData[className]), array);
|
|
console.log("设置data", className, js.getClassName(window.ConfigData[className]));
|
|
|
|
for (var j = 0; j < jsonAsset.json.length; j++) {
|
|
var myClassInstance = new window.ConfigData[className]();
|
|
var targetData = jsonAsset.json[j];
|
|
this.initDataItem(myClassInstance, targetData);
|
|
array.push(myClassInstance);
|
|
}
|
|
}
|
|
});
|
|
}
|
|
|
|
GetDataById(dataClass, id) {
|
|
var name = js.getClassName(dataClass);
|
|
console.log("GetDataById", name);
|
|
var datas = this.datas.get(name);
|
|
|
|
for (var i = 0; i < datas.length; i++) {
|
|
if (datas[i].id == id) {
|
|
return datas[i];
|
|
}
|
|
}
|
|
}
|
|
|
|
initDataItem(obj, record) {
|
|
for (var key in record) {
|
|
if (record.hasOwnProperty(key) && obj.hasOwnProperty(key)) {
|
|
obj[key] = record[key];
|
|
}
|
|
}
|
|
}
|
|
|
|
GetDatas(dataClass) {
|
|
var name = js.getClassName(dataClass);
|
|
console.log(this.datas.get(name));
|
|
console.log(dataClass);
|
|
console.log(name);
|
|
console.log(this.datas);
|
|
return this.datas.get(name);
|
|
}
|
|
|
|
}) || _class));
|
|
|
|
_cclegacy._RF.pop();
|
|
|
|
_crd = false;
|
|
}
|
|
};
|
|
});
|
|
//# sourceMappingURL=74492fc9d685cee57174a4cb2d83681be8c897ae.js.map
|