From 59e07eac0cba1b81bbb1d54adc209be402c6ddea Mon Sep 17 00:00:00 2001 From: liangtongchuan Date: Mon, 19 Oct 2020 15:38:35 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=A9=E6=A2=AF=E8=BF=94=E5=9B=9E=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E4=B8=AD=E5=A2=9E=E5=8A=A0=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/servers/battle/handler/towerBattleHandler.ts | 6 +++--- game-server/app/services/battleService.ts | 3 ++- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/game-server/app/servers/battle/handler/towerBattleHandler.ts b/game-server/app/servers/battle/handler/towerBattleHandler.ts index 393991bf2..c08147d7e 100644 --- a/game-server/app/servers/battle/handler/towerBattleHandler.ts +++ b/game-server/app/servers/battle/handler/towerBattleHandler.ts @@ -68,12 +68,12 @@ export class TowerBattleHandler { async checkHangUpRewards(msg: {}, session: BackendSession) { let roleId = session.get('roleId'); - const { multi, timeReward } = await calcuHangUpReward(roleId); + const { multi, timeReward, startTime } = await calcuHangUpReward(roleId); if (multi == 0) { return resResult(STATUS.TOWER_HANG_UP_NOT_VALID); } const rewards = decodeIdCntArrayStr(timeReward, multi); - return resResult(STATUS.SUCCESS, {rewards: Array.from(rewards, item => ({[item[0]]: item[1]}))}); + return resResult(STATUS.SUCCESS, {startTime, rewards: Array.from(rewards, item => ({[item[0]]: item[1]}))}); } async recHangUpRewards(msg: {}, session: BackendSession) { @@ -85,7 +85,7 @@ export class TowerBattleHandler { } const goods = await handleFixedReward(roleId, roleName, timeReward, multi); const newRec = await HangUpRecordModel.updateRec(roleId, roleName, endLv, endTime); - return resResult(STATUS.SUCCESS, { goods, hangUpRec: newRec }); + return resResult(STATUS.SUCCESS, { endTime, goods, hangUpRec: newRec }); } async hangUpSpeedUp(msg: {speedUpCnt: number}, session: BackendSession) { diff --git a/game-server/app/services/battleService.ts b/game-server/app/services/battleService.ts index afe121f52..1a4efda79 100644 --- a/game-server/app/services/battleService.ts +++ b/game-server/app/services/battleService.ts @@ -102,7 +102,7 @@ async function startHangUp(roleId: string, roleName: string) { export async function calcuHangUpReward(roleId: string, speedUp = false, speedUpCnt = 1, curTime = new Date()) { let { towerLv, hangUpSpdUpCnt, lastSpdUpTime } = await RoleModel.findByRoleId(roleId); - let { startLv, startTime} = await HangUpRecordModel.getCurRec(roleId); + let { startTime} = await HangUpRecordModel.getCurRec(roleId); let towerInfo = getTowerDataByLv(towerLv - 1); // towerLv 是当前层,奖励计算按照已经通过的层,即上一层 let multi = 1; // 结算奖励的倍数,受最大时间限制 let multiReal = 1; // 距开始挂机实际过去的时间单位 @@ -120,6 +120,7 @@ export async function calcuHangUpReward(roleId: string, speedUp = false, speedUp } return { endLv: towerLv - 1, + startTime, endTime: new Date(startTime.getTime() + multiReal * HANG_UP_CONSTS.UNIT_TIME), timeReward: towerInfo.timeReward, multi