import { SkillConf } from "../conf/SkillConf"; import { BattleDataPool } from "./BattleDataPool"; import { BattleUtil } from "./BattleUtil"; import { DataBase } from "./DataBase"; //效果类型 export enum EffectType{ //加buff AddBuff, //加血 AddHp, //减血 SubHp, } //技能数据组装类 export class SkillData extends DataBase{ //效果类型 effectType:EffectType; buffID:number; //目标数量 ePos:number; //参数 eParam:number; eParam2:number; eParam3:number; eParam4:number; //来源 srcDataBaseID:number; srcDataBase:DataBase; //暂无可变参数 init(typeID:number,srcDataBase:DataBase){ super._init(); this.typeID = typeID; let skillConf = SkillConf.data[typeID] if (skillConf) { let effectObjArr = skillConf.EffectObjArr; if (effectObjArr) { let effectObj = effectObjArr[0]; if (effectObj) { this.effectType = effectObj.effectType; this.buffID = effectObj.buffID; this.ePos = effectObj.ePos; this.eParam = effectObj.eParam; this.eParam2 = effectObj.eParam2; this.eParam3 = effectObj.eParam3; this.eParam4 = effectObj.eParam4; this.srcDataBaseID = srcDataBase.ID; this.srcDataBase = srcDataBase; return this; } } } } clear(){ this.effectType = EffectType.AddBuff; this.buffID = BattleUtil.TypeID_Init; this.ePos = 0; this.eParam = 0; this.eParam2 = 0; this.eParam3 = 0; this.eParam4 = 0; super.clear(); } } export let SkillDataPool = new BattleDataPool(SkillData,100)