diff --git a/game-server/app/servers/battle/handler/comBattleHandler.ts b/game-server/app/servers/battle/handler/comBattleHandler.ts index a3630e46a..a87dd2ff1 100644 --- a/game-server/app/servers/battle/handler/comBattleHandler.ts +++ b/game-server/app/servers/battle/handler/comBattleHandler.ts @@ -24,7 +24,7 @@ import { pushComBtlTeamMsg, pushFriendTeamInviteMsg, pushNormalItemMsg, pushTeam import { EXTERIOR } from '../../../pubUtils/dicParam'; import { getZeroPointD, getTimeFunD, getSeconds, nowSeconds } from '../../../pubUtils/timeUtil'; import { FriendParams } from '../../../domain/roleField/friend'; -import { checkActivityTask, checkTask, checkTaskWithArgs, checkTaskWithGoods } from '../../../services/taskService'; +import { checkActivityTask, checkTask, checkTaskInComBattleStart, checkTaskWithArgs, checkTaskWithGoods } from '../../../services/taskService'; import { gameData, getWarByBlueprtId } from '../../../pubUtils/data'; import { HeroModel } from '../../../db/Hero'; @@ -466,6 +466,7 @@ export class ComBattleHandler { updateRobotHurtByTime(teamStatus, st, COM_BTL_CONST.ROBOT_BASE_TIME_INTERVAL + idx, channel, this.robotHurtTimer, this.teamMap); } }); + await checkTaskInComBattleStart(teamStatus.roleStatus, teamStatus.capId, teamStatus.quality); return resResult(STATUS.SUCCESS); } diff --git a/game-server/app/servers/battle/handler/pvpHandler.ts b/game-server/app/servers/battle/handler/pvpHandler.ts index 492f86c65..af1c0fa68 100644 --- a/game-server/app/servers/battle/handler/pvpHandler.ts +++ b/game-server/app/servers/battle/handler/pvpHandler.ts @@ -149,6 +149,7 @@ export class PvpHandler { const { warId, roleId: oppRoleId } = msg; let roleId = session.get('roleId'); let roleName = session.get('roleName'); + let sid = session.get('sid'); let warInfo = gameData.war.get(warId); if (!warInfo) { @@ -179,7 +180,8 @@ export class PvpHandler { warType: warInfo.warType, record: { heroes, pos: curOpp.pos, oppRoleId } } - }, true); + }, true); + await checkTask(roleId, sid, TASK_TYPE.PVP, 1, true, {}); return resResult(STATUS.SUCCESS, { battleCode diff --git a/game-server/app/services/comBattleService.ts b/game-server/app/services/comBattleService.ts index cb08ac0f1..252555b1c 100644 --- a/game-server/app/services/comBattleService.ts +++ b/game-server/app/services/comBattleService.ts @@ -19,7 +19,6 @@ import { getRoleIds } from '../pubUtils/friendUtil'; import { getTeamSearchByQuality, rmRoleFromQueue } from './redisService'; import { addUserToChannel } from './roleService'; import { ChannelUser } from '../domain/ChannelUser'; -import { checkActivityTask, checkTaskInComBattleEnd } from './taskService'; import { getRewardByBlueprtId, gameData, getBossHpByBlueprtId } from '../pubUtils/data'; import { getFriendPointObject } from '../pubUtils/itemUtils'; import { DicWar } from '../pubUtils/dictionary/DicWar'; @@ -275,10 +274,6 @@ export async function handleComBtlProgress(teamStatus: MemComBtlTeam, robotHurtT clearRobotHurtTimer(teamStatus, robotHurtTimer); channel.pushMessage('onTeamComplete', resResult(STATUS.SUCCESS, { teamCode, result })); - // 任务 - await checkTaskInComBattleEnd(teamStatus.roleStatus, capId, quality); - - teamMap.delete(teamCode); } } diff --git a/game-server/app/services/taskService.ts b/game-server/app/services/taskService.ts index 3d919c452..9e06f22d0 100644 --- a/game-server/app/services/taskService.ts +++ b/game-server/app/services/taskService.ts @@ -160,7 +160,7 @@ export async function checkTaskInBattleSweep(serverId: number, roleId: string, s } } -export async function checkTaskInComBattleEnd(roleStatus: RoleStatus[], capId: string, quality: number) { +export async function checkTaskInComBattleStart(roleStatus: RoleStatus[], capId: string, quality: number) { // console.log('********', JSON.stringify(roleStatus), capId, quality) for (let { roleId, isRobot } of roleStatus) { if (!isRobot) { @@ -183,7 +183,6 @@ export async function checkTaskInComBattleEnd(roleStatus: RoleStatus[], capId: s } export async function checkTaskInPvpEnd(roleId: string, sid: string, isSuccess: boolean, heroScores: HeroScores[]) { - await checkTask(roleId, sid, TASK_TYPE.PVP, 1, true, {}); if (isSuccess) { await checkTask(roleId, sid, TASK_TYPE.PVP_WIN, 1, true, {}); await checkTask(roleId, sid, TASK_TYPE.PVP_WIN_SERIES, 1, true, {}); diff --git a/shared/consts/statusCode.ts b/shared/consts/statusCode.ts index 2d560e5cc..46ba42af8 100644 --- a/shared/consts/statusCode.ts +++ b/shared/consts/statusCode.ts @@ -113,7 +113,7 @@ export const STATUS = { COM_BATTLE_CE_LIMIT: { code: 20608, simStr: '战力不足' }, COM_BATTLE_JOIN_ERR: { code: 20609, simStr: '加入队伍失败' }, COM_BATTLE_NO_VALID_TEAM: { code: 20610, simStr: '没有合适的队伍' }, - COM_BATTLE_TEAM_INVALID: { code: 20611, simStr: '队伍异常' }, + COM_BATTLE_TEAM_INVALID: { code: 20611, simStr: '队伍已过期' }, COM_BATTLE_UPDATE_HEROES_ERR: { code: 20612, simStr: '更新阵容失败' }, COM_BATTLE_CAP_ONLY: { code: 20613, simStr: '只有队长可以操作' }, COM_BATTLE_TEAM_NO_READY: { code: 20614, simStr: '队友未准备好' },