From fdca4d3cad854b0c130c4212b906c21b2ee26f5f Mon Sep 17 00:00:00 2001 From: liangtongchuan Date: Mon, 30 Nov 2020 15:14:26 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=B3=A8=E9=87=8A=EF=BC=8C?= =?UTF-8?q?=E5=88=A0=E9=99=A4=E8=80=81=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../battle/handler/comBattleHandler.ts | 170 +++++++----------- 1 file changed, 68 insertions(+), 102 deletions(-) diff --git a/game-server/app/servers/battle/handler/comBattleHandler.ts b/game-server/app/servers/battle/handler/comBattleHandler.ts index 21d792078..3684c95f0 100644 --- a/game-server/app/servers/battle/handler/comBattleHandler.ts +++ b/game-server/app/servers/battle/handler/comBattleHandler.ts @@ -1,3 +1,9 @@ +/* + * @Author: 梁桐川 + * @Date: 2020-11-30 15:05:48 + * @Last Modified by: 梁桐川 + * @Last Modified time: 2020-11-30 15:09:51 + */ import { COM_BATTLE_ROBOT_CE_RATIO, COM_BATTLE_ROBOT_ID_NAME, COM_BATTLE_ASSIST_TIME, COM_BATTLE_ROBOT_ROUND_LMT, COM_BATTLE_ROBOT_HURT_RATIO, COM_BATTLE_ROBOT_HURT_CH_RATIO, COM_TEAM_STATUS } from './../../../consts/consts'; import { IT_TYPE, GOLD_COST_RATIO, CURRENCY_BY_TYPE, CURRENCY_TYPE } from '../../../consts/consts'; import { getGoodById, getBossHpByBlueprtId, getComBtlSetByQuality, getBlueprtComposeByQuality, getBluePrtByQuality } from '../../../pubUtils/gamedata'; @@ -66,9 +72,11 @@ export class ComBattleHandler { private teamMap: Map = new Map(); /** - * 队长创建队伍 - * @param msg 藏宝图Id,是否公开,战力限制 - * @param session + * @description 队长创建队伍 + * @param {{blueprtId: number, pub: boolean, ceLimit: number}} msg 藏宝图Id,是否公开,战力限制 + * @param {BackendSession} session + * @returns + * @memberof ComBattleHandler */ async createTeam(msg: {blueprtId: number, pub: boolean, ceLimit: number}, session: BackendSession) { let roleId = session.get('roleId'); @@ -148,9 +156,11 @@ export class ComBattleHandler { } /** - * 匹配队伍 - * @param msg 要匹配的品质数组列表 - * @param session + * @description 匹配队伍 + * @param {{qualityArr: [number]}} msg 要匹配的品质数组列表 + * @param {BackendSession} session + * @returns + * @memberof ComBattleHandler */ async searchTeam(msg: {qualityArr: [number]}, session: BackendSession) { let roleId = session.get('roleId'); @@ -207,9 +217,11 @@ export class ComBattleHandler { } /** - * 当匹配 searchTeam 匹配到其它队伍时,需要调用此接口加入 - * @param msg 要加入的队伍编号,是否情谊助战 - * @param session + * @description 当匹配 searchTeam 匹配到其它队伍时,需要调用此接口加入 + * @param {{teamCode: string, isFrd: boolean}} msg 要加入的队伍编号,是否情谊助战 + * @param {BackendSession} session + * @returns + * @memberof ComBattleHandler */ async joinTeam(msg: {teamCode: string, isFrd: boolean}, session: BackendSession) { let roleId = session.get('roleId'); @@ -270,9 +282,11 @@ export class ComBattleHandler { } /** - * 获取今日已助战次数 - * @param msg - * @param session + * @description 获取今日已助战次数 + * @param {{}} msg + * @param {BackendSession} session + * @returns + * @memberof ComBattleHandler */ async getAssistCnt(msg: {}, session: BackendSession) { let roleId = session.get('roleId'); @@ -287,9 +301,11 @@ export class ComBattleHandler { } /** - * 队伍准备-deprecated - * @param msg - * @param session + * @description 队伍准备-deprecate + * @param {{teamCode: string, heroes: Array}} msg + * @param {BackendSession} session + * @returns + * @memberof ComBattleHandler */ async teammateReady(msg: {teamCode: string, heroes: Array}, session: BackendSession) { let roleId = session.get('roleId'); @@ -313,9 +329,11 @@ export class ComBattleHandler { } /** - * 出兵时记录玩家阵容 - * @param msg 队伍编号;阵容 - * @param session + * @description 出兵时记录玩家阵容 + * @param {{teamCode: string, heroes: Array}} msg 队伍编号;阵容 + * @param {BackendSession} session + * @returns + * @memberof ComBattleHandler */ async setupHeroes(msg: {teamCode: string, heroes: Array}, session: BackendSession) { let roleId = session.get('roleId'); @@ -339,9 +357,11 @@ export class ComBattleHandler { } /** - * 从队伍中移除玩家 - * @param msg 队伍编号;要移除的玩家 Id - * @param session + * @description 从队伍中移除玩家 + * @param {{teamCode: string, roleIdToRm: string}} msg 队伍编号;要移除的玩家 Id + * @param {BackendSession} session + * @returns + * @memberof ComBattleHandler */ async rmTeammate(msg: {teamCode: string, roleIdToRm: string}, session: BackendSession) { let roleId = session.get('roleId'); @@ -377,9 +397,11 @@ export class ComBattleHandler { } /** - * 队长解散队伍 - * @param msg 要解散的队伍编号 - * @param session + * @description 队长解散队伍 + * @param {{teamCode: string}} msg 要解散的队伍编号 + * @param {BackendSession} session + * @returns + * @memberof ComBattleHandler */ async dismiss(msg: {teamCode: string}, session: BackendSession) { let roleId = session.get('roleId'); @@ -403,9 +425,11 @@ export class ComBattleHandler { } /** - * 开始战斗,队长操作或机器人队伍操作 - * @param msg 队伍编号 - * @param session + * @description 开始战斗,队长操作或机器人队伍操作 + * @param {{teamCode: string}} msg 队伍编号 + * @param {BackendSession} session + * @returns + * @memberof ComBattleHandler */ async startBattle(msg: {teamCode: string}, session: BackendSession) { let roleId = session.get('roleId'); @@ -427,9 +451,11 @@ export class ComBattleHandler { } /** - * 战场中的状态同步,推送信息包括玩家总伤害、玩家武将阵亡情况、boss 血量 - * @param msg 队伍编号;武将伤害;boss 承伤;武将阵亡;当前回合 - * @param session + * @description 战场中的状态同步,战斗结果判定 + * @param {{teamCode: string, heroes: Array<{hid: number, hurtHp: number}>, bossHurts: Array<{dataId: number, hurtHp: number}>, killed: Array, curRnd: number}} msg 队伍编号;武将伤害;boss 承伤;武将阵亡;当前回合 + * @param {BackendSession} session + * @returns + * @memberof ComBattleHandler */ async action(msg: {teamCode: string, heroes: Array<{hid: number, hurtHp: number}>, bossHurts: Array<{dataId: number, hurtHp: number}>, killed: Array, curRnd: number}, session: BackendSession) { let roleId = session.get('roleId'); @@ -584,9 +610,11 @@ export class ComBattleHandler { } /** - * 获取自己一段时间内的寻宝记录 - * @param msg - * @param session + * @description 获取自己一段时间内的寻宝记录 + * @param {{}} msg + * @param {BackendSession} session + * @returns + * @memberof ComBattleHandler */ async getTeamRec(msg: {}, session: BackendSession) { let roleId = session.get('roleId'); @@ -596,75 +624,13 @@ export class ComBattleHandler { return resResult(STATUS.SUCCESS, {teamInfos: teams}); } - // async startBattle(msg: {}, session: BackendSession) { - // let roleId = session.get('roleId'); - // let roleName = session.get('roleName'); - // let sid = session.get('sid'); - // let teamCode = session.get('teamCode'); - // console.log('role in startBattle: ', roleId, roleName, teamCode); - - // let channelService = this.app.get('channelService'); - // let channel = channelService.getChannel(teamCode, true); - // let users = channel.getMembers(); - // if (users.indexOf(roleId) === -1) { - // channel.add(roleId, sid); - // } - - // users = channel.getMembers(); - // channel.pushMessage('onAdd', {users}); - // let tsid = channel.getMember(roleId)['sid']; - // channelService.pushMessageByUids('bossCurHp', {data: 'datadata'}, [{ - // uid: roleId, - // sid: tsid - // }]); - - // return resResult(STATUS.SUCCESS, { users, teamCode }); - // } - - // /** - // * Send messages to users - // * - // * @param {Object} msg message from client - // * @param {Object} session - // * - // */ - // async enterBattle(msg: {battleId: string , target: string}, session: BackendSession) { - // let roleId = session.get('roleId'); - // let roleName = session.get('roleName'); - // let sid = session.get('sid'); - // console.log('role in enterBattle: ', roleId, roleName, msg, this.app.rpc); - - // let channelService = this.app.get('channelService'); - // let channel = channelService.getChannel(msg.battleId, false); - // let users = channel.getMembers(); - // if (users.indexOf(roleId) === -1) { - // channel.add(roleId, sid); - // } else { - // return resResult(STATUS.COM_BATTLE_DUP_ENTER); - // } - // channel.pushMessage('onAddBattle', {users}); - - // return resResult(STATUS.SUCCESS, { users }); - // } - - // async hurtHp(msg: {battleId: string, bossHurt: number, actorHurt: [{ actorId: number, actorHurt: number}]}, session: BackendSession) { - // let roleId = session.get('roleId'); - // let roleName = session.get('roleName'); - // console.log('role in enterBattle: ', roleId, roleName, msg); - - // let channelService = this.app.get('channelService'); - // let channel = channelService.getChannel(msg.battleId, false); - - // this.bossCurHp -= msg.bossHurt; - // if (this.bossCurHp < 0) { - // this.bossCurHp = 0; - // channel.pushMessage('bossCurHp', {data: 'boss 挂啦!!!!!'}, undefined); - // } - // channel.pushMessage('bossCurHp', {bossCurHp: this.bossCurHp}, undefined); - - // return resResult(STATUS.SUCCESS, { bossCurHp: this.bossCurHp}); - // } - + /** + * @description 藏宝图合成 + * @param {{original: Array<{id: number, count: number}>}} msg + * @param {BackendSession} session + * @returns + * @memberof ComBattleHandler + */ async composeBlueprt(msg: {original: Array<{id: number, count: number}>}, session: BackendSession) { const roleId = session.get('roleId'); const roleName = session.get('roleName');