From 2171f798dea1ed3894476d258a903111dae96164 Mon Sep 17 00:00:00 2001 From: zhangxk Date: Thu, 19 Oct 2023 19:54:11 +0800 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9E=20fix(=E5=AD=A6=E5=AE=AB):=20?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E5=9C=A3=E7=89=A9=E6=95=88=E6=9E=9C2008?= =?UTF-8?q?=EF=BC=8C=E5=AF=B9=E4=BD=BF=E7=94=A8=E6=AC=A1=E6=95=B0=E8=AE=A1?= =?UTF-8?q?=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/servers/battle/handler/rougeHandler.ts | 6 ++++-- .../app/services/battle/rougeEffectService.ts | 13 +++++++++++++ 2 files changed, 17 insertions(+), 2 deletions(-) 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);