Revert PR #8804 as it caused issues

Fixes #8866
Reopens #8042
This commit is contained in:
LocalIdentity
2025-08-01 16:53:58 +10:00
parent 0b8babb506
commit 2a5efed4bf
2 changed files with 4 additions and 12 deletions

View File

@@ -486,6 +486,9 @@ function calcs.buildActiveSkillModList(env, activeSkill)
if level.manaMultiplier then
skillModList:NewMod("SupportManaMultiplier", "MORE", level.manaMultiplier, skillEffect.grantedEffect.modSource)
end
if level.manaReservationPercent then
activeSkill.skillData.manaReservationPercent = level.manaReservationPercent
end
-- Handle multiple triggers situation and if triggered by a trigger skill save a reference to the trigger.
local match = skillEffect.grantedEffect.addSkillTypes and (not skillFlags.disable)
if match and skillEffect.grantedEffect.isTrigger then
@@ -495,8 +498,6 @@ function calcs.buildActiveSkillModList(env, activeSkill)
else
activeSkill.triggeredBy = skillEffect
end
elseif level.manaReservationPercent then
activeSkill.skillData.manaReservationPercent = level.manaReservationPercent
end
if level.PvPDamageMultiplier then
skillModList:NewMod("PvpDamageMultiplier", "MORE", level.PvPDamageMultiplier, skillEffect.grantedEffect.modSource)
@@ -507,15 +508,6 @@ function calcs.buildActiveSkillModList(env, activeSkill)
end
end
if activeSkill.activeEffect.srcInstance then
local supportEffect = activeSkill.activeEffect.srcInstance.supportEffect
if supportEffect and supportEffect.grantedEffect.isTrigger then
for effect, _ in pairs(supportEffect.isSupporting) do
activeSkill.skillData.manaReservationPercent = (activeSkill.skillData.manaReservationPercent or 0) + (supportEffect.grantedEffect.levels[supportEffect.level].manaReservationPercent or 0)
end
end
end
-- Apply gem/quality modifiers from support gems
skillModList:NewMod("GemLevel", "BASE", activeSkill.activeEffect.srcInstance and activeSkill.activeEffect.srcInstance.level or activeSkill.activeEffect.level, "Max Level")
for _, supportProperty in ipairs(skillModList:Tabulate("LIST", activeSkill.skillCfg, "SupportedGemProperty")) do

View File

@@ -1654,7 +1654,7 @@ function calcs.perform(env, skipEHP)
breakdown.ManaReserved = { reservations = { } }
end
for _, activeSkill in ipairs(env.player.activeSkillList) do
if activeSkill.skillTypes[SkillType.HasReservation] and not activeSkill.skillTypes[SkillType.ReservationBecomesCost] then
if (activeSkill.skillTypes[SkillType.HasReservation] or activeSkill.skillData.SupportedByAutoexertion) and not activeSkill.skillTypes[SkillType.ReservationBecomesCost] then
local skillModList = activeSkill.skillModList
local skillCfg = activeSkill.skillCfg
local mult = floor(skillModList:More(skillCfg, "SupportManaMultiplier"), 4)