diff --git a/spec/System/TestDefence_spec.lua.rej b/spec/System/TestDefence_spec.lua.rej new file mode 100644 index 0000000000..c09120100a --- /dev/null +++ b/spec/System/TestDefence_spec.lua.rej @@ -0,0 +1,27 @@ +diff a/spec/System/TestDefence_spec.lua b/spec/System/TestDefence_spec.lua (rejected hunks) +@@ -17,6 +17,25 @@ describe("TestDefence", function() + return build.calcsTab.calcs.reducePoolsByDamage(nil, takenDamages, build.calcsTab.calcsEnv.player) + end + ++ it("applies Consecrated Ground curse reduction to the player and minion", function() ++ build.skillsTab:PasteSocketGroup("Raise Zombie 20/0 1") ++ build.configTab.input.conditionOnConsecratedGround = true ++ build.configTab.input.playerCursedWithElementalWeakness = 20 ++ build.configTab:BuildModList() ++ runCallback("OnFrame") ++ ++ assert.are.equals(50, build.calcsTab.mainOutput.CurseEffectOnSelf) ++ assert.are.equals(50, build.calcsTab.mainEnv.minion.output.CurseEffectOnSelf) ++ local fireResistOnConsecratedGround = build.calcsTab.mainOutput.FireResist ++ ++ newBuild() ++ build.configTab.input.playerCursedWithElementalWeakness = 20 ++ build.configTab:BuildModList() ++ runCallback("OnFrame") ++ ++ assert.is_true(fireResistOnConsecratedGround > build.calcsTab.mainOutput.FireResist) ++ end) ++ + -- boring part + it("no armour max hits", function() + build.configTab.input.enemyIsBoss = "None" diff --git a/src/Modules/CalcPerform.lua.rej b/src/Modules/CalcPerform.lua.rej new file mode 100644 index 0000000000..61964c28f0 --- /dev/null +++ b/src/Modules/CalcPerform.lua.rej @@ -0,0 +1,29 @@ +diff a/src/Modules/CalcPerform.lua b/src/Modules/CalcPerform.lua (rejected hunks) +@@ -770,7 +770,6 @@ local function doActorMisc(env, actor) + if modDB:Flag(nil, "Condition:OnConsecratedGround") then + local effect = 1 + modDB:Sum("INC", nil, "ConsecratedGroundEffect") / 100 + modDB:NewMod("LifeRegenPercent", "BASE", 5 * effect, "Consecrated Ground") +- --modDB:NewMod("CurseEffectOnSelf", "INC", -50 * effect, "Consecrated Ground") -- Moved to L3087 + modDB:NewMod("Accuracy", "INC", m_floor(modDB:Sum("INC", nil, "ConsecratedGroundAlsoAccuracy") * effect), "Consecrated Ground") + end + if modDB:Flag(nil, "Condition:PhantasmalMight") then +@@ -3084,15 +3083,12 @@ function calcs.perform(env, skipEHP) + end + end + +- -- Consecrated Ground grants 50% reduced Effect of Curses on you +- -- Moved curse reduction here so it properly affects curse effect on player +- if env.mode_combat and modDB:Flag(nil, "Condition:OnConsecratedGround") then +- local effect = 1 + modDB:Sum("INC", nil, "ConsecratedGroundEffect") / 100 +- modDB:NewMod("CurseEffectOnSelf", "INC", -50 * effect, "Consecrated Ground") +- end +- + -- Check for extra curses + for dest, modDB in pairs({[curses] = modDB, [minionCurses] = env.minion and env.minion.modDB}) do ++ if env.mode_combat and modDB:Flag(nil, "Condition:OnConsecratedGround") then ++ local effect = 1 + modDB:Sum("INC", nil, "ConsecratedGroundEffect") / 100 ++ modDB:NewMod("CurseEffectOnSelf", "INC", -50 * effect, "Consecrated Ground") ++ end + for _, value in ipairs(modDB:List(nil, "ExtraCurse")) do + local gemModList = new("ModList") + local grantedEffect = env.data.skills[value.skillId]