✨ feat(gvg): 任务
This commit is contained in:
40
shared/pubUtils/dictionary/DicGVGTask.ts
Normal file
40
shared/pubUtils/dictionary/DicGVGTask.ts
Normal file
@@ -0,0 +1,40 @@
|
||||
// GVG任务
|
||||
import { FILENAME } from '../../consts'
|
||||
import { RewardInter } from '../interface';
|
||||
import { parseGoodStr, parseNumberList, readFileAndParse } from '../util'
|
||||
|
||||
export interface DicGVGTask {
|
||||
// 唯一id
|
||||
id: number;
|
||||
// 任务id
|
||||
taskId: number;
|
||||
// 任务类型
|
||||
taskType: number;
|
||||
// 任务参数
|
||||
taskParam: number[];
|
||||
// 条件
|
||||
condition: number;
|
||||
// 普通背包奖励
|
||||
reward: RewardInter[];
|
||||
// 联军背包奖励
|
||||
leagueReward: RewardInter[];
|
||||
}
|
||||
|
||||
export const dicGVGTask = new Map<number, DicGVGTask>();
|
||||
export const dicGVGTaskByType = new Map<number, number[]>(); // type => []
|
||||
export function loadGVGTask() {
|
||||
dicGVGTask.clear();
|
||||
|
||||
let arr = readFileAndParse(FILENAME.DIC_GVG_TASK);
|
||||
arr.forEach(o => {
|
||||
o.taskParam = parseNumberList(o.taskParam);
|
||||
o.reward = parseGoodStr(o.reward);
|
||||
o.leagueReward = parseGoodStr(o.leagueReward);
|
||||
dicGVGTask.set(o.taskId, o);
|
||||
if(!dicGVGTaskByType.has(o.taskType)) {
|
||||
dicGVGTaskByType.set(o.taskType, []);
|
||||
}
|
||||
dicGVGTaskByType.get(o.taskType)?.push(o.taskId);
|
||||
});
|
||||
arr = undefined;
|
||||
}
|
||||
Reference in New Issue
Block a user