diff --git a/src/message/SkillInfo.ts b/src/message/SkillInfo.ts index 4f2ae08..a860df4 100644 --- a/src/message/SkillInfo.ts +++ b/src/message/SkillInfo.ts @@ -49,9 +49,11 @@ export class SkillInfoMsg implements IMsg { data?: any; errcode: number; errmsg: string; + type: string = ''; constructor(data?: SkillInfoData) { this.errcode = 0; this.data = data; + this.type = 'cast_skill_s2c'; } } diff --git a/src/rooms/logic/Handler/BattleHandler.ts b/src/rooms/logic/Handler/BattleHandler.ts index 672c012..e79d19c 100644 --- a/src/rooms/logic/Handler/BattleHandler.ts +++ b/src/rooms/logic/Handler/BattleHandler.ts @@ -291,6 +291,10 @@ export class BattleHandler { public onSkillResult(skillres: SkillTarget[]){ //todo: build skillrest json -> client - + let lst: SkillInfoMsg[] = []; + skillres.forEach((item: SkillTarget)=>{ + lst.push(item.exportData()); + }); + this._room.bMsgQueue(lst); } } diff --git a/src/rooms/logic/skill/SkillParam.ts b/src/rooms/logic/skill/SkillParam.ts index f41280d..2a58336 100644 --- a/src/rooms/logic/skill/SkillParam.ts +++ b/src/rooms/logic/skill/SkillParam.ts @@ -75,8 +75,10 @@ export class SkillTarget{ this.res.push(new SkillResult(efftype, 0, false, err)); }; - public exportData(): SkillInfoData{ - let obj = new SkillInfoData(); + public exportData(): SkillInfoMsg{ + let msg = new SkillInfoMsg(); + msg.data = new SkillInfoData(); + let obj = msg.data; obj.player = this.srcplayer.getId(), obj.pos = this.srcpet? this.srcpet._idx: 0; obj.datas = []; @@ -84,8 +86,9 @@ export class SkillTarget{ let ed = new SKillEffectData(); ed.effect_id = item.effect_type; ed.val = item.bsuccess? item.effect_res: item.err; + ed.result = item.bsuccess? 0: -1; obj.datas.push(ed); - }) - return obj; + }); + return msg; } }; \ No newline at end of file