✨ feat(任务): 添加任务类型
This commit is contained in:
@@ -104,7 +104,7 @@ export class NormalBattleHandler {
|
||||
if (checkResult.status == -1) {
|
||||
return checkResult.resResult
|
||||
}
|
||||
} else if (warInfo.warType == WAR_TYPE.MYSTERY || warInfo.warType == WAR_TYPE.MYSTERY_ELITE) {
|
||||
} else if (warInfo.warType == WAR_TYPE.MYSTERY) {
|
||||
let checkResult = await checkDungeonNum(roleId, 1, battleId);
|
||||
if (checkResult.status == -1) {
|
||||
return checkResult.resResult
|
||||
@@ -222,7 +222,7 @@ export class NormalBattleHandler {
|
||||
if (towerEndResult.data.towerReward)
|
||||
warReward.setFixReward(towerEndResult.data.towerReward)
|
||||
}
|
||||
} else if (warInfo.warType == WAR_TYPE.MYSTERY || warInfo.warType == WAR_TYPE.MYSTERY_ELITE) {
|
||||
} else if (warInfo.warType == WAR_TYPE.MYSTERY) {
|
||||
let checkResult = await checkDungeonAndIncrease(roleId, isSuccess?1:0, false, battleId);
|
||||
let role = await RoleModel.saveDungeonHero(roleId, battleId, heroes, isSuccess);
|
||||
if (role) {
|
||||
@@ -344,7 +344,7 @@ export class NormalBattleHandler {
|
||||
return checkResult.resResult
|
||||
}
|
||||
dailyNum = Object.assign(dailyNum, checkResult.data)
|
||||
} else if (warInfo.warType == WAR_TYPE.MYSTERY || warInfo.warType == WAR_TYPE.MYSTERY_ELITE) {
|
||||
} else if (warInfo.warType == WAR_TYPE.MYSTERY) {
|
||||
let checkResult = await checkDungeonAndIncrease(roleId, count, true, battleId);
|
||||
if (checkResult.status == -1) {
|
||||
return checkResult.resResult
|
||||
|
||||
@@ -146,7 +146,7 @@ export function calculateWarStar(warStar: WarStar[] = [], battleId: number, star
|
||||
}
|
||||
|
||||
export async function getBattleListOfMain(role: RoleType) {
|
||||
let types = [ WAR_TYPE.NORMAL, WAR_TYPE.VESTIGE, WAR_TYPE.MAIN_ELITE, WAR_TYPE.TOWER, WAR_TYPE.MYSTERY, WAR_TYPE.MYSTERY_ELITE ];
|
||||
let types = [ WAR_TYPE.NORMAL, WAR_TYPE.VESTIGE, WAR_TYPE.MAIN_ELITE, WAR_TYPE.TOWER, WAR_TYPE.MYSTERY, WAR_TYPE.BRANCH_ELITE ];
|
||||
return await getBattleListOfTypes(role, types);
|
||||
}
|
||||
|
||||
|
||||
@@ -427,13 +427,13 @@ export class CheckSingleTask {
|
||||
}
|
||||
case TASK_TYPE.HERO_QUALITY_STAR_UP: // 8. x名x品质升至x星
|
||||
{
|
||||
let { heroes, hero, oldStar } = param;
|
||||
let { heroes, hero, oldStar, oldColorStar } = param;
|
||||
if(param.heroes) { // 创建武将的时候
|
||||
let records = await getRecord();
|
||||
let num = 0;
|
||||
for(let { hid, star } of heroes) {
|
||||
for(let { hid, star, colorStar } of heroes) {
|
||||
let dicHero = gameData.hero.get(hid);
|
||||
if(dicHero.quality == dicTaskParam[1] && star == dicTaskParam[2] && records.indexOf(`${hid}`) == -1) {
|
||||
if(dicHero.quality == dicTaskParam[1] && (star + colorStar) == dicTaskParam[2] && records.indexOf(`${hid}`) == -1) {
|
||||
records.push(`${hid}`);
|
||||
num ++;
|
||||
}
|
||||
@@ -442,7 +442,7 @@ export class CheckSingleTask {
|
||||
} else { // 武将升星的时候
|
||||
let hid = hero.hid;
|
||||
let dicHero = gameData.hero.get(hid);
|
||||
if(dicHero.quality == dicTaskParam[1] && hero.star >= dicTaskParam[2] && oldStar < dicTaskParam[2] ) {
|
||||
if(dicHero.quality == dicTaskParam[1] && (hero.star + hero.colorStar) >= dicTaskParam[2] && (oldStar + oldColorStar) < dicTaskParam[2] ) {
|
||||
let records = await getRecord();
|
||||
if(records.indexOf(`${hid}`) == -1) {
|
||||
records.push(`${hid}`);
|
||||
@@ -682,7 +682,7 @@ export class CheckSingleTask {
|
||||
{
|
||||
let { warId, count } = param;
|
||||
let dicWar = gameData.war.get(warId);
|
||||
if(dicWar.warType == WAR_TYPE.MYSTERY || dicWar.warType == WAR_TYPE.MYSTERY_ELITE) {
|
||||
if(dicWar.warType == WAR_TYPE.MYSTERY) {
|
||||
result = { inc: count };
|
||||
}
|
||||
break;
|
||||
@@ -691,7 +691,7 @@ export class CheckSingleTask {
|
||||
{
|
||||
let { warId, count } = param;
|
||||
let dicWar = gameData.war.get(warId);
|
||||
if ((dicWar.warType == WAR_TYPE.MYSTERY || dicWar.warType == WAR_TYPE.MYSTERY_ELITE) && this.checkIdList(dicTaskParam, 0, warId)) {
|
||||
if ((dicWar.warType == WAR_TYPE.MYSTERY) && this.checkIdList(dicTaskParam, 0, warId)) {
|
||||
result = { inc: count };
|
||||
}
|
||||
break;
|
||||
@@ -1303,7 +1303,7 @@ export class CheckSingleTask {
|
||||
{
|
||||
let { warId, count } = param;
|
||||
let dicWar = gameData.war.get(warId);
|
||||
if(dicWar.warType == WAR_TYPE.MYSTERY || dicWar.warType == WAR_TYPE.MYSTERY_ELITE) {
|
||||
if(dicWar.warType == WAR_TYPE.MYSTERY) {
|
||||
result = { inc: count };
|
||||
}
|
||||
break;
|
||||
@@ -1389,6 +1389,21 @@ export class CheckSingleTask {
|
||||
result = { inc: count };
|
||||
break;
|
||||
}
|
||||
case TASK_TYPE.STAR_UP_SUM: // 130. 升星总和
|
||||
{
|
||||
let { count } = param;
|
||||
result = { inc: count };
|
||||
break;
|
||||
}
|
||||
case TASK_TYPE.BATTLE_BRANCH_ELITE: // 131. 主线梦魇支线
|
||||
{
|
||||
let { warId, count } = param;
|
||||
let dicWar = gameData.war.get(warId);
|
||||
if (dicWar.warType == WAR_TYPE.BRANCH_ELITE && this.checkIdList(dicTaskParam, 0, warId)) {
|
||||
result = { inc: count };
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return result
|
||||
}
|
||||
|
||||
@@ -64,7 +64,8 @@ export async function checkTaskInCreateHero(serverId: number, roleId: string, si
|
||||
export async function checkTaskInHeroStarUp(serverId: number, roleId: string, sid: string, hero: HeroType, oldStar: number) {
|
||||
let task = new CheckTask(serverId, roleId);
|
||||
task.setParam(TASK_TYPE.HERO_STAR_UP, { hero });
|
||||
task.setParam(TASK_TYPE.HERO_QUALITY_STAR_UP, { hero, oldStar });
|
||||
task.setParam(TASK_TYPE.HERO_QUALITY_STAR_UP, { hero, oldStar, oldColorStar: 0 });
|
||||
task.setParam(TASK_TYPE.STAR_UP_SUM, { count: hero.star - oldStar });
|
||||
await task.saveAndPush(sid);
|
||||
}
|
||||
|
||||
@@ -75,6 +76,8 @@ export async function checkTaskInHeroWakeUp(serverId: number, roleId: string, si
|
||||
task.setParam(TASK_TYPE.HERO_QUALITY_WAKE_UP_COUNT, { hero, oldColorStar });
|
||||
task.setParam(TASK_TYPE.HERO_WAKE_UP_COUNT, { hero, oldColorStar });
|
||||
task.setParam(TASK_TYPE.HERO_WAKE_UP_STAR_UP_COUNT, { hero, oldColorStar });
|
||||
task.setParam(TASK_TYPE.HERO_QUALITY_STAR_UP, { hero, oldStar: 6, oldColorStar });
|
||||
task.setParam(TASK_TYPE.STAR_UP_SUM, { count: hero.colorStar - oldColorStar });
|
||||
await task.saveAndPush(sid);
|
||||
}
|
||||
|
||||
@@ -136,6 +139,7 @@ export async function checkTaskInBattleStart(serverId: number, roleId: string, s
|
||||
task.setParam(TASK_TYPE.BATTLE_VESTIGE, { warId, count: 1 });
|
||||
task.setParam(TASK_TYPE.BATTLE_EXPEDITION, { warId, count: 1 });
|
||||
task.setParam(TASK_TYPE.BATTLE_MAIN_ELITE, { warId, count: 1 });
|
||||
task.setParam(TASK_TYPE.BATTLE_BRANCH_ELITE, { warId, count: 1 });
|
||||
await task.saveAndPush(sid);
|
||||
let dicWar = gameData.war.get(warId);
|
||||
if(dicWar && dicWar.warType == WAR_TYPE.NORMAL) {
|
||||
@@ -176,6 +180,7 @@ export async function checkTaskInBattleSweep(serverId: number, roleId: string, s
|
||||
task.setParam(TASK_TYPE.BATTLE_DAILY_START, { warId, count });
|
||||
task.setParam(TASK_TYPE.BATTLE_EXPEDITION_START, { warId, count });
|
||||
task.setParam(TASK_TYPE.BATTLE_DUNGEON_START, { warId, count });
|
||||
task.setParam(TASK_TYPE.BATTLE_BRANCH_ELITE, { warId, count });
|
||||
await task.saveAndPush(sid);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user