diff --git a/game-server/app/servers/battle/handler/pvpHandler.ts b/game-server/app/servers/battle/handler/pvpHandler.ts index eaef9a79b..c4ada1f2d 100644 --- a/game-server/app/servers/battle/handler/pvpHandler.ts +++ b/game-server/app/servers/battle/handler/pvpHandler.ts @@ -203,10 +203,11 @@ export class PvpHandler { if (!pvpDefense) return resResult(STATUS.PVP_NOT_OPEN); // 检查挑战次数 let { seasonEndTime } = await PVPConfigModel.findCurPVPConfig(); - let { challengeCnt } = refresh(pvpDefense.challengeCnt, pvpDefense.challengeRefTime, seasonEndTime); + let { challengeCnt, challengeRefTime } = refresh(pvpDefense.challengeCnt, pvpDefense.challengeRefTime, seasonEndTime); if (challengeCnt == 0) { return resResult(STATUS.PVP_CHALLENGE_TIMES_NOT_ENOUGH); } + await PvpDefenseModel.updateInfo(roleId, { challengeCnt, challengeRefTime }); let { oppPlayers } = pvpDefense; let curOpp = oppPlayers.find(cur => cur.roleId == oppRoleId); if (!curOpp) return resResult(STATUS.PVP_ROLE_NOT_FOUND) @@ -291,11 +292,10 @@ export class PvpHandler { let { seasonEndTime } = await PVPConfigModel.findCurPVPConfig(); // 减少挑战次数 - let { challengeCnt, challengeRefTime } = comsumeChallengeCnt(pvpDefense.challengeCnt, pvpDefense.challengeRefTime, seasonEndTime); if (hisScore < score) { hisScore = score; } - pvpDefense = await PvpDefenseModel.updateInfoAndInclude(roleId, { oppPlayers: newOppPlayers, heroScores, score, pLv, winStreakNum, challengeCnt, challengeRefTime, hisScore }); + pvpDefense = await PvpDefenseModel.updateInfoAndInclude(roleId, { oppPlayers: newOppPlayers, heroScores, score, pLv, winStreakNum, challengeCnt: pvpDefense.challengeCnt - 1, hisScore }); let result = await getEnemies(pvpDefense.oppPlayers, pvpDefense.winStreakNum); // 加入排行榜