pvp刷新对手

This commit is contained in:
mamengke01
2021-01-14 20:25:25 +08:00
parent 65bd59f93b
commit aed6e190e7
4 changed files with 9 additions and 12 deletions
@@ -99,7 +99,7 @@ export class PvpHandler {
let flag = false; let flag = false;
if (!!pvpSeasonResult) { if (!!pvpSeasonResult) {
var { oldSeasonData, show, heroGoods, rankGoods} = pvpSeasonResult; var { oldSeasonData, show, heroGoods, rankGoods} = pvpSeasonResult;
if ( oldSeasonData.seasonEndTime > nowSeconds()) { if ( oldSeasonData.seasonEndTime > nowSeconds()) {//结算中锁定玩家信息
seasonEndTime = oldSeasonData.seasonEndTime; seasonEndTime = oldSeasonData.seasonEndTime;
heroScores = oldSeasonData.heroScores; heroScores = oldSeasonData.heroScores;
score = oldSeasonData.score; score = oldSeasonData.score;
@@ -119,7 +119,7 @@ export class PvpHandler {
let {actorId, dataId, order} = cur; let {actorId, dataId, order} = cur;
return { actorId, dataId, order } return { actorId, dataId, order }
}), score, pLv, winStreakNum, refOppCnt, challengeCnt, challengeRefTime, receivedBox, hisScore, heroScores, isFirstEntry, isDefaultHero } }), score, pLv, winStreakNum, refOppCnt, challengeCnt, challengeRefTime, receivedBox, hisScore, heroScores, isFirstEntry, isDefaultHero }
// if (show) { // if (show) {//是否弹出结算奖励
data.resultRecord = { oldSeasonData, heroGoods, rankGoods } data.resultRecord = { oldSeasonData, heroGoods, rankGoods }
// } // }
return resResult(STATUS.SUCCESS, data); return resResult(STATUS.SUCCESS, data);
+3 -3
View File
@@ -418,7 +418,7 @@ export function getRefOppCnt(refOppCnt: number, refOppTime: Date) {
export async function findPvpDefAllByRoleId(roleId: string) { export async function findPvpDefAllByRoleId(roleId: string) {
let pvpDefense = await PvpDefenseModel.findByRoleIdIncludeAll(roleId); let pvpDefense = await PvpDefenseModel.findByRoleIdIncludeAll(roleId);
let { warId, seasonNum, seasonEndTime } = await SystemConfigModel.findSystemConfig(); let { warId, seasonNum, seasonEndTime } = await SystemConfigModel.findSystemConfig();
if (pvpDefense.seasonNum !== seasonNum) { if (pvpDefense.seasonNum != seasonNum) {
let { score, pLv, winStreakNum, heroScores, challengeCnt, challengeRefTime } = await pinus.app.rpc.systimer.systimerRemote.setPvpDefResult.toServer('systimer-server-1', pvpDefense, seasonNum, seasonEndTime); let { score, pLv, winStreakNum, heroScores, challengeCnt, challengeRefTime } = await pinus.app.rpc.systimer.systimerRemote.setPvpDefResult.toServer('systimer-server-1', pvpDefense, seasonNum, seasonEndTime);
pvpDefense.score = score; pvpDefense.score = score;
pvpDefense.pLv = pLv; pvpDefense.pLv = pLv;
@@ -426,9 +426,9 @@ export async function findPvpDefAllByRoleId(roleId: string) {
pvpDefense.heroScores = heroScores; pvpDefense.heroScores = heroScores;
pvpDefense.challengeCnt = challengeCnt; pvpDefense.challengeCnt = challengeCnt;
pvpDefense.challengeRefTime = challengeRefTime; pvpDefense.challengeRefTime = challengeRefTime;
pvpDefense.seasonNum = seasonNum;
pvpDefense.seasonEndTime = seasonEndTime;
} }
pvpDefense.seasonNum = seasonNum;
pvpDefense.seasonEndTime = seasonEndTime;
let {challengeCnt, challengeRefTime} = refresh(pvpDefense.challengeCnt, pvpDefense.challengeRefTime, pvpDefense.seasonEndTime); let {challengeCnt, challengeRefTime} = refresh(pvpDefense.challengeCnt, pvpDefense.challengeRefTime, pvpDefense.seasonEndTime);
let { refOppCnt, refOppTime, shouldRefOpp } = getRefOppCnt(pvpDefense.refOppCnt, pvpDefense.refOppTime); // 刷新次数 let { refOppCnt, refOppTime, shouldRefOpp } = getRefOppCnt(pvpDefense.refOppCnt, pvpDefense.refOppTime); // 刷新次数
if (challengeCnt != pvpDefense.challengeCnt || refOppCnt != pvpDefense.refOppCnt || shouldRefOpp) { if (challengeCnt != pvpDefense.challengeCnt || refOppCnt != pvpDefense.refOppCnt || shouldRefOpp) {
+4 -4
View File
@@ -70,7 +70,7 @@ export async function setPvpDefResultOnTime(pvpDefense: PvpDefenseType, seasonNu
return; return;
} }
let { score, pLv, heroScores, winStreakNum, challengeCnt, challengeRefTime, goods } = await checkResult(pvpDefense, seasonNum, seasonEndTime); let { score, pLv, heroScores, winStreakNum, challengeCnt, challengeRefTime, goods } = await checkResult(pvpDefense, seasonNum, seasonEndTime);
pvpDefense = await PvpDefenseModel.updateInfo(pvpDefense.roleId, {score, pLv, heroScores, winStreakNum, seasonNum, challengeCnt, challengeRefTime, seasonEndTime, oldSeasonEndTime: pvpDefense.oldSeasonEndTime}); pvpDefense = await PvpDefenseModel.updateInfo(pvpDefense.roleId, {score, pLv, heroScores, winStreakNum, seasonNum, challengeCnt, challengeRefTime, seasonEndTime});
let { roleName, lv, vLv, headHid, sHid, title } = role; let { roleName, lv, vLv, headHid, sHid, title } = role;
let params = new RankParam(roleName, lv, vLv, headHid, sHid, title); let params = new RankParam(roleName, lv, vLv, headHid, sHid, title);
setRank(REDIS_KEY.PVP_RANK, 0, pvpDefense.roleId, pvpDefense.score, pvpDefense.updatedAt.getTime(), params); setRank(REDIS_KEY.PVP_RANK, 0, pvpDefense.roleId, pvpDefense.score, pvpDefense.updatedAt.getTime(), params);
@@ -131,7 +131,7 @@ export async function setPvpDefResult(pvpDefense: PvpDefenseType, seasonNum: num
return; return;
} }
let {score, pLv, heroScores, winStreakNum, challengeCnt, challengeRefTime, goods } = await checkResult(pvpDefense, seasonNum, seasonEndTime); let {score, pLv, heroScores, winStreakNum, challengeCnt, challengeRefTime, goods } = await checkResult(pvpDefense, seasonNum, seasonEndTime);
pvpDefense = await PvpDefenseModel.updateInfoAndInclude(pvpDefense.roleId, {score, pLv, heroScores, winStreakNum, seasonNum, challengeCnt, challengeRefTime, seasonEndTime, oldSeasonEndTime: pvpDefense.oldSeasonEndTime}); pvpDefense = await PvpDefenseModel.updateInfo(pvpDefense.roleId, {score, pLv, heroScores, winStreakNum, seasonNum, challengeCnt, challengeRefTime, seasonEndTime});
let { roleName, lv, vLv, headHid, sHid, title , roleId } = role; let { roleName, lv, vLv, headHid, sHid, title , roleId } = role;
let params = new RankParam(roleName, lv, vLv, headHid, sHid, title); let params = new RankParam(roleName, lv, vLv, headHid, sHid, title);
setRank(REDIS_KEY.PVP_RANK, 0, pvpDefense.roleId, pvpDefense.score, pvpDefense.updatedAt.getTime(), params); setRank(REDIS_KEY.PVP_RANK, 0, pvpDefense.roleId, pvpDefense.score, pvpDefense.updatedAt.getTime(), params);
@@ -196,8 +196,8 @@ export async function resetPvpSeasonTime(hour: number) {
systemConfig = await SystemConfigModel.createSystemConfig( seasonEndTime, warId ); systemConfig = await SystemConfigModel.createSystemConfig( seasonEndTime, warId );
} else { } else {
seasonEndTime = hour * 60 * 60 + getTodayZeroPoint(); seasonEndTime = hour * 60 * 60 + getTodayZeroPoint();
seasonNum = systemConfig.seasonNum + 1; seasonNum = systemConfig.seasonNum;
await SystemConfigModel.updateSystemConfig({ seasonEndTime, seasonNum: seasonNum}); await SystemConfigModel.updateSystemConfig({ seasonEndTime, seasonNum});
} }
let settleTime = (seasonEndTime - SETTLE_DIFF)* PER_SECOND; let settleTime = (seasonEndTime - SETTLE_DIFF)* PER_SECOND;
console.log('settleTime = ' + settleTime) console.log('settleTime = ' + settleTime)
-3
View File
@@ -24,7 +24,6 @@ export interface pvpUpdateInter {
receivedBox?: Array<number>; receivedBox?: Array<number>;
seasonEndTime?:number; seasonEndTime?:number;
isDefaultHero?:boolean; isDefaultHero?:boolean;
oldSeasonEndTime?:number;
} }
export class Heroes { export class Heroes {
@@ -148,8 +147,6 @@ export default class PvpDefense extends BaseModel {
seasonEndTime: number; seasonEndTime: number;
@prop({ required: true, default: true }) @prop({ required: true, default: true })
isFirstEntry: boolean; isFirstEntry: boolean;
@prop({ required: true, default: 0 })
oldSeasonEndTime:number;
public static async findByRoleId(roleId: string, lean = true) { public static async findByRoleId(roleId: string, lean = true) {
const result: PvpDefenseType = await PvpDefenseModel.findOne({ roleId }).lean(lean); const result: PvpDefenseType = await PvpDefenseModel.findOne({ roleId }).lean(lean);
return result; return result;