diff --git a/game-server/app/servers/battle/handler/pvpHandler.ts b/game-server/app/servers/battle/handler/pvpHandler.ts index b01bfa072..aa7b1f13c 100644 --- a/game-server/app/servers/battle/handler/pvpHandler.ts +++ b/game-server/app/servers/battle/handler/pvpHandler.ts @@ -122,7 +122,7 @@ export class PvpHandler { let {actorId, dataId, order} = cur; return { actorId, dataId, order } }), score, pLv, winStreakNum, refOppCnt, challengeCnt, challengeRefTime, receivedBox, hisScore, heroScores, isFirstEntry, isDefaultHero } - if (show) {//是否弹出结算奖励 + if (flag) {//是否弹出结算奖励 data.resultRecord = { oldSeasonData, heroGoods, rankGoods } } return resResult(STATUS.SUCCESS, data); diff --git a/game-server/app/services/timeTaskService.ts b/game-server/app/services/timeTaskService.ts index c0a51e81f..178b47e43 100644 --- a/game-server/app/services/timeTaskService.ts +++ b/game-server/app/services/timeTaskService.ts @@ -20,7 +20,7 @@ const PER_DAY = 24 * 60 * 60; const SETTLE_DIFF = 29 * 60; const LIMIT_NUM = 1000; const pageNum = 500; -const PER_MINUTE = 1 * 1000; +const PER_MINUTE = 1 * 60; var seasonJobId; var warJobId; var seasonEndTimeJobId; @@ -28,6 +28,7 @@ export async function init() { let seasonEndTime = 0; let systemConfig = await SystemConfigModel.findSystemConfig(); if (!systemConfig) { + console.log('create season seasonNum = '+ systemConfig.seasonNum); let warIds = getPvpGkWarIds(); let warId = warIds[0];//TODO随机地图 seasonEndTime = PVP.PVP_SEASON_DAYS * PER_DAY + getTodayZeroPoint(); @@ -36,19 +37,24 @@ export async function init() { seasonEndTime = systemConfig.seasonEndTime; if (systemConfig.seasonEndTime - SETTLE_DIFF <= nowSeconds()) { seasonEndTime = PVP.PVP_SEASON_DAYS * PER_DAY + getTodayZeroPoint(); + console.log('update season seasonNum = '+ systemConfig.seasonNum); systemConfig.seasonNum++; await SystemConfigModel.updateSystemConfig({ seasonEndTime, seasonNum: systemConfig.seasonNum, oldSeasonEndTime: systemConfig.seasonEndTime}); - await setPvpSeasonResult({name: 'simpleJobExample' + systemConfig.seasonNum, notSetNext: true }); - } + await setPvpSeasonResult({name: 'simpleJobExample' + systemConfig.seasonNum, notSetNext: true, notPush: true }); + } } let settleTime = (seasonEndTime - SETTLE_DIFF)* PER_SECOND; + console.log(' settleTime = ' + settleTime); seasonJobId = scheduleJob(settleTime, setPvpSeasonResult, { name: 'setPvpSeasonResult' }); + console.log(' settleTime111111 = ' + (seasonEndTime - PER_MINUTE)* PER_SECOND); + seasonEndTimeJobId = scheduleJob((seasonEndTime - PER_MINUTE)* PER_SECOND, resetPvpRanks, { name: 'resetRank' }); warJobId = scheduleJob("0 0 0 * * 3", resetPvpWarId); + console.log('execute season resetPvpRanks'); await resetPvpRanks(); } -export async function setPvpSeasonResult(obj:{ name:string, notSetNext?: boolean }) { +export async function setPvpSeasonResult(obj:{ name:string, notSetNext?: boolean, notPush?: boolean }) { console.log('exce setPvpSeasonResult'+ obj?.name); let { seasonNum, seasonEndTime, oldSeasonEndTime } = await setNextPvpTime(obj?.notSetNext); let resultMaxRank = getResultMaxRank(); @@ -64,6 +70,9 @@ export async function setPvpSeasonResult(obj:{ name:string, notSetNext?: boolean } } await MailModel.addMails(addMails); + if (obj?.notPush) { + continue; + } for (let message of pushMessage) { pinus.app.rpc.connector.connectorRemote.pushMessage.toServer(message.sid, message.uid, message.route, message.data); } @@ -212,6 +221,7 @@ export async function resetPvpSeasonTime(hour: number) { seasonNum = systemConfig.seasonNum + 1; await SystemConfigModel.updateSystemConfig({ seasonEndTime, seasonNum, oldSeasonEndTime: 0}); await setPvpSeasonResult({name: 'simpleJobExample' + systemConfig.seasonNum, notSetNext: true }); + await resetPvpRanks(); } let settleTime = (seasonEndTime - SETTLE_DIFF)* PER_SECOND; console.log('settleTime = ' + settleTime)