Files
ZYZ/shared/pubUtils/dictionary/DicQuenchQuality.ts
2021-07-29 18:50:26 +08:00

42 lines
1.5 KiB
TypeScript

import { readFileAndParse } from '../util'
import { FILENAME } from '../../consts'
export interface DicQuenchQuality {
// id
readonly id: number;
// 装备品质
readonly quality: number;
// 品相
readonly grade: number;
// 单属性最小值
readonly singleRatioMin: number;
// 单属性最大值
readonly singleRatioMax: number;
// 初始是否可以随机出
readonly initialAvailable: number;
}
export const dicQuenchByQualityAndGrade = new Map<string, { min: number, max: number }>();
export const dicQuenchByQuality = new Map<number, { min: number, max: number }>(); // quality => {}
export function loadQuenchQuality() {
dicQuenchByQuality.clear();
dicQuenchByQualityAndGrade.clear();
let arr = readFileAndParse(FILENAME.DIC_QUENCH_QUALITY);
arr.forEach(o => {
if(o.initialAvailable == 1) {
if(!dicQuenchByQuality.has(o.quality)) {
dicQuenchByQuality.set(o.quality, { min: o.singleRatioMin, max: o.singleRatioMax });
} else {
if(o.singleRatioMin < dicQuenchByQuality.get(o.quality).min) {
dicQuenchByQuality.get(o.quality).min = o.singleRatioMin;
}
if(o.singleRatioMax > dicQuenchByQuality.get(o.quality).max) {
dicQuenchByQuality.get(o.quality).max = o.singleRatioMax;
}
}
dicQuenchByQualityAndGrade.set(`${o.quality}_${o.grade}`, { min: o.singleRatioMin, max: o.singleRatioMax });
}
});
arr = undefined;
}