44 lines
1.7 KiB
TypeScript
44 lines
1.7 KiB
TypeScript
/**
|
|
* 特性卡
|
|
*/
|
|
|
|
import { parseNumberList, readFileAndParse } from '../util'
|
|
import { FILENAME } from '../../consts'
|
|
|
|
export interface DicRougePassiveCard {
|
|
readonly id: number;
|
|
readonly group: number; // 同样的group之间才可以特训
|
|
readonly lv: number; // 特训等级,可以初始获得不同等级
|
|
readonly name: string;
|
|
readonly quality: number; // 品质
|
|
readonly authorType: number; // 所属百家流派,在该流派试炼中出现概率提升
|
|
readonly seid: string; // 纯战场、服务器不读
|
|
readonly content: string;
|
|
readonly passiveLabel: number[]; // 关联其他特性卡,获得这个特性卡之后他relationId的概率提升
|
|
readonly holyLabel: number[]; // 关联圣物,获得这个特性卡之后圣物概率提升
|
|
readonly strengthConsume: number; // 强化消耗
|
|
readonly price: number; // 试炼币购买
|
|
readonly getLimit: number; //获取上限
|
|
}
|
|
|
|
export const dicRougePassiveCard = new Map<number, DicRougePassiveCard>();
|
|
export const dicRougePassiveCardByGroup = new Map<number, DicRougePassiveCard[]>();
|
|
export function loadRougePassiveCard() {
|
|
dicRougePassiveCard.clear();
|
|
dicRougePassiveCardByGroup.clear();
|
|
|
|
let arr = readFileAndParse(FILENAME.DIC_ROUGE_PASSIVE_CARD);
|
|
|
|
|
|
arr.forEach(o => {
|
|
o.passiveLabel = parseNumberList(o.passiveLabel);
|
|
o.holyLabel = parseNumberList(o.holyLabel);
|
|
|
|
dicRougePassiveCard.set(o.id, o);
|
|
if (!dicRougePassiveCardByGroup.has(o.group)) {
|
|
dicRougePassiveCardByGroup.set(o.group, []);
|
|
}
|
|
dicRougePassiveCardByGroup.get(o.group).push(o);
|
|
});
|
|
arr = undefined;
|
|
} |