寻宝:信息边窗
This commit is contained in:
@@ -147,6 +147,8 @@ export const STATUS = {
|
||||
COM_BATTLE_CREATE_CE_LIMIT: { code: 20635, simStr: '你的战力不足,不可设置该级别限制' },
|
||||
COM_BATTLE_TEAM_NOT_DEFAULT: { code: 20636, simStr: '队伍已过期' },
|
||||
COM_BATTLE_IS_RUNNING: { code: 20637, simStr: '您有队伍正在进行中' },
|
||||
COM_BATTLE_INVITE_LV_NOT_ENOUGH: { code: 20638, simStr: '对方队伍等级不足,无法邀请' },
|
||||
COM_BATTLE_INVITE_CE_LIMIT: { code: 20639, simStr: '对方队伍战力不足,无法邀请' },
|
||||
// 共斗藏宝图合成
|
||||
COM_BLUEPRT_QUALITY_CANNOT_COMPOSE: { code: 20650, simStr: '该品质藏宝图不可合成' },
|
||||
COM_BLUEPRT_COUNT_ERROR: { code: 20651, simStr: '材料数量不足' },
|
||||
|
||||
@@ -2,6 +2,7 @@ import BaseModel from './BaseModel';
|
||||
import { index, getModelForClass, prop, DocumentType } from '@typegoose/typegoose';
|
||||
import { EXTERIOR } from '../pubUtils/dicParam';
|
||||
import { ItemReward } from '../domain/dbGeneral';
|
||||
import { nowSeconds } from '../pubUtils/timeUtil';
|
||||
|
||||
export class ComRoleStatusHero {
|
||||
@prop({ required: true })
|
||||
@@ -187,10 +188,22 @@ export default class ComBattleTeam extends BaseModel {
|
||||
// 黑名单
|
||||
blacklist: string[] = [];
|
||||
|
||||
// 黑名单
|
||||
// 结束时间
|
||||
@prop({ required: true, default: 0 })
|
||||
endTime: number = 0;
|
||||
|
||||
// 是否发出邀请了
|
||||
@prop({ required: true, default: false })
|
||||
isInviting: boolean = false;
|
||||
|
||||
// 邀请时间
|
||||
@prop({ required: true, default: 0 })
|
||||
inviteTime: number = 0;
|
||||
|
||||
// 邀请对象
|
||||
@prop({ required: true, default: [], type: String, _id: false })
|
||||
inviteTarget: string[] = [];
|
||||
|
||||
public static async createTeam(teamData: ComBattleTeamParam, lean = true) {
|
||||
const team: ComBattleTeamType = await ComBattleTeamModel.findOneAndUpdate({ teamCode: teamData.teamCode }, {$set :{...teamData, roleCnt: teamData.roleIds.length}}, {upsert: true, new: true}).lean(lean);
|
||||
return team;
|
||||
@@ -341,6 +354,16 @@ export default class ComBattleTeam extends BaseModel {
|
||||
const team: ComBattleTeamType = await ComBattleTeamModel.findOne({teamCode}).lean(lean);
|
||||
return team;
|
||||
}
|
||||
|
||||
public static async invite(teamCode: string, target: string) {
|
||||
const team: ComBattleTeamType = await ComBattleTeamModel.findOneAndUpdate({teamCode}, { $set: { isInviting: true, inviteTime: nowSeconds()}, $push: { inviteTarget: target }}, {new: true}).lean();
|
||||
return team;
|
||||
}
|
||||
|
||||
public static async findInvitations(roleId: string, minLv: number, maxLv: number, ce: number, refreshTime: number, limit: number) {
|
||||
const invitations: ComBattleTeamType[] = await ComBattleTeamModel.find({ status: 0, isInviting: true, lv: { $gte: minLv, $lte: maxLv }, ceLimit: { $lte: ce }, inviteTime: { $gte: refreshTime } }).sort({ inviteTime: -1 }).limit(limit).lean();
|
||||
return invitations;
|
||||
}
|
||||
}
|
||||
|
||||
export const ComBattleTeamModel = getModelForClass(ComBattleTeam);
|
||||
|
||||
@@ -2,6 +2,7 @@ import { COM_TEAM_STATUS } from '../../consts';
|
||||
import { getBossHpByBlueprtId, getDicBlueprtById } from '../../pubUtils/data';
|
||||
import ComBattleTeam from './../../db/ComBattleTeam';
|
||||
import { cloneDeep } from 'lodash'
|
||||
import { FriendParams } from '../roleField/friend';
|
||||
|
||||
/**
|
||||
* 拷贝敌军数组并添加当前血量字段
|
||||
@@ -48,3 +49,18 @@ export class MemComBtlTeam extends ComBattleTeam {
|
||||
return this.roleStatus.find(cur => cur.roleId == roleId);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
export class ComBattleInvitation {
|
||||
blueprtId: number;
|
||||
leader: FriendParams;
|
||||
roleCnt: number;
|
||||
status: number;
|
||||
|
||||
constructor(comBattle: ComBattleTeam, leader: FriendParams) {
|
||||
this.blueprtId = comBattle.blueprtId;
|
||||
this.leader = leader;
|
||||
this.roleCnt = comBattle.roleCnt;
|
||||
this.status = comBattle.status;
|
||||
}
|
||||
}
|
||||
@@ -62,4 +62,4 @@ export interface mailData {
|
||||
export interface guildInter {
|
||||
myUserGuild: UserGuildType;
|
||||
hisUserGuild: UserGuildType;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user