🐞 fix(稷下学宫): 修复法阵影响血量, 修改圣物usecount影响法阵

This commit is contained in:
zhangxk
2023-09-07 15:47:52 +08:00
parent 89491b564c
commit 1a079a190c
2 changed files with 6 additions and 5 deletions
@@ -45,18 +45,18 @@ async function calCircleCe(roleId: string, unlockedTech: number[], circles: Circ
export async function updateEffectId(techData: RougelikeTechType) {
let effectIds = getTechEffectIdsByData(techData);
if(!compareNumberArray(effectIds, techData.effectIds||[])) {
await RougelikeTechModel.updateEffectId(techData.roleId, effectIds);
if (hasMaxHpUpdate(effectIds, techData.effectIds||[])) {
const dbRecord = await RougelikeRecordModel.findByRoleIdAndStatus(techData.roleId, ROUGE_LIKE_STATUS.SUCCESS)
if(dbRecord) await updateMaxHp(techData.roleId, dbRecord.gameCode, dbRecord.type, dbRecord.grade)
}
await RougelikeTechModel.updateEffectId(techData.roleId, effectIds);
}
}
function hasMaxHpUpdate(effectIds: number[], oldEffectIds: number[]) {
let newEffectIds: number[] = [];
for(let effectId of effectIds) {
if (oldEffectIds.includes(effectId)) newEffectIds.push(effectId);
if (!oldEffectIds.includes(effectId)) newEffectIds.push(effectId);
}
for(let effectId of newEffectIds) {
let dicRougeEffect = gameData.rougeEffect.get(effectId);