From 5d7670e6f816ec9ec0b02fa83fd629f2b70b216f Mon Sep 17 00:00:00 2001 From: luying Date: Wed, 28 Jun 2023 11:06:29 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9E=20fix(pvp):=20=E5=B7=85=E5=B3=B0?= =?UTF-8?q?=E6=BC=94=E6=AD=A6=E5=8F=91=E6=94=BE=E5=A5=96=E5=8A=B1=E6=9C=89?= =?UTF-8?q?=E9=83=A8=E5=88=86=E7=8E=A9=E5=AE=B6=E6=97=A0=E6=B3=95=E8=8E=B7?= =?UTF-8?q?=E5=BE=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- game-server/app/services/pvpService.ts | 2 +- shared/pubUtils/data.ts | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/game-server/app/services/pvpService.ts b/game-server/app/services/pvpService.ts index 2072874e0..7e539461f 100644 --- a/game-server/app/services/pvpService.ts +++ b/game-server/app/services/pvpService.ts @@ -672,7 +672,7 @@ export async function savePvpSeasonResult(pvpDefense: PvpDefenseType, seasonNum: let r = new Rank(REDIS_KEY.PVP_RANK, { seasonNum, groupId }); rankLv = await r.getMyRank({ roleId: pvpDefense.roleId });// 获得排行榜排名 } - let pvpRankReward: DicRankRewads = getPvpRankRewardsByRank(seasonNum, rankLv); + let pvpRankReward: DicRankRewads = getPvpRankRewardsByRank(seasonNum, rankLv, pvpDefense.score); let rankGoods: RewardInter[] = []; if (pvpRankReward) { rankGoods = pvpRankReward.reward;//排名奖励 diff --git a/shared/pubUtils/data.ts b/shared/pubUtils/data.ts index 55c534529..151a7e889 100644 --- a/shared/pubUtils/data.ts +++ b/shared/pubUtils/data.ts @@ -584,9 +584,13 @@ export function getPvpRankMaxRewardsBySeasonNum(seasonNum: number) { } } -export function getPvpRankRewardsByRank(seasonNum: number, rankLv: number) { - if(rankLv == 0) return null +export function getPvpRankRewardsByRank(seasonNum: number, rankLv: number, score: number) { + if(score <= 0) return null let ranks = getPvpRankRewardsBySeasonNum(seasonNum)??[]; + if(rankLv == 0) { + let item = ranks.find(cur => cur.max == -1); + return item; + } for (let item of ranks) { if ((item.max >= rankLv || item.max == -1) && rankLv >= item.min) {