装备:淬火

This commit is contained in:
luying
2021-07-29 14:21:51 +08:00
parent dc832da60a
commit 972abb7d07
19 changed files with 805 additions and 68 deletions
+16 -14
View File
@@ -24,14 +24,11 @@ export class Holes {
jewel: number; // 装备的宝石id
}
interface equipUpdate {
hid?: number;
quality?: number;
wearLv?: number;
_id?: number;
holes?: Array<Holes>;
randSe?: Array<RandSe>;
ePlaceId?: number;
export class RandMain {
@prop({ required: true })
id: number; // 随机属性位置id
@prop({ required: true })
rand: number; // 随机属性内需要随机的值,扩大100倍
}
@index({ roleId: 1, hid: 1, id: 1 })
@@ -51,7 +48,7 @@ export default class Equip extends BaseModel {
@prop({ required: true })
name: string; // 装备名称
@prop({ required: false, default: 0 })
hid: number; // 装备此装备的武将 id
hid: number; // 装备此装备的武将 id
@prop({ required: false, default: 0 })
ePlaceId: number; // 武将装备的部位
@prop({ required: false, default: 1 })
@@ -60,12 +57,16 @@ export default class Equip extends BaseModel {
@prop({ required: true, default: 1 })
quality: number; // 品质
@prop({ required: true, default: 0 })
suitId: number; // 套装id
suitId: number; // 套装id
@prop({ required: true, default: 0 })
randRange: number; // 固定属性随机值
randRange: number; // 固定属性随机值 // TODO 废弃字段,客户端改完之前暂时保留
@prop({ required: false, type: RandMain, default: [], _id: false })
randMain: RandMain[]; // 主属性随机
@prop({ required: true, default: 0 })
grade: number; // 品相等级
@prop({ required: false, type: RandSe, default: [], _id: false })
randSe: RandSe[]; // 强化随机属性
randSe: RandSe[]; // 强化随机属性
@prop({ required: true, type: Holes, default: [], _id: false })
holes: Holes[];
@@ -79,7 +80,7 @@ export default class Equip extends BaseModel {
return equip;
}
public static async createEquip(equipInfo: { roleId: string, roleName: string, id: number, name: string, quality: number, suitId: number, ePlaceId: number, randSe: RandSe[], randRange: number, holes: Holes[], hid?: number }, lean = true) {
public static async createEquip(equipInfo: equipUpdate, lean = true) {
const seqId = await CounterModel.getNewCounter(COUNTER.EID);
const doc = new EquipModel();
@@ -182,4 +183,5 @@ export const EquipModel = getModelForClass(Equip);
export interface EquipType extends Pick<DocumentType<Equip>, keyof Equip> {
id: number;
};
};
export type equipUpdate = Partial<EquipType>; // 将所有字段变成可选项