🐞 fix(pvp): 巅峰演武发放奖励有部分玩家无法获得

This commit is contained in:
luying
2023-06-28 11:06:29 +08:00
parent d10eacde86
commit 5d7670e6f8
2 changed files with 7 additions and 3 deletions

View File

@@ -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;//排名奖励

View File

@@ -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) {