squidGame/tgx-games-client/assets/module_arean/scripts/DataConfig/Managers/HeroDataManager.ts

54 lines
1.3 KiB
TypeScript

import { Logger } from "../../../../core_tgx/base/utils/Logger";
import { IHeroCfg } from "../../../../module_basic/shared/configs/interface/IHeroCfg";
export default class HeroDataManager
{
private _data: Array<IHeroCfg> | undefined;
private _dataMap: Map<number,IHeroCfg> = new Map<number,IHeroCfg>();
init(data: any): void
{
this._data = data;
let len = this._data.length;
for (let i = 0; i < len; i++) {
let element = this._data[i];
this._dataMap.set(element.id,element);
}
Logger.info(`配置数据(IHeroCfg)加载完毕...`);
console.log(this._data)
}
getData(id: number):IHeroCfg
{
if (this._data)
{
let data = this._data.find(p=>p.id == id);
if(data==null){
console.log("配置数据(IHeroCfg)不存在"+id);
}
return data;
}
return null;
}
getDataForMap(id: number):IHeroCfg
{
if (this._data)
{
return this._dataMap.get(id);
}
console.log("配置数据(IHeroCfg)不存在"+id);
return null;
}
getAllData(){
return this._data;
}
getAllDataMap(){
return this._dataMap;
}
}