pvp随机地图

This commit is contained in:
mamengke01
2021-01-07 12:25:40 +08:00
parent a339b8adcc
commit 94fc48a59a
17 changed files with 327 additions and 84 deletions
+15 -3
View File
@@ -7,7 +7,9 @@ import { PVP_PLAYER_POS, PVP_HERO_POS } from '../consts';
interface pvpUpdateInter {
_id?: string;
oppPlayers: OppPlayers[]
oppPlayers?: OppPlayers[];
score?: number;
pLv?:number;
}
export class Heroes {
@@ -123,7 +125,8 @@ export default class PvpDefense extends BaseModel {
challengeRefTime: number; // 上一次刷新的时间
@prop({ required: true, default: [] })
receivedBox: Array<number>;
@prop({ required: true, default: 0 })
seasonNum: number;
public static async findByRoleId(roleId: string, lean = true) {
const result: PvpDefenseType = await PvpDefenseModel.findOne({ roleId }).lean(lean);
return result;
@@ -170,7 +173,7 @@ export default class PvpDefense extends BaseModel {
return result;
}
public static async findByRoleIdIncludeAll(roleId: string, lean = true) {
public static async findByRoleIdIncludeAll(roleId: string) {
const result: PvpDefenseType = await PvpDefenseModel.findOne({ roleId })
.populate('role', 'headHid sHid topFiveCe roleId roleName')
.populate('heroes.hero')
@@ -201,6 +204,15 @@ export default class PvpDefense extends BaseModel {
}).lean();
return result;
}
public static async updateInfo(roleId: string, update: pvpUpdateInter, lean = true) {
let result: PvpDefenseType = await PvpDefenseModel.findOneAndUpdate({roleId}, {$set:update}, {new: true}).lean(lean);
return result;
}
public static async getPvpDef(limitNum: number, lean = true) {
let result: Array<PvpDefenseType> = await PvpDefenseModel.find().sort({ score: -1 }).limit(limitNum).lean(lean);
return result;
}
}
export const PvpDefenseModel = getModelForClass(PvpDefense);