import GameConfig from "./GameConfig"; import ReadCsv from "./ReadCsv"; const {ccclass, property} = cc._decorator; @ccclass export default class gameData extends cc.Component { static _instance: gameData = null!; public static instance() { if (!this._instance) { this._instance = new gameData(); } return this._instance; } /**子弹数据 */ public bullet_Config = []; /**综合数据 */ public game_Const = []; /**关卡数据 */ public level_Config = []; /** 怪物数据*/ public monster_Config = []; /**塔数据 */ public tower_Config = []; /**每关怪物出场顺序 */ public timeLevel_Config = []; /**技能数据 */ public skill_Config = []; /**ui界面技能升级数据 */ public uiSkill_Config = []; /**音乐音效数据 */ public audio_Config = []; private readcount = 0; public readGameData(callback) { this.readcount = 0; let self = this; //子弹数据 ReadCsv.instance().CSVToArray("data/bullet_Config",function (data) { self.bullet_Config = data; // console.log("self.bullet_Config:"+data); self.readOver(callback); }); //综合数据 ReadCsv.instance().CSVToArray("data/game_Const",function (data) { self.game_Const = data; // console.log("self.game_Const:"+data); self.readOver(callback); }); //关卡数据 ReadCsv.instance().CSVToArray("data/level_Config",function (data) { self.level_Config = data; // console.log("self.level_Config:"+data); self.readOver(callback); }); //怪物数据 ReadCsv.instance().CSVToArray("data/monster_Config",function (data) { self.monster_Config = data; // console.log("self.monster_Config:"+data); self.readOver(callback); }); //塔数据 ReadCsv.instance().CSVToArray("data/tower_Config",function (data) { self.tower_Config = data; // console.log("self.tower_Config:"+data); self.readOver(callback); }); //技能数据 ReadCsv.instance().CSVToArray("data/skill_Config",function (data) { self.skill_Config = data; // console.log("self.tower_Config:"+data); self.readOver(callback); }); //ui界面技能升级数据 ReadCsv.instance().CSVToArray("data/talent_Config",function (data) { self.uiSkill_Config = data; // console.log("self.tower_Config:"+data); self.readOver(callback); }); //音乐数据 ReadCsv.instance().CSVToArray("data/audio_Config",function (data) { self.audio_Config = data; // console.log("self.tower_Config:"+data); self.readOver(callback); }); } private readOver(callback) { this.readcount++; if (this.readcount == 8) { if (callback) { callback(); } } } /**读取每关怪物出场数据 */ public readLevel(level:number,callback) { let self = this; ReadCsv.instance().CSVToArray("data/level_"+level,function (data) { self.timeLevel_Config = data; if (callback){ callback(); } }); } }