pvp刷新对手

This commit is contained in:
mamengke01
2021-01-14 20:23:57 +08:00
parent 65bd59f93b
commit aed6e190e7
4 changed files with 9 additions and 12 deletions

View File

@@ -99,7 +99,7 @@ export class PvpHandler {
let flag = false;
if (!!pvpSeasonResult) {
var { oldSeasonData, show, heroGoods, rankGoods} = pvpSeasonResult;
if ( oldSeasonData.seasonEndTime > nowSeconds()) {
if ( oldSeasonData.seasonEndTime > nowSeconds()) {//结算中锁定玩家信息
seasonEndTime = oldSeasonData.seasonEndTime;
heroScores = oldSeasonData.heroScores;
score = oldSeasonData.score;
@@ -119,7 +119,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 (show) {//是否弹出结算奖励
data.resultRecord = { oldSeasonData, heroGoods, rankGoods }
// }
return resResult(STATUS.SUCCESS, data);

View File

@@ -418,7 +418,7 @@ export function getRefOppCnt(refOppCnt: number, refOppTime: Date) {
export async function findPvpDefAllByRoleId(roleId: string) {
let pvpDefense = await PvpDefenseModel.findByRoleIdIncludeAll(roleId);
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);
pvpDefense.score = score;
pvpDefense.pLv = pLv;
@@ -426,9 +426,9 @@ export async function findPvpDefAllByRoleId(roleId: string) {
pvpDefense.heroScores = heroScores;
pvpDefense.challengeCnt = challengeCnt;
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 { refOppCnt, refOppTime, shouldRefOpp } = getRefOppCnt(pvpDefense.refOppCnt, pvpDefense.refOppTime); // 刷新次数
if (challengeCnt != pvpDefense.challengeCnt || refOppCnt != pvpDefense.refOppCnt || shouldRefOpp) {

View File

@@ -70,7 +70,7 @@ export async function setPvpDefResultOnTime(pvpDefense: PvpDefenseType, seasonNu
return;
}
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 params = new RankParam(roleName, lv, vLv, headHid, sHid, title);
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;
}
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 params = new RankParam(roleName, lv, vLv, headHid, sHid, title);
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 );
} else {
seasonEndTime = hour * 60 * 60 + getTodayZeroPoint();
seasonNum = systemConfig.seasonNum + 1;
await SystemConfigModel.updateSystemConfig({ seasonEndTime, seasonNum: seasonNum});
seasonNum = systemConfig.seasonNum;
await SystemConfigModel.updateSystemConfig({ seasonEndTime, seasonNum});
}
let settleTime = (seasonEndTime - SETTLE_DIFF)* PER_SECOND;
console.log('settleTime = ' + settleTime)

View File

@@ -24,7 +24,6 @@ export interface pvpUpdateInter {
receivedBox?: Array<number>;
seasonEndTime?:number;
isDefaultHero?:boolean;
oldSeasonEndTime?:number;
}
export class Heroes {
@@ -148,8 +147,6 @@ export default class PvpDefense extends BaseModel {
seasonEndTime: number;
@prop({ required: true, default: true })
isFirstEntry: boolean;
@prop({ required: true, default: 0 })
oldSeasonEndTime:number;
public static async findByRoleId(roleId: string, lean = true) {
const result: PvpDefenseType = await PvpDefenseModel.findOne({ roleId }).lean(lean);
return result;