From 7fe4872418731a6ba6019bc25b8cc2ec67893c42 Mon Sep 17 00:00:00 2001 From: luying Date: Fri, 19 Aug 2022 15:11:02 +0800 Subject: [PATCH] =?UTF-8?q?=E9=95=87=E5=BF=B5=E5=A1=94=EF=BC=9A=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=E5=8D=87=E7=BA=A7=E6=9D=A1=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- game-server/app/services/battleService.ts | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/game-server/app/services/battleService.ts b/game-server/app/services/battleService.ts index 3fbeeac2d..7e0c228b8 100644 --- a/game-server/app/services/battleService.ts +++ b/game-server/app/services/battleService.ts @@ -221,12 +221,17 @@ export async function towerBattleEnd(sid: string, roleId: string, serverId: numb } } - let inc = 1; - warStatus.forEach(st => { - if (st.warId !== battleId && st.status === false) { - inc = 0; - } - }) + let inc = 0; + let dicTower = gameData.tower.get(towerLv); + console.log('towerBattleEnd', towerLv, dicTower?.warArray, warStatus) + if(dicTower && dicTower.warArray) { + let wars = dicTower.warArray.filter(warId => { + let ws = warStatus.find(cur => cur.warId == warId); + let isPass = warId == battleId || (ws && ws.status == true); + return isPass; + }); + inc = wars.length == dicTower.warArray.length? 1: 0; + } let newRec = await TowerRecordModel.updateRecord(roleId, towerLv, battleCode, battleId, heroes, inc); let towerReward: RewardInter[] = null; if (inc === 1) {