pvp:添加PVP任务
This commit is contained in:
@@ -87,21 +87,40 @@ const DicAchievementKeys: KeysEnum<DicAchievement> = {
|
||||
point: true
|
||||
};
|
||||
|
||||
|
||||
// pvp任务
|
||||
export interface DicPvpDailyTask extends DicTaskBase {
|
||||
// 奖励
|
||||
readonly taskReward: RewardInter[];
|
||||
}
|
||||
|
||||
const DicPvpDailyTaskKeys: KeysEnum<DicPvpDailyTask> = {
|
||||
id: true,
|
||||
taskType: true,
|
||||
group: true,
|
||||
taskParam: true,
|
||||
condition: true,
|
||||
taskReward: true
|
||||
};
|
||||
|
||||
export type DicTask = DicTaskBase & { type: number };
|
||||
|
||||
export const dicMainTask = new Map<number, DicMainTask>(); // 主线任务
|
||||
export const dicDailyTask = new Map<number, DicDailyTask>(); // 每日任务
|
||||
export const dicAchievement = new Map<number, DicAchievement>(); // 成就
|
||||
export const taskMap = new Map<number, Map<number, DicMainTask | DicDailyTask | DicAchievement>>();
|
||||
export const dicPvpDailyTask = new Map<number, DicDailyTask>(); // 成就
|
||||
export const taskMap = new Map<number, Map<number, DicMainTask | DicDailyTask | DicAchievement | DicDailyTask>>();
|
||||
taskMap.set(TASK_FUN_TYPE.MAIN, dicMainTask);
|
||||
taskMap.set(TASK_FUN_TYPE.DAILY, dicDailyTask);
|
||||
taskMap.set(TASK_FUN_TYPE.ACHIEVEMENT, dicAchievement);
|
||||
taskMap.set(TASK_FUN_TYPE.PVP, dicPvpDailyTask);
|
||||
|
||||
export const dicTaskType = new Map<number, DicTask[]>();
|
||||
export function loadTask() {
|
||||
dicMainTask.clear();
|
||||
dicDailyTask.clear();
|
||||
dicAchievement.clear();
|
||||
dicPvpDailyTask.clear();
|
||||
|
||||
const arrMainTask = readFileAndParse(FILENAME.DIC_MAIN_TASK);
|
||||
arrMainTask.forEach(o => {
|
||||
@@ -128,6 +147,14 @@ export function loadTask() {
|
||||
pushDicTaskType(o.taskType, TASK_FUN_TYPE.ACHIEVEMENT, o);
|
||||
});
|
||||
|
||||
const arrPvpDailyTask = readFileAndParse(FILENAME.DIC_PVP_DAILY_TASK);
|
||||
arrPvpDailyTask.forEach(o => {
|
||||
o.taskParam = parseNumberList(o.taskParam);
|
||||
o.taskReward = parseGoodStr(o.taskReward);
|
||||
o.group = 1;
|
||||
dicPvpDailyTask.set(o.id, _.pick(o, Object.keys(DicPvpDailyTaskKeys)));
|
||||
pushDicTaskType(o.taskType, TASK_FUN_TYPE.PVP, o);
|
||||
});
|
||||
}
|
||||
|
||||
function pushDicTaskType(taskType: number, type: number, o: any) {
|
||||
|
||||
Reference in New Issue
Block a user