diff --git a/game-server/app/servers/battle/handler/rougeHandler.ts b/game-server/app/servers/battle/handler/rougeHandler.ts index 848d6e81b..27fc92903 100644 --- a/game-server/app/servers/battle/handler/rougeHandler.ts +++ b/game-server/app/servers/battle/handler/rougeHandler.ts @@ -25,7 +25,7 @@ import { DicRougeHolyCard } from '../../../pubUtils/dictionary/DicRougeHolyCard' import { DicRougeSkillCard } from '../../../pubUtils/dictionary/DicRougeSkillCard'; import { DicRougeOptionGroup } from '../../../pubUtils/dictionary/DicRougeOptionGroup'; import { addItems, getRougeTechScoreObject, handleCost } from '../../../services/role/rewardService'; -import { getEffectWhenGameStart, getCharaHp, getAddCoin, getNoBossRecoveryHp, getBattleRecoveryNum, getRecoveryExtendHp, getTrainCardDiscount, checkCanChooseSkillCard, checkCanReRandomReward } from '../../../services/battle/rougeEffectService'; +import { getEffectWhenGameStart, getCharaHp, getAddCoin, getNoBossRecoveryHp, getBattleRecoveryNum, getRecoveryExtendHp, getTrainCardDiscount, checkCanChooseSkillCard, checkCanReRandomReward, getEnterGame } from '../../../services/battle/rougeEffectService'; import { RougelikeExtendModel } from '../../../db/RougelikeExtend'; import * as util from 'util'; import { DicRougePassiveCard } from '../../../pubUtils/dictionary/DicRougePassiveCard'; @@ -511,6 +511,8 @@ export class RougeHandler { if (status == 1 && arrAuthorType.length > 0 && arrAuthorType.every(cur => cur == arrAuthorType[0])) { await checkTask(serverId, roleId, sid, TASK_TYPE.ROUGE_BOSS_PASS, { authorType: arrAuthorType[0], count: 1 }); } + + await getEnterGame(roleId, gameCode); return resResult(STATUS.SUCCESS, { status, gameCode, detailCode, charas, incCoin }); } @@ -770,7 +772,7 @@ export class RougeHandler { cardId = getRandEelmWithWeight(newCards).dic.cardId; } - if(cardId > 0) handleAddFun.pushHolyCard(cardId); + if (cardId > 0) handleAddFun.pushHolyCard(cardId); } status = 1; diff --git a/game-server/app/services/battle/rougeEffectService.ts b/game-server/app/services/battle/rougeEffectService.ts index be9b4dae3..8c8957d66 100644 --- a/game-server/app/services/battle/rougeEffectService.ts +++ b/game-server/app/services/battle/rougeEffectService.ts @@ -460,6 +460,19 @@ export async function getAddPassiveWeight(roleId: string, gameCode: string, auth return addPassiveWeight; } +// 2008 +export async function getEnterGame(roleId: string, gameCode: string) { + let rougeEffect = new RougeEffect(roleId, gameCode); + let { newEffect, holyMap } = await rougeEffect.getEffectData([ + ROUGE_EFFECT_TYPE.HOLY_ENEMY_MAIN_ATTR_DOWN,//2008 + ]); + if (newEffect.length == 0) return; + for (const { effectParam, cardCode } of newEffect) { + if (!getHolyCardIsUse(holyMap.get(cardCode))) continue; + await updateHolyUseCount(holyMap.get(cardCode), gameCode) + } +} + // 非boss战斗失败视为胜利,并且满血复活 2009 export async function getNoBossRecoveryHp(roleId: string, gameCode: string) { let rougeEffect = new RougeEffect(roleId, gameCode);