奇遇: 前置关卡限制条件
This commit is contained in:
@@ -8,6 +8,7 @@ import { STATUS } from '../consts/statusCode';
|
||||
import { gameData } from '../pubUtils/data';
|
||||
import { DicQuestion } from '../pubUtils/dictionary/DicQuestion';
|
||||
import { sendMessageToUserWithSuc } from './pushService';
|
||||
import { WarStar } from '../domain/dbGeneral';
|
||||
|
||||
/**
|
||||
* 从检查接口调用,检查是否有这么个战斗,顺便保存一下battleCode
|
||||
@@ -166,8 +167,8 @@ export async function refreshEvent(num: number, roleId: string, roleName: string
|
||||
let dicEvent = gameData.eventList.filter(cur => cur.movePointArray && cur.movePointArray.length > 0);
|
||||
let role = await RoleModel.findByRoleId(roleId);
|
||||
dicEvent = dicEvent.filter(cur => { // 筛选适合等级
|
||||
let { suitLevel } = cur;
|
||||
return suitLevel.min <= role.lv && suitLevel.max >= role.lv
|
||||
let { suitLevel, previousGk } = cur;
|
||||
return suitLevel.min <= role.lv && suitLevel.max >= role.lv && checkPreviousGk(previousGk, role.warStar)
|
||||
});
|
||||
if(EVENT_RANDOM_TYPE_ONE_OPEN) {
|
||||
let historyRecord = await EventRecordModel.getHostoryEventRecord(roleId);
|
||||
@@ -240,6 +241,12 @@ export async function refreshEvent(num: number, roleId: string, roleName: string
|
||||
return event;
|
||||
}
|
||||
|
||||
export function checkPreviousGk(previousGk: number, warStar: WarStar[]) {
|
||||
if(!previousGk) return true;
|
||||
let preBattle = warStar.findIndex(cur => cur.id == previousGk);
|
||||
return preBattle != -1;
|
||||
}
|
||||
|
||||
/**
|
||||
* 随机出当前事件的位置
|
||||
*
|
||||
|
||||
@@ -29,6 +29,8 @@ export interface DicEvent {
|
||||
readonly weight: number;
|
||||
// 移动点
|
||||
readonly movePointArray: Array<number>;
|
||||
// 必须通过的关卡
|
||||
readonly previousGk: number;
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user