From 33c53fecc5677ae747ed4f86485c0f4da2671a5e Mon Sep 17 00:00:00 2001 From: fxpw Date: Wed, 12 Jun 2024 15:04:23 +0300 Subject: [PATCH] fix absorb --- .../SpecializedAbsorbs-1.0.lua | 26 +++++++------------ 1 file changed, 10 insertions(+), 16 deletions(-) diff --git a/DBM-Core/.Libs/SpecializedAbsorbs-1.0/SpecializedAbsorbs-1.0.lua b/DBM-Core/.Libs/SpecializedAbsorbs-1.0/SpecializedAbsorbs-1.0.lua index 1679be6..389f832 100644 --- a/DBM-Core/.Libs/SpecializedAbsorbs-1.0/SpecializedAbsorbs-1.0.lua +++ b/DBM-Core/.Libs/SpecializedAbsorbs-1.0/SpecializedAbsorbs-1.0.lua @@ -3,7 +3,7 @@ ------------------------------------------------------------------------ local _,ns = ... local Compat = ns.Compat -local MAJOR, MINOR = "SpecializedAbsorbs-1.0", 18 +local MAJOR, MINOR = "SpecializedAbsorbs-1.0", 19 local lib, oldminor = LibStub:NewLibrary(MAJOR, MINOR) if not lib then return end local Core @@ -1812,6 +1812,7 @@ local function druid_SavageDefense_Create(srcGUID, srcName, dstGUID, dstName, sp end end + local function druid_SavageDefense_Hit(effectEntry, absorbedRemaining, overkill, spellschool) -- TODO: what happens to mixed school attacks? druidAbsorb = 0 @@ -1821,18 +1822,16 @@ local function druid_SavageDefense_Hit(effectEntry, absorbedRemaining, overkill, end return 0, true end + local function druid_t6_SpellAbsorb_Create(srcGUID, srcName, dstGUID, dstName, spellid, destEffects) local ap, _, quality = UnitStats(srcGUID, 0.0); - -- if privateScaling["4dtRaid5"] == 1 then - druidSpellAbsorb = druidSpellAbsorb + floor(ap * 0.25) - if druidSpellAbsorb > 50000 then - druidSpellAbsorb = 50000 - end - return druidSpellAbsorb, quality; - -- else - -- return floor(ap * 0.25), quality; - -- end + druidSpellAbsorb = floor(ap * 0.25) + if druidSpellAbsorb > 50000 then + druidSpellAbsorb = 50000 + end + return druidSpellAbsorb, quality; end + local function druid_t6_SpellHit(effectEntry, absorbedRemaining, overkill, spellschool) druidSpellAbsorb = 0 if spellschool ~= SCHOOL_MASK_PHYSICAL then @@ -1859,12 +1858,7 @@ local function druid_ScanEquipment() if IsEquippedItem(30229) or IsEquippedItem(103484) or IsEquippedItem(151678) then n = n + 1 end - if n >= 4 then - privateScaling["4dtRaid5"] = 1 - else - privateScaling["4dtRaid5"] = 0 - end - + privateScaling["4dtRaid5"] = n >= 4 and 1 or 0 end local function druid_OnEquipmentChangedDelayed()