试炼
This commit is contained in:
@@ -49,6 +49,8 @@ import { dicGuildActiveDayReward } from './dictionary/DicGuildActiveDayReward';
|
||||
import { dicGuildActiveWeekReward } from './dictionary/DicGuildActiveWeekReward';
|
||||
import { dicGuildPosition } from "./dictionary/DicGuildPosition";
|
||||
import { dicMail } from "./dictionary/DicMail";
|
||||
import { dicArmyTrainJuDian } from './dictionary/dicArmyTrainJuDian';
|
||||
import { dicTrainSoloReward } from './dictionary/dicTrainSoloReward';
|
||||
|
||||
export const gameData = {
|
||||
blurprtCompose: dicBlueprtCompose,
|
||||
@@ -121,7 +123,8 @@ export const gameData = {
|
||||
guildActiveDayReward: dicGuildActiveDayReward,
|
||||
guildActiveWeekReward: dicGuildActiveWeekReward,
|
||||
guildPosition: dicGuildPosition,
|
||||
mail: dicMail
|
||||
armyTrainJuDian: dicArmyTrainJuDian,
|
||||
trainSoloReward: dicTrainSoloReward
|
||||
};
|
||||
|
||||
// 在此提供一些原先在gamedata中提供的方法,以便更方便获取gameData数据
|
||||
@@ -334,4 +337,16 @@ export function hasStructureConsume(structureId: number, level: number) {
|
||||
|
||||
export function getBossByLv(lv: number) {
|
||||
return gameData.bossBase.get(lv);
|
||||
}
|
||||
}
|
||||
|
||||
export function getArmyTrainJuDian(trainId: number) {
|
||||
return gameData.armyTrainJuDian.get(trainId);
|
||||
}
|
||||
export function getTrainSoloReward(id: number) {
|
||||
return gameData.trainSoloReward.get(id);
|
||||
}
|
||||
export function getTrainBaseByLv(lv: number) {
|
||||
return gameData.trainBase.get(lv);
|
||||
}
|
||||
|
||||
|
||||
|
||||
34
shared/pubUtils/dictionary/DicArmyTrainJuDian.ts
Normal file
34
shared/pubUtils/dictionary/DicArmyTrainJuDian.ts
Normal 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;
|
||||
50
shared/pubUtils/dictionary/DicTrainSoloReward.ts
Normal file
50
shared/pubUtils/dictionary/DicTrainSoloReward.ts
Normal 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;
|
||||
Reference in New Issue
Block a user