远征:修改机器人模板计算
This commit is contained in:
@@ -91,6 +91,7 @@ import { dicKingExpRatio, loadKingExpRatio } from './dictionary/DicKingExpRatio'
|
||||
import { dicQuenchByQuality, dicQuenchRangeByQuality, dicQuenchRangeByQualityAndGrade, loadQuenchQuality } from './dictionary/DicQuenchQuality';
|
||||
import { dicQuenchConsume, loadQuenchConsume } from './dictionary/DicQuenchConsume';
|
||||
import { dicHoliday, loadHoliday } from './dictionary/DicHoliday';
|
||||
import { dicExpeditionSubAttr, loadExpeditionSubAttr } from './dictionary/DicExpeditionSubAttr';
|
||||
|
||||
export const gameData = {
|
||||
blurprtCompose: dicBlueprtCompose,
|
||||
@@ -226,7 +227,8 @@ export const gameData = {
|
||||
quenchByQuality: dicQuenchByQuality,
|
||||
equipAttributeRatio: new Map<number, number>(),
|
||||
ceRatio: new Array<{type: number, val: number}>(),
|
||||
holiday: dicHoliday
|
||||
holiday: dicHoliday,
|
||||
expeditionSubAttr: dicExpeditionSubAttr
|
||||
};
|
||||
|
||||
// 在此提供一些原先在gamedata中提供的方法,以便更方便获取gameData数据
|
||||
@@ -869,6 +871,7 @@ function loadDatas() {
|
||||
loadQuenchConsume();
|
||||
loadEquipAttributeRatio();
|
||||
loadHoliday();
|
||||
loadExpeditionSubAttr();
|
||||
}
|
||||
|
||||
// 重载dicParam
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
import { readFileAndParse } from '../util'
|
||||
import { ABI_TYPE, FILENAME, HERO_ATTR } from '../../consts'
|
||||
type KeysEnum<T> = { [P in keyof Required<T>]: true };
|
||||
const _ = require('lodash');
|
||||
|
||||
export interface DicExpeditionSubAttr {
|
||||
// 等级
|
||||
readonly lv: number;
|
||||
// 属性
|
||||
readonly attribute: {id: number, val: number}[];
|
||||
}
|
||||
|
||||
const DicExpeditionSubAttrKeys: KeysEnum<DicExpeditionSubAttr> = {
|
||||
lv: true,
|
||||
attribute: true,
|
||||
};
|
||||
|
||||
export const dicExpeditionSubAttr = new Map<number, DicExpeditionSubAttr>();
|
||||
export function loadExpeditionSubAttr() {
|
||||
dicExpeditionSubAttr.clear();
|
||||
let l = 1;
|
||||
let arr = readFileAndParse(FILENAME.DIC_EXPEDITION_SUB_ATTR);
|
||||
arr.forEach(o => {
|
||||
o.attribute = parseAttribute(o);
|
||||
o.lv = o.level;
|
||||
for(let i = l; i <= o.lv; i++) {
|
||||
dicExpeditionSubAttr.set(l, _.pick(o, Object.keys(DicExpeditionSubAttrKeys)));
|
||||
l++;
|
||||
}
|
||||
});
|
||||
arr = undefined;
|
||||
}
|
||||
|
||||
function parseAttribute(o) {
|
||||
let attribute: {id: number, val: number}[] = [];
|
||||
for(let i = ABI_TYPE.ABI_HP; i < ABI_TYPE.ABI_MAX; i++) {
|
||||
let field = HERO_ATTR[i];
|
||||
if(o[field] != undefined) {
|
||||
attribute.push({ id: i, val: o[field] });
|
||||
}
|
||||
}
|
||||
return attribute;
|
||||
}
|
||||
Reference in New Issue
Block a user