物品:获取装备上限
This commit is contained in:
+14
-2
@@ -3,6 +3,7 @@ import { index, getModelForClass, prop, DocumentType, modelOptions } from '@type
|
||||
import { COUNTER } from '../consts';
|
||||
import { CounterModel } from './Counter';
|
||||
import { HeroModel } from './Hero';
|
||||
import { RoleModel } from './Role';
|
||||
|
||||
export class RandSe {
|
||||
@prop({ required: true })
|
||||
@@ -98,6 +99,16 @@ export default class Equip extends BaseModel {
|
||||
return equip;
|
||||
}
|
||||
|
||||
public static async createEquips(roleId: string, equipInfos: equipUpdate[]) {
|
||||
let result: EquipType[] = [];
|
||||
for(let equipInfo of equipInfos) {
|
||||
let equip = await this.createEquip(equipInfo);
|
||||
result.push(equip);
|
||||
}
|
||||
await RoleModel.increaseEquip(roleId, result.length);
|
||||
return result;
|
||||
}
|
||||
|
||||
public static async putOnOrOff(equipId: string, hid: number, lean = true) {
|
||||
const equip: EquipType = await EquipModel.findOneAndUpdate({ _id: equipId }, { hid }, { new: true }).lean(lean);
|
||||
return equip;
|
||||
@@ -113,8 +124,9 @@ export default class Equip extends BaseModel {
|
||||
let result = await EquipModel.deleteMany({ roleId });
|
||||
return result;
|
||||
}
|
||||
public static async deleteEquips(ids: Array<number>) {
|
||||
let result = await EquipModel.deleteMany({ seqId: { $in: ids } });
|
||||
public static async deleteEquips(roleId: string, ids: Array<number>) {
|
||||
let result = await EquipModel.deleteMany({ roleId, seqId: { $in: ids } });
|
||||
await RoleModel.findOneAndUpdate({ roleId }, { $inc: { equipCount: -1 * ids.length } }, { new: true });
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user