活动:30目标任务统计
This commit is contained in:
+25
-10
@@ -517,21 +517,24 @@ export async function accomplishTask(roleId: string, taskType: TASK_TYPE, count:
|
||||
}
|
||||
|
||||
//30天任务统计
|
||||
allActivity = await ActivityModel.findOpenActivityByType(ACTIVITY_TYPE.THIRTY_DAYS, new Date());
|
||||
for (let activity of allActivity) {
|
||||
let thirtyDaysActivity = new ThirtyDaysData(activity);
|
||||
let taskArray = thirtyDaysActivity.findTaskByType(taskType);
|
||||
for (let task of taskArray) {
|
||||
let addCount = isComplete(roleId, task.taskType, task.taskParam, count, parma);
|
||||
if (addCount) {
|
||||
if (taskType == TASK_TYPE.ROLE_LV || taskType == TASK_TYPE.ROLE_TITLE) {
|
||||
await ActivityThirtyDaysModel.setTaskCount(thirtyDaysActivity.activityId, roleId, task.pageIndex, task.cellIndex, task.taskType, addCount);
|
||||
} else {
|
||||
if (taskType === TASK_TYPE.HERO_QUALITY_STAR_UP ||
|
||||
taskType === TASK_TYPE.HERO_QUALITY_TO_QUALITY_COUNT ||
|
||||
taskType === TASK_TYPE.HERO_WAKE_UP_COUNT ||
|
||||
taskType === TASK_TYPE.HERO_WAKE_UP_STAR_UP_COUNT) {
|
||||
allActivity = await ActivityModel.findOpenActivityByType(ACTIVITY_TYPE.THIRTY_DAYS, new Date());
|
||||
for (let activity of allActivity) {
|
||||
let thirtyDaysActivity = new ThirtyDaysData(activity);
|
||||
let taskArray = thirtyDaysActivity.findTaskByType(taskType);
|
||||
for (let task of taskArray) {
|
||||
let addCount = isComplete(roleId, task.taskType, task.taskParam, count, parma);
|
||||
if (addCount) {
|
||||
await ActivityThirtyDaysModel.addTaskCount(thirtyDaysActivity.activityId, roleId, task.pageIndex, task.cellIndex, task.taskType, addCount);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -562,9 +565,21 @@ export function isComplete(roleId: string, taskType: TASK_TYPE, taskParam: strin
|
||||
case TASK_TYPE.HERO_NUM:
|
||||
addCount = count;
|
||||
break;
|
||||
|
||||
case TASK_TYPE.HERO_QUALITY_STAR_UP://herocount&quality&star&
|
||||
addCount = (param[1] == paramObj.quality) && (param[2] == paramObj.star) ? count : 0;
|
||||
break;
|
||||
case TASK_TYPE.HERO_QUALITY_TO_QUALITY_COUNT://herocount&quality&star& {oldQuality, quality: hero.quality}
|
||||
addCount = (param[1] == paramObj.oldQuality) && (param[2] == paramObj.quality) ? count : 0;
|
||||
break;
|
||||
case TASK_TYPE.HERO_WAKE_UP_COUNT://herocount&quality
|
||||
addCount = (param[1] == paramObj.quality) ? count : 0;
|
||||
break;
|
||||
case TASK_TYPE.HERO_WAKE_UP_STAR_UP_COUNT://herocount&star&
|
||||
addCount = (param[1] == paramObj.star) ? count : 0;
|
||||
break;
|
||||
|
||||
|
||||
case TASK_TYPE.ROLE_TITLE://重置数据
|
||||
addCount = param[0] <= count ? count : 0;
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user