✨ feat(pvp): 巅峰演武战区化
This commit is contained in:
@@ -29,6 +29,7 @@ import { PVPConfigModel } from '../../../db/PvpConfig';
|
||||
import { getAllServerName, getServerName } from '../../../services/redisService';
|
||||
import { RoleRankInfo } from '../../../domain/rank';
|
||||
import { isHeroHidden } from '../../../services/dataService';
|
||||
import { getPVPGroupIdOfServer } from '../../../services/serverService';
|
||||
|
||||
export default function (app: Application) {
|
||||
new HandlerService(app, {});
|
||||
@@ -42,6 +43,7 @@ export class PvpHandler {
|
||||
//1获取主界面
|
||||
async getData(msg: {}, session: BackendSession) {
|
||||
let roleId = session.get('roleId');
|
||||
let serverId = session.get('serverId');
|
||||
|
||||
let seasonNum: number = this.app.get('pvpSeasonNum');
|
||||
let seasonStartTime: number = this.app.get('pvpSeasonStartTime');
|
||||
@@ -90,8 +92,9 @@ export class PvpHandler {
|
||||
result.setPvpSeasonResult(pvpSeasonResult);
|
||||
await PvpSeasonResultModel.setShow(roleId);
|
||||
}
|
||||
// 拍卖
|
||||
let r = new Rank(REDIS_KEY.PVP_RANK, { seasonNum });
|
||||
// 排行榜
|
||||
let groupId = await getPVPGroupIdOfServer(serverId);
|
||||
let r = new Rank(REDIS_KEY.PVP_RANK, { seasonNum, groupId });
|
||||
let myRank = await r.getMyRank({ roleId });//去redis中获取排名
|
||||
result.setMyRank(myRank);
|
||||
|
||||
@@ -285,7 +288,8 @@ export class PvpHandler {
|
||||
|
||||
if(seasonNum == pvpSeasonNum) {
|
||||
// 加入排行榜
|
||||
let r = new Rank(REDIS_KEY.PVP_RANK, { seasonNum: pvpSeasonNum });
|
||||
let groupId = await getPVPGroupIdOfServer(serverId);
|
||||
let r = new Rank(REDIS_KEY.PVP_RANK, { seasonNum: pvpSeasonNum, groupId });
|
||||
await r.setRankWithRoleInfo(roleId, pvpDefense.score, pvpDefense.updatedAt.getTime(), role);
|
||||
let myRank = await r.getMyRank({ roleId });
|
||||
result.setMyRank(myRank);
|
||||
@@ -482,6 +486,7 @@ export class PvpHandler {
|
||||
async getRank(msg: {}, session: BackendSession) {
|
||||
|
||||
let roleId = session.get('roleId');
|
||||
let serverId = session.get('serverId');
|
||||
|
||||
let seasonNum: number = this.app.get('pvpSeasonNum');
|
||||
if(checkPvpSeasonIsWaiting()) { // 休赛期
|
||||
@@ -489,7 +494,8 @@ export class PvpHandler {
|
||||
}
|
||||
|
||||
let serverNames = await getAllServerName();
|
||||
let r = new Rank(REDIS_KEY.PVP_RANK, { seasonNum });
|
||||
let groupId = await getPVPGroupIdOfServer(serverId);
|
||||
let r = new Rank(REDIS_KEY.PVP_RANK, { seasonNum, groupId });
|
||||
r.setGenerFieldsFun(function (param: RoleRankInfo) {
|
||||
let { serverId } = param;
|
||||
return { ...param, serverName: serverNames[serverId]||'无' };
|
||||
@@ -557,7 +563,8 @@ export class PvpHandler {
|
||||
}
|
||||
heroes.sort((a, b) => b.score - a.score);
|
||||
let seasonNum: number = this.app.get('pvpSeasonNum');
|
||||
let r = new Rank(REDIS_KEY.PVP_RANK, { seasonNum });
|
||||
let groupId = await getPVPGroupIdOfServer(serverId);
|
||||
let r = new Rank(REDIS_KEY.PVP_RANK, { seasonNum, groupId });
|
||||
let rank = await r.getMyRank({ roleId: oppoRoleId });//去redis中获取排名
|
||||
|
||||
result = new PlayerDetail(oppoRoleId, heroes, rank);
|
||||
@@ -657,7 +664,8 @@ export class PvpHandler {
|
||||
|
||||
// 加入排行榜
|
||||
let seasonNum: number = this.app.get('pvpSeasonNum');
|
||||
let r = new Rank(REDIS_KEY.PVP_RANK, { seasonNum });
|
||||
let groupId = await getPVPGroupIdOfServer(serverId);
|
||||
let r = new Rank(REDIS_KEY.PVP_RANK, { seasonNum, groupId });
|
||||
await r.setRankWithRoleInfo(roleId, pvpDefense.score, pvpDefense.updatedAt.getTime(), role);
|
||||
|
||||
// 任务
|
||||
|
||||
Reference in New Issue
Block a user