This commit is contained in:
mamengke01
2021-01-23 17:05:26 +08:00
parent 3e6ec77d56
commit bb2f17089e
12 changed files with 275 additions and 114 deletions

View File

@@ -0,0 +1,34 @@
import { readJsonFile, parseGoodStr } from '../util'
import { FILENAME } from '../../consts'
type KeysEnum<T> = { [P in keyof Required<T>]: true };
const _ = require('lodash');
export interface DicArmyTrainJuDian {
readonly id: number;
// 目标品质
readonly trainInstances: Array<{hid: number, warId: number, progress: number}>;
readonly heroRewards: Array<{id: number, count: number}>;
}
const DicArmyTrainJuDianKeys: KeysEnum<DicArmyTrainJuDian> = {
id: true,
trainInstances: true,
heroRewards: true
};
const str = readJsonFile(FILENAME.DIC_ARMY_TRAIN_JU_DIAN);
let arr = JSON.parse(str);
export const dicArmyTrainJuDian = new Map<number, DicArmyTrainJuDian>();
arr.forEach(o => {
o.trainInstances = o.gkid.split('|').map(element => {
let arr = element.split('&');
return {hid: parseInt(arr[0]), warId: parseInt(arr[1]), progress: parseInt(arr[2])};
});
o.heroRewards = parseGoodStr(o.shilianReward);
dicArmyTrainJuDian.set(o.id,_.pick(o, Object.keys(DicArmyTrainJuDianKeys)));
});
arr = undefined;

View File

@@ -0,0 +1,50 @@
import { readJsonFile } from '../util'
import { FILENAME } from '../../consts'
type KeysEnum<T> = { [P in keyof Required<T>]: true };
const _ = require('lodash');
export interface DicTrainSoloReward {
readonly id: number;
// 目标品质
readonly ratio: number;
readonly winScore: number;
readonly failScore: number;
readonly winHonour: number;
readonly failHonour: number;
}
const DicTrainSoloRewardKeys: KeysEnum<DicTrainSoloReward> = {
id: true,
ratio: true,
winScore: true,
failScore: true,
winHonour: true,
failHonour: true,
};
const str = readJsonFile(FILENAME.DIC_ARMY_TRAIN_SOLO_REWARD);
let arr = JSON.parse(str);
export const dicTrainSoloReward = new Map<number, DicTrainSoloReward>();
arr.forEach(o => {
o.winReward.split('|').map(cur=>{
let arr = cur.split('&');
if (arr[0] == 1) {
o.winScore = parseInt(arr[1]);
} else if (arr[0] == 2) {
o.winHonour = parseInt(arr[1]);
}
})
o.failReward.split('|').map(cur=>{
let arr = cur.split('&');
if (arr[0] == 1) {
o.failScore = parseInt(arr[1]);
} else if (arr[0] == 2) {
o.failHonour = parseInt(arr[1]);
}
})
dicTrainSoloReward.set(o.id,_.pick(o, Object.keys(DicTrainSoloRewardKeys)));
});
arr = undefined;