远征:添加随机地图buff

This commit is contained in:
luying
2021-08-30 15:44:49 +08:00
parent 3321871961
commit 4078508505
4 changed files with 16 additions and 9 deletions
+6 -3
View File
@@ -27,6 +27,8 @@ export default class ExpeditionWarRecord extends BaseModel {
expeditionId: number; // 远征序号
@prop({ required: true, default: 0 })
battleId: number; // 相关关卡id
@prop({ required: true, default: 0 })
mapseid: number; // 关卡随机buff
@prop({ required: true, default: '' })
battleCode: string; // 关联关卡唯一值
@prop({ required: true, default: 0 })
@@ -48,14 +50,14 @@ export default class ExpeditionWarRecord extends BaseModel {
}
public static async getRecordByCodeAndId(expeditionCode: string, expeditionId: number, lean = true) {
const result: ExpeditionWarRecordType = await ExpeditionWarRecordModel.findOne({ expeditionCode, expeditionId }).select('expeditionId battleId battleCode battleStatus enemyFrom enemies enemiesCurHpAp ce').lean(lean);
const result: ExpeditionWarRecordType = await ExpeditionWarRecordModel.findOne({ expeditionCode, expeditionId }).select('expeditionId battleId battleCode battleStatus enemyFrom enemies enemiesCurHpAp ce mapseid').lean(lean);
return result;
}
public static async saveRecord(expeditionCode: string, expeditionId: number, params: {roleId: string, battleId: number, enemyFrom: number, enemyId: string, enemies: Array<any>, battleStatus: number}, lean = true) {
public static async saveRecord(expeditionCode: string, expeditionId: number, params: ExpeditionWarRecordUpdate, lean = true) {
const doc = new ExpeditionWarRecordModel();
const update = Object.assign(doc.toJSON(), params, {expeditionCode, expeditionId});
console.log('*****', JSON.stringify(update));
// console.log('*****', JSON.stringify(update));
const result: ExpeditionWarRecordType = await ExpeditionWarRecordModel.findOneAndUpdate({ expeditionCode, expeditionId }, update, {new: true, upsert: true}).select('expeditionId battleId battleCode battleStatus enemyFrom enemies enemiesCurHpAp ce').lean(lean);
return result;
}
@@ -89,3 +91,4 @@ export default class ExpeditionWarRecord extends BaseModel {
export const ExpeditionWarRecordModel = getModelForClass(ExpeditionWarRecord);
export interface ExpeditionWarRecordType extends Pick<DocumentType<ExpeditionWarRecord>, keyof ExpeditionWarRecord>{};
export type ExpeditionWarRecordUpdate = Partial<ExpeditionWarRecordType>; // 将所有字段变成可选项
+4 -1
View File
@@ -1,5 +1,5 @@
// 关卡表
import {decodeArrayListStr, decodeArrayStr, readFileAndParse} from '../util'
import {decodeArrayListStr, decodeArrayStr, parseNumberList, readFileAndParse} from '../util'
import { WAR_RELATE_TABLES, WAR_TYPE } from '../../consts';
export interface DicWar {
@@ -36,6 +36,8 @@ export interface DicWar {
readonly teammateReward: Array<{id: number, count: number}>;
// 镇念塔禁用角色
readonly fobiddenCharactor: Array<{type: number, id: number}>;
// 远征随机buff
readonly mapseid: number[];
}
export const dicWar = new Map<number, DicWar>();
@@ -55,6 +57,7 @@ export function loadWar() {
o.jackpotReward = parseJackpotReward(o.jackpotReward);
o.teammateReward = parseFixReward(o.teammateReward);
o.fobiddenCharactor = parseForbiddenChara(o.fobiddenCharactor);
o.mapseid = parseNumberList(o.mapseid);
dicWar.set(o.war_id, o);
if(o.warType == WAR_TYPE.PVP) {