初始进入pvp
This commit is contained in:
@@ -37,16 +37,18 @@ export class PvpHandler {
|
||||
let pvpDefense = await PvpDefenseModel.findByRoleIdIncludeAll(roleId);
|
||||
let oppPlayers = getEnemies(pvpDefense.oppPlayers, pvpDefense.winStreakNum);
|
||||
let {warId, seasonNum, seasonEndTime} = await SystemConfigModel.findSystemConfig();
|
||||
let {heroes, score, pLv, winStreakNum, refOppCnt, challengeCnt, challengeRefTime, receivedBox, hisScore, heroScores} = pvpDefense;
|
||||
let {heroes, score, pLv, winStreakNum, refOppCnt, challengeCnt, challengeRefTime, receivedBox, hisScore, heroScores, isFirstEntry} = pvpDefense;
|
||||
if (pvpDefense.seasonNum !== seasonNum) {
|
||||
let { score, pLv, winStreakNum, heroScores, refOppCnt, challengeCnt, challengeRefTime } = await setPvpDefResult(pvpDefense, seasonNum);
|
||||
}
|
||||
if (isFirstEntry) {
|
||||
await PvpDefenseModel.updateInfo(roleId, {isFirstEntry:false});
|
||||
}
|
||||
let myRank = 999;//TODO去redis中获取
|
||||
let data = {warId, seasonNum, seasonEndTime, myRank, oppPlayers, heroes, score, pLv, winStreakNum, refOppCnt, challengeCnt, challengeRefTime, receivedBox, hisScore, heroScores}
|
||||
let data = {warId, seasonNum, seasonEndTime, myRank, oppPlayers, heroes, score, pLv, winStreakNum, refOppCnt, challengeCnt, challengeRefTime, receivedBox, hisScore, heroScores, isFirstEntry}
|
||||
return resResult(STATUS.SUCCESS, data);
|
||||
}
|
||||
|
||||
|
||||
// TODO 刷新
|
||||
async refreshOppPlayer (msg: {}, session: BackendSession) {
|
||||
let roleId = session.get('roleId');
|
||||
|
||||
@@ -18,6 +18,7 @@ interface pvpUpdateInter {
|
||||
refOppCnt?:number;
|
||||
challengeCnt?:number;
|
||||
challengeRefTime?:number;
|
||||
isFirstEntry?:boolean;
|
||||
}
|
||||
|
||||
export class Heroes {
|
||||
@@ -137,6 +138,8 @@ export default class PvpDefense extends BaseModel {
|
||||
receivedBox: Array<number>;
|
||||
@prop({ required: true, default: 0 })
|
||||
seasonNum: number;
|
||||
@prop({ required: true, default: true })
|
||||
isFirstEntry: boolean;
|
||||
public static async findByRoleId(roleId: string, lean = true) {
|
||||
const result: PvpDefenseType = await PvpDefenseModel.findOne({ roleId }).lean(lean);
|
||||
return result;
|
||||
|
||||
Reference in New Issue
Block a user