diff --git a/src/rooms/logic/Handler/PlayerHandler.ts b/src/rooms/logic/Handler/PlayerHandler.ts index fa39b33..60e5a6e 100644 --- a/src/rooms/logic/Handler/PlayerHandler.ts +++ b/src/rooms/logic/Handler/PlayerHandler.ts @@ -144,17 +144,18 @@ export class PlayerHandler { pet.loadData(cfg.stageunit_id, obj, [cfg.quoteskill1id, cfg.quoteskill2id, cfg.quoteskill3id, cfg.quoteskill4id]); }else if(cfg.type_id == EffectCardType.MAGIC){ - this.useSkills([cfg.quoteskill1id, cfg.quoteskill2id, cfg.quoteskill3id, cfg.quoteskill4id], obj); + let lst = []; + cfg.quoteskill1id && lst.push(cfg.quoteskill1id); + cfg.quoteskill2id && lst.push(cfg.quoteskill2id); + cfg.quoteskill3id && lst.push(cfg.quoteskill3id); + cfg.quoteskill4id && lst.push(cfg.quoteskill4id); + this.useSkills(lst, obj); } }; public useSkills(skills: number[], obj: SkillParam) { - if(!skills){ - return; - } - - skills.forEach((item: number)=>{ + skills && skills.forEach((item: number)=>{ this.useSkill(item, 1, obj); }); }; @@ -173,6 +174,9 @@ export class PlayerHandler { public handleSkill(skillid: number, count: number, param: SkillParam, pet: PetHandler):SkillTarget[]{ let cfg = CfgMan.findSkillCfg(skillid); + if(!cfg){ + return null; + } let lst: Skill[] = []; if(cfg.skill_typeid == SkillType.MAGIC){ for(let i = 0; i < count; i++){