From d2ad64cd5f0715db9d83ab2a449569cd4288dc28 Mon Sep 17 00:00:00 2001 From: yuexin Date: Wed, 9 Dec 2020 17:34:10 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E4=BF=AE=E8=AE=A2=E5=A4=9A=E9=80=89?= =?UTF-8?q?=E9=9A=8F=E4=BB=8E=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/rooms/logic/Handler/BattleHandler.ts | 6 +++--- src/rooms/logic/Handler/PlayerHandler.ts | 11 ++++++----- src/rooms/logic/skill/SkillParam.ts | 2 -- 3 files changed, 9 insertions(+), 10 deletions(-) diff --git a/src/rooms/logic/Handler/BattleHandler.ts b/src/rooms/logic/Handler/BattleHandler.ts index 58ed024..6b17cd3 100644 --- a/src/rooms/logic/Handler/BattleHandler.ts +++ b/src/rooms/logic/Handler/BattleHandler.ts @@ -119,17 +119,17 @@ export class BattleHandler { }else{ if(skill.isAllTarget()){ players.forEach((item: PlayerHandler)=>{ - item.exportAllPets(skill._data.targetid, param, null, lst); + item.exportAllPets(skill, param, null, lst); }); }else{ if(param.srcpet){ players.forEach((item: PlayerHandler)=>{ - item.exportAllPets(skill._data.targetid, param, param.srcpet, lst); + item.exportAllPets(skill, param, param.srcpet, lst); }); }else{ players.forEach((item: PlayerHandler)=>{ if(item != param.srcplayer){ - item.exportAllPets(skill._data.targetid, param, param.srcpet, lst); + item.exportAllPets(skill, param, param.srcpet, lst); } }); } diff --git a/src/rooms/logic/Handler/PlayerHandler.ts b/src/rooms/logic/Handler/PlayerHandler.ts index 0043331..fa39b33 100644 --- a/src/rooms/logic/Handler/PlayerHandler.ts +++ b/src/rooms/logic/Handler/PlayerHandler.ts @@ -92,27 +92,28 @@ export class PlayerHandler { }) }; - public exportAllPets(ct: GameUnitType, param: SkillParam, expet: PetHandler, dst: SkillTarget[]): SkillTarget[]{ + public exportAllPets(skill: Skill, param: SkillParam, expet: PetHandler, dst: SkillTarget[]): SkillTarget[]{ if(!dst){ return null; } + let ct = skill._data.targetid; switch(ct){ case GameUnitType.BATTLEUNIT: let lst = this._pets.reverse(); lst.forEach(element => { if(expet != element){ - dst.push(new SkillTarget(param.skill, param.srcplayer, param.srcpet, element, GameUnitType.PET)); + dst.push(new SkillTarget(skill, param.srcplayer, param.srcpet, element, GameUnitType.PET)); } }); - (expet != this._self) && dst.push(new SkillTarget(param.skill, param.srcplayer, param.srcpet, this._self, GameUnitType.PET)); + (expet != this._self) && dst.push(new SkillTarget(skill, param.srcplayer, param.srcpet, this._self, GameUnitType.PET)); break; case GameUnitType.HERO: - (expet != this._self) && dst.push(new SkillTarget(param.skill, param.srcplayer, param.srcpet, this._self, GameUnitType.PET)); + (expet != this._self) && dst.push(new SkillTarget(skill, param.srcplayer, param.srcpet, this._self, GameUnitType.PET)); break; case GameUnitType.PET: lst.forEach(element => { if(expet != element){ - dst.push(new SkillTarget(param.skill, param.srcplayer, param.srcpet, element, GameUnitType.PET)); + dst.push(new SkillTarget(skill, param.srcplayer, param.srcpet, element, GameUnitType.PET)); } }); break; diff --git a/src/rooms/logic/skill/SkillParam.ts b/src/rooms/logic/skill/SkillParam.ts index 8a4b132..17ed188 100644 --- a/src/rooms/logic/skill/SkillParam.ts +++ b/src/rooms/logic/skill/SkillParam.ts @@ -14,8 +14,6 @@ export class SkillParam{ srcpet: PetHandler; - skill: Skill; - constructor(cardid: number, cardpoint: number, effcnt: number, srcplayer: PlayerHandler, srcpet: PetHandler, dstplayer: PlayerHandler, dstpet: PetHandler){ this.cardid = cardid; From 8fbda9010b2e9a16572e3a50fb97f892d512a794 Mon Sep 17 00:00:00 2001 From: yuexin Date: Wed, 9 Dec 2020 17:40:28 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E4=BF=AE=E8=AE=A2=E6=8A=80=E8=83=BDid?= =?UTF-8?q?=E4=B8=BA=E7=A9=BA=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/rooms/logic/Handler/PlayerHandler.ts | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) 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++){