pvp:赛季奖励

This commit is contained in:
luying
2022-07-04 19:16:23 +08:00
parent 65d68d7db4
commit d307aa96f3
3 changed files with 53 additions and 21 deletions

View File

@@ -6,7 +6,7 @@ import { PVP_HERO_POS, REDIS_KEY, PVP_CONST, COUNTER, TASK_TYPE, MAIL_TYPE, TA_E
import { dicPvpOpponent, DicPvpOpponent } from "../pubUtils/dictionary/DicPvpOpponent";
import { getRandSingleIndex, genCode, shouldRefresh, getChineseName, makeRobotId, robotIdComBack, getRandSingleEelm } from '../pubUtils/util';
import { pvpEndParamInter, RewardInter } from '../pubUtils/interface';
import { gameData, getPLvByScore, getPvpHeroRewardsByScore, getPvpRankRewardsByRank, getPvpDifficultByScore, getPlvAndScore, getPvpBoxsBySeasonNum } from "../pubUtils/data";
import { gameData, getPLvByScore, getPvpHeroRewardsByScore, getPvpRankRewardsByRank, getPvpDifficultByScore, getPlvAndScore, getPvpBoxsBySeasonNum, getPvpRankMaxRewardsBySeasonNum } from "../pubUtils/data";
import { PVP } from '../pubUtils/dicParam';
import { PVPConfigModel, PVPConfigType } from '../db/SystemConfig'
import { nowSeconds, getTimeFun } from '../pubUtils/timeUtil';
@@ -523,11 +523,13 @@ export async function generPVPOppRecInfo(isSuccess: boolean, curOpp: OppPlayer,
let pvpConfig = await PVPConfigModel.findPVPConfig(seasonNum);
if(pvpConfig.hasSettleReward) return;
console.log('exce pvpSeasonEnd' + pvpConfig.seasonNum);
let resultMaxRank = gameData.pvpRankMax.max;//根据排行榜的奖励表获得最大排名挡位的最小值其余不在结算中结算的玩家按照最大排名挡位在登录或进入pvp时结算
console.log('exce pvpSeasonEnd ' + pvpConfig.seasonNum);
let resultMaxRank = getPvpRankMaxRewardsBySeasonNum(pvpConfig.seasonNum);//根据排行榜的奖励表获得最大排名挡位的最小值其余不在结算中结算的玩家按照最大排名挡位在登录或进入pvp时结算
if(!resultMaxRank) return;
let r = new Rank(REDIS_KEY.PVP_RANK, { seasonNum: pvpConfig.seasonNum }, false, resultMaxRank.min - 1);
let allRank = <RoleRankInfo[]>(await r.getRankByRange());
// console.log('******** allRank', 0, resultMaxRank.min - 2, allRank)
console.log('******** allRank', 0, resultMaxRank.min - 2, allRank)
for(let { rank, roleId } of allRank) {
console.log('******** pvpSeasonEnd: ', rank, roleId);
let pvpDefense = await PvpDefenseModel.findByRoleId(roleId);
@@ -611,7 +613,7 @@ export async function savePvpSeasonResult(pvpDefense: PvpDefenseType, seasonNum:
let r = new Rank(REDIS_KEY.PVP_RANK, { seasonNum });
rankLv = await r.getMyRank({ roleId: pvpDefense.roleId });// 获得排行榜排名
}
let pvpRankReward: DicRankRewads = getPvpRankRewardsByRank(rankLv);
let pvpRankReward: DicRankRewads = getPvpRankRewardsByRank(seasonNum, rankLv);
let rankGoods: RewardInter[] = [];
if (pvpRankReward) {
rankGoods = pvpRankReward.reward;//排名奖励