pvp: 修复可能重复结算赛季问题
This commit is contained in:
@@ -518,7 +518,10 @@ export async function generPVPOppRecInfo(isSuccess: boolean, curOpp: OppPlayer,
|
||||
* pvp定时任务赛季结算
|
||||
* @param obj
|
||||
*/
|
||||
export async function pvpSeasonEnd(pvpConfig: PVPConfigType) {
|
||||
export async function pvpSeasonEnd(seasonNum: number) {
|
||||
let pvpConfig = await PVPConfigModel.findPVPConfig(seasonNum);
|
||||
if(pvpConfig.hasSettleReward) return;
|
||||
|
||||
console.log('exce pvpSeasonEnd' + pvpConfig.seasonNum);
|
||||
let resultMaxRank = gameData.pvpRankMax.max;//根据排行榜的奖励表,获得最大排名挡位的最小值,其余不在结算中结算的玩家按照最大排名挡位在登录或进入pvp时结算
|
||||
let r = new Rank(REDIS_KEY.PVP_RANK, { seasonNum: pvpConfig.seasonNum }, false, resultMaxRank.min - 1);
|
||||
@@ -546,12 +549,12 @@ export async function sendPVPRewardToUser(pvpDefense: PvpDefenseType, seasonNum:
|
||||
if (!!rankGoods.length) //排名奖励
|
||||
await sendMailByContent(MAIL_TYPE.PVP_RANK_REWARD, pvpDefense.roleId, {
|
||||
params: [JSON.stringify(seasonNum), (rankLv > 1000 ? '999+' : JSON.stringify(rankLv))],
|
||||
goods: rankGoods, endTime: seasonEndTime, notPush
|
||||
goods: rankGoods, notPush
|
||||
});
|
||||
if (!!heroGoods.length) //武将功勋奖励
|
||||
await sendMailByContent(MAIL_TYPE.PVP_RESULT, pvpDefense.roleId, {
|
||||
params: [JSON.stringify(seasonNum)],
|
||||
goods: heroGoods, endTime: seasonEndTime, notPush
|
||||
goods: heroGoods, notPush
|
||||
});
|
||||
|
||||
return await resetPvpScores(pvpDefense, seasonNum + 1, pvpSeasonResult);
|
||||
|
||||
Reference in New Issue
Block a user