feat(gvg): 准备期:千机阁以及获取物品

This commit is contained in:
luying
2023-01-09 17:19:47 +08:00
parent 0530f931bc
commit 098a7c85c6
28 changed files with 744 additions and 106 deletions

View File

@@ -0,0 +1,40 @@
// GVG道具
import { FILENAME } from '../../consts'
import { RewardInter } from '../interface';
import { parseGoodStr, readFileAndParse } from '../util'
export interface DicGVGItem {
// 道具id
id: number;
// 点名称
name: string
// 1-种子 2-铲子 3-斧子 4-内政外政令 5-战功 6-激战期用的复活令&匕首
type: number;
// 1-每日刷新 2-赛期内刷新
refreshType: number;
// 兑换物品表消耗
consume: RewardInter[];
// 这个表里的兑换消耗
leagueConsume: RewardInter[];
// 耐久度或者产量
value: number,
// 消耗后可获得的奖励
reward: RewardInter[];
// 消耗后可获得的这张表里的奖励
leagueReward: RewardInter[];
}
export const dicGVGItem = new Map<number, DicGVGItem>();
export function loadGVGItem() {
dicGVGItem.clear();
let arr = readFileAndParse(FILENAME.DIC_GVG_ITEM);
arr.forEach(o => {
o.consume = parseGoodStr(o.consume);
o.leagueConsume = parseGoodStr(o.leagueConsume);
o.reward = parseGoodStr(o.reward);
o.leagueReward = parseGoodStr(o.leagueReward);
dicGVGItem.set(o.id, o);
});
arr = undefined;
}

View File

@@ -0,0 +1,44 @@
// GVG千机阁
import { FILENAME } from '../../consts'
import { decodeArrayListStr, readFileAndParse } from '../util'
export interface DicGVGTech {
// 唯一id
id: number;
// 点名称
name: string
// 激活后获得的内容
content: string;
// 效果类型 1-资源产量上传 2-征战中原提升 3-激战期提升 4-复活cd减少 5-箭塔 6-攻城车
type: number;
// 资源提升量啊复活cd减少量啊之类的值
param: number;
// 点排序
nodeSort: number;
// 联军等级限制
levelLimit: number;
// 前置id
prepositionId: number[][];
// 所需的战功
consume: number;
}
export const dicGVGTech = new Map<number, DicGVGTech>();
export function loadGVGTech() {
dicGVGTech.clear();
let arr = readFileAndParse(FILENAME.DIC_GVG_TECH);
arr.forEach(o => {
o.prepositionId = parsePrePositionId(o.prepositionId);
dicGVGTech.set(o.id, o);
});
arr = undefined;
}
function parsePrePositionId(str: string) {
let arr = decodeArrayListStr(str);
return arr.map(arr1 => {
return arr1.map(str => parseInt(str));
});
}