任务:任务去除funcs的判断,直接达成

This commit is contained in:
luying
2021-09-10 16:53:35 +08:00
parent 28f9c65873
commit faf4d25f60
76 changed files with 471 additions and 610 deletions
@@ -561,7 +561,7 @@ export class ComBattleHandler {
let roleId = session.get('roleId');
let roleName = session.get('roleName');
let sid = session.get('sid');
const funcs: number[] = session.get('funcs');
let { teamCode } = msg;
let team = await ComBattleTeamModel.getTeamByCode(teamCode);
clearRobotHurtTimer(team, this.robotHurtTimer);
@@ -578,7 +578,7 @@ export class ComBattleHandler {
if (!warInfo) return resResult(STATUS.BATTLE_MISS_INFO);
let role = await RoleModel.findByRoleId(roleId, 'lv');
let apJson = await setAp(roleId, role.lv, -1 * warInfo.cost, sid, funcs); // 扣除体力
let apJson = await setAp(roleId, role.lv, -1 * warInfo.cost, sid); // 扣除体力
if(!apJson) {
return resResult(STATUS.BATTLE_ACTION_POINT_LACK);
}
@@ -595,7 +595,7 @@ export class ComBattleHandler {
const goods = await addItems(roleId, roleName, sid, roleSt.fixReward);
let actordata = await roleLevelup(KING_EXP_RATIO_TYPE.BATTLE, roleId, warInfo.kingExp, session);// 主公升级经验
// 任务
await checkTaskWithGoods(roleId, sid, funcs, TASK_TYPE.COM_BATTLE_DROP, goods);
await checkTaskWithGoods(roleId, sid, TASK_TYPE.COM_BATTLE_DROP, goods);
return resResult(STATUS.SUCCESS, { battleGoods: goods, ...actordata, teamInfo: {status, teamCode, roleStatus, bossHpArr} });
}
@@ -770,7 +770,7 @@ export class ComBattleHandler {
const roleName = session.get('roleName');
const sid = session.get('sid');
const serverId = session.get('serverId');
const funcs: number[] = session.get('funcs');
const { original } = msg;
@@ -810,7 +810,7 @@ export class ComBattleHandler {
const { name } = gameData.goods.get(target);
pushNormalItemMsg(roleId, roleName, serverId, MSG_SOURCE.ORANGE_BLUEPRT_COMPOSE, target, name);
}
await checkTask(roleId, sid, funcs, TASK_TYPE.COM_BATTLE_BLUEPRT, 1, true, { quality: dicCompose.targetQuality });
await checkTask(roleId, sid, TASK_TYPE.COM_BATTLE_BLUEPRT, 1, true, { quality: dicCompose.targetQuality });
return resResult(STATUS.SUCCESS, { goods, costGold: 0 });
}
@@ -2,7 +2,7 @@ import { Application, BackendSession, HandlerService, } from 'pinus';
import { EventRecordModel } from '../../../db/EventRecord';
import { RoleModel } from '../../../db/Role';
import { EVENT_STATUS, EVENT_RECORD_STATUS, EVENT_ANSWER_STATUS, TASK_TYPE } from '../../../consts';
import { checkEvent, checkEventStatus, getEventSuccessStatus, getEvent, checkQuiz, startEvent } from '../../../services/eventSercive';
import { checkEventStatus, getEventSuccessStatus, getEvent, checkQuiz, startEvent } from '../../../services/eventSercive';
import { addItems } from '../../../services/rewardService';
import { STATUS } from '../../../consts/statusCode';
import { resResult } from '../../../pubUtils/util';
@@ -85,7 +85,7 @@ export class EventBattleHandler {
let eventStatus = session.get('eventStatus');
let sid = session.get('sid');
const serverId = session.get('serverId');
const funcs: number[] = session.get('funcs');
let event = await EventRecordModel.getEventRecordByCode(roleId, eventCode);
if (!event) {
@@ -126,9 +126,9 @@ export class EventBattleHandler {
// 推送消息刷新
// await checkEvent(session, true);
// 任务
await checkTask(roleId, sid, funcs, TASK_TYPE.BATTLE_EVENT, 1, true, { eventType: dicEvent.eventType })
await checkTask(roleId, sid, TASK_TYPE.BATTLE_EVENT, 1, true, { eventType: dicEvent.eventType })
// 活动任务
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.BATTLE_EVENT, 1, { eventType: dicEvent.eventType })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.BATTLE_EVENT, 1, { eventType: dicEvent.eventType })
return resResult(STATUS.SUCCESS, {
isSuccess,
eventCode: result.eventCode,
@@ -184,7 +184,7 @@ export class ExpeditionBattleHandler {
let roleName = session.get('roleName');
const serverId = session.get('serverId');
let sid = session.get('sid');
let funcs: number[] = session.get('funcs');
let warInfo = gameData.war.get(battleId);
if (!warInfo) {
@@ -206,7 +206,7 @@ export class ExpeditionBattleHandler {
}
let role = await RoleModel.findByRoleId(roleId, 'lv');
let apJson = await setAp(roleId, role.lv, isSuccess?-1 * warInfo.cost: 0, sid, funcs); // 扣除体力
let apJson = await setAp(roleId, role.lv, isSuccess?-1 * warInfo.cost: 0, sid); // 扣除体力
if (!apJson) {
return resResult(STATUS.BATTLE_ACTION_POINT_LACK);
}
@@ -239,7 +239,7 @@ export class ExpeditionBattleHandler {
// 更新下一关状态
await ExpeditionWarRecordModel.updateStatus(expeditionCode, expeditionId + 1, EXPEDITION_WAR_RECORD_STATUS.WAITING);
}
await checkTaskInBattleEnd(serverId, roleId, sid, funcs, battleId, dbHeroes, star);
await checkTaskInBattleEnd(serverId, roleId, sid, battleId, dbHeroes, star);
return resResult(STATUS.SUCCESS, {
expeditionCode, expeditionId,
@@ -261,7 +261,7 @@ export class ExpeditionBattleHandler {
let roleId = session.get('roleId');
let roleName = session.get('roleName');
let sid = session.get('sid');
const funcs: number[] = session.get('funcs');
const serverId = session.get('serverId');
let role = await RoleModel.findByRoleId(roleId);
@@ -301,8 +301,8 @@ export class ExpeditionBattleHandler {
let pointRewards = await getPointRewardStatus(roleId);
// 任务
await checkTask(roleId, sid, funcs, TASK_TYPE.BATTLE_EXPEDITION_BOX, 1, true, { point });
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.BATTLE_EXPEDITION_BOX, 1)
await checkTask(roleId, sid, TASK_TYPE.BATTLE_EXPEDITION_BOX, 1, true, { point });
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.BATTLE_EXPEDITION_BOX, 1)
let goods = await addItems(roleId, roleName, sid, curDicExpeditionPoint.reward);
@@ -14,7 +14,7 @@ import { RoleModel } from '../../../db/Role';
import { RScriptRecordModel } from '../../../db/RScriptRecord';
import { updateWarStar, checkBattleHeroes, roleLevelup, getBattleList } from '../../../services/normalBattleService';
import { checkDungeonNum, checkDungeonAndIncrease, saveDungeonFirst } from '../../../services/dungeonService';
import { switchOnFunc } from '../../../services/funcSwitchService';
// import { switchOnFunc } from '../../../services/funcSwitchService';
import { gameData } from '../../../pubUtils/data';
import { pushMysteryFirstMsg, pushTowerMsg, pushVestigeFirstMsg } from '../../../services/chatService';
import { nowSeconds } from '../../../pubUtils/timeUtil';
@@ -128,7 +128,7 @@ export class NormalBattleHandler {
let roleId = session.get('roleId');
let roleName = session.get('roleName');
let sid = session.get('sid');
const funcs: number[] = session.get('funcs');
let serverId = session.get('serverId');
let skipReward = false;//是否跳过奖励结算
@@ -156,7 +156,7 @@ export class NormalBattleHandler {
}
let role = await RoleModel.findByRoleId(roleId, 'lv');
let apJson = await setAp(roleId, role.lv, isSuccess? -1 * warInfo.cost: 0, sid, funcs); // 扣除体力
let apJson = await setAp(roleId, role.lv, isSuccess? -1 * warInfo.cost: 0, sid); // 扣除体力
if (!apJson) {
return resResult(STATUS.BATTLE_ACTION_POINT_LACK);
}
@@ -178,7 +178,7 @@ export class NormalBattleHandler {
// 记录事件状态
await setBattleStatus(session, roleId, battleId, isSuccess, battleCode);
} else if (warInfo.warType == WAR_TYPE.TOWER) {
let towerEndResult = await towerBattleEnd(sid, funcs, roleId, serverId, battleCode, battleId, isSuccess, heroes);
let towerEndResult = await towerBattleEnd(sid, roleId, serverId, battleCode, battleId, isSuccess, heroes);
if (towerEndResult) {
if (towerEndResult.status == -1) {
return towerEndResult.resResult;
@@ -210,7 +210,7 @@ export class NormalBattleHandler {
if (role) {
let r = new Rank(REDIS_KEY.MAIN_ELITE_RANK, { serverId });
await r.setRankWithRoleInfo(roleId, role.mainEliteWarId, role.mainEliteUpdatedAt, role);
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.BATTLE_MAIN_ELITE, 1, { mainEliteWarId: battleId })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.BATTLE_MAIN_ELITE, 1, { mainEliteWarId: battleId })
}
} else if (warInfo.warType == WAR_TYPE.ACT_SELF_SHOP) {
//糜家商队挑战成功后记录挑战次数
@@ -233,7 +233,7 @@ export class NormalBattleHandler {
// 是否首通
let condition1 = warStar.find(cur => cur.id == battleId);
if (!condition1) {
await switchOnFunc(roleId, FUNC_OPT_TYPE.BATTLE_END, battleId, session);
// await switchOnFunc(roleId, FUNC_OPT_TYPE.BATTLE_END, battleId, session);
warReward.setCondition(0, true);
pushMysteryFirstMsg(roleId, roleName, serverId, warInfo.warType, warInfo.war_id);
pushVestigeFirstMsg(roleId, roleName, serverId, warInfo.warType, warInfo.war_id);
@@ -258,7 +258,7 @@ export class NormalBattleHandler {
let actordata = await roleLevelup(KING_EXP_RATIO_TYPE.BATTLE, roleId, isSuccess ? warInfo.kingExp : 0, session);// 主公升级经验
await checkTaskInBattleEnd(serverId, roleId, sid, funcs, battleId, dbHeroes, star);
await checkTaskInBattleEnd(serverId, roleId, sid, battleId, dbHeroes, star);
// 返回值:
// towerStatus: false-本层未通过, true-本层已通过
return resResult(STATUS.SUCCESS, {
@@ -276,7 +276,7 @@ export class NormalBattleHandler {
let roleName = session.get('roleName');
let sid = session.get('sid');
let serverId = session.get('serverId');
let funcs: number[] = session.get('funcs');
let warInfo = gameData.war.get(battleId);
if (!warInfo) {
return resResult(STATUS.BATTLE_MISS_INFO);
@@ -290,7 +290,7 @@ export class NormalBattleHandler {
// 扣体力
let role = await RoleModel.findByRoleId(roleId, 'lv');
let apJson = await setAp(roleId, role.lv, -1 * warInfo.cost * count, sid, funcs); // 扣除体力
let apJson = await setAp(roleId, role.lv, -1 * warInfo.cost * count, sid); // 扣除体力
if (!apJson) {
return resResult(STATUS.BATTLE_ACTION_POINT_LACK);
}
@@ -329,9 +329,9 @@ export class NormalBattleHandler {
});
// 任务
await checkTaskWithWar(roleId, sid, funcs, TASK_TYPE.BATTLE_MAIN_SWEEP, battleId, [], count, 0);
await checkTaskWithWar(roleId, sid, TASK_TYPE.BATTLE_MAIN_SWEEP, battleId, [], count, 0);
//活动任务
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.BATTLE_MAIN_SWEEP, count, { battleId })
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.BATTLE_MAIN_SWEEP, count, { battleId })
return resResult(STATUS.SUCCESS, {
battleId, count,
@@ -38,7 +38,7 @@ export class PvpHandler {
let { heroScores: addHeroScores } = msg;
let roleId = session.get('roleId');
let sid = session.get('sid');
const funcs: number[] = session.get('funcs');
let { heroScores, hisScore } = await PvpDefenseModel.findByRoleId(roleId);
let score = 0;
for (let { hid, score: heroScore } of addHeroScores) {
@@ -69,7 +69,7 @@ export class PvpHandler {
await r.setRankWithRoleInfo(roleId, pvpDefense.score, pvpDefense.updatedAt.getTime(), role);
// 任务
await checkTask(roleId, sid, funcs, TASK_TYPE.PVP_HERO_SCORE, 0, false, { heroScores });
await checkTask(roleId, sid, TASK_TYPE.PVP_HERO_SCORE, 0, false, { heroScores });
return resResult(STATUS.SUCCESS, { score, hisScore, heroScores });
}
@@ -239,7 +239,7 @@ export class PvpHandler {
let roleId = session.get('roleId');
let roleName = session.get('roleName');
let sid = session.get('sid');
const funcs: number[] = session.get('funcs');
const serverId = session.get('serverId');
const { battleCode, isSuccess, myHeroes, oppHeroes } = msg;
@@ -307,11 +307,11 @@ export class PvpHandler {
await r.setRankWithRoleInfo(roleId, pvpDefense.score, pvpDefense.updatedAt.getTime(), role);
let myRank = await r.getMyRank({ roleId });
await checkTaskInPvpEnd(roleId, sid, funcs, isSuccess, heroScores);
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.PVP, 1)
await checkTaskInPvpEnd(roleId, sid, isSuccess, heroScores);
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.PVP, 1)
if (isSuccess) {
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.PVP_WIN, 1)
await checkActivityTask(serverId, sid, funcs, roleId, TASK_TYPE.PVP_WIN_SERIES, 1)
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.PVP_WIN, 1)
await checkActivityTask(serverId, sid, roleId, TASK_TYPE.PVP_WIN_SERIES, 1)
}
return resResult(STATUS.SUCCESS, {
@@ -485,7 +485,7 @@ export class PvpHandler {
let roleId = session.get('roleId');
let sid: string = session.get('sid');
let roleName = session.get('roleName');
const funcs: number[] = session.get('funcs');
let { seasonEndTime } = await PVPConfigModel.findCurPVPConfig();
let { hisScore, receivedBox, challengeCnt: lastChallengeCnt, challengeRefTime: lastChallengeRefTime } = await PvpDefenseModel.findByRoleIdIncludeAll(roleId);
let pvpBoxs = getPvpBoxs();
@@ -501,7 +501,7 @@ export class PvpHandler {
await PvpDefenseModel.updateInfo(roleId, { receivedBox, challengeCnt, challengeRefTime });
let result = await addItems(roleId, roleName, sid, pvpBox.reward);
// 任务
await checkTask(roleId, sid, funcs, TASK_TYPE.PVP_RECEIVE_BOX, 1, true, {});
await checkTask(roleId, sid, TASK_TYPE.PVP_RECEIVE_BOX, 1, true, {});
return resResult(STATUS.SUCCESS, { goods: result, receivedBox, challengeCnt, challengeRefTime });
}