Skip to content

Commit

Permalink
Merge branch 'dev'
Browse files Browse the repository at this point in the history
  • Loading branch information
MeAndUnique committed Apr 8, 2023
2 parents 4f4453a + 42e074d commit db27031
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 14 deletions.
2 changes: 1 addition & 1 deletion extension.xml
Expand Up @@ -26,7 +26,7 @@ SOFTWARE.

<root release="3.0" version="3">
<properties>
<loadorder>141</loadorder>
<loadorder>251</loadorder>
<name>Feature: Blissful Ignorance</name>
<version>dev_version</version>
<author>MeAndUnique</author>
Expand Down
24 changes: 16 additions & 8 deletions scripts/manager_action_damage_bi.lua
Expand Up @@ -35,6 +35,20 @@ function onInit()
end
end

function setActiveTarget(rTarget)
rActiveTarget = rTarget;
rActiveTarget.tReductions = {
["VULN"] = {},
["RESIST"] = {},
["IMMUNE"] = {},
["ABSORB"] = {},
};
end

function clearActiveTarget()
rActiveTarget = nil;
end

function checkReductionTypeHelper(rMatch, aDmgType)
local result = checkReductionTypeHelperOriginal(rMatch, aDmgType);
if bPreventCalculateRecursion then
Expand Down Expand Up @@ -117,14 +131,7 @@ function checkNumericalReductionTypeHelper(rMatch, aDmgType, nLimit)
end

function getDamageAdjust(rSource, rTarget, _, rDamageOutput)
rActiveTarget = rTarget;
rTarget.tReductions = {
["VULN"] = {},
["RESIST"] = {},
["IMMUNE"] = {},
["ABSORB"] = {},
};

setActiveTarget(rTarget);
multiplyDamage(rSource, rTarget, rDamageOutput);

local nDamageAdjust, bVulnerable, bResist = getDamageAdjustOriginal(rSource, rTarget, rDamageOutput.nVal, rDamageOutput);
Expand Down Expand Up @@ -170,6 +177,7 @@ function getDamageAdjust(rSource, rTarget, _, rDamageOutput)
bIgnored = false;
end

clearActiveTarget();
return nDamageAdjust, bVulnerable, bResist;
end

Expand Down
10 changes: 5 additions & 5 deletions scripts/manager_actor_bi.lua
Expand Up @@ -53,18 +53,18 @@ function getDamageImmunities(rActor, rSource)
end

function postProcessResistances(rActor, rSource)
local aAbsorb = ActorManager5E.getDamageVulnResistImmuneEffectHelper(rActor, "ABSORB", rSource);
rActor.tReductions["ABSORB"] = aAbsorb;
for _,rAbsorb in pairs(aAbsorb) do
local tAbsorb = ActorManager5E.getDamageVulnResistImmuneEffectHelper(rActor, "ABSORB", rSource);
rActor.tReductions["ABSORB"] = tAbsorb;
for _,rAbsorb in pairs(tAbsorb) do
if rAbsorb.mod == 0 then
rAbsorb.mod = 1;
end
rAbsorb.mod = rAbsorb.mod + 1;
rAbsorb.bIsAbsorb = true;
end

local aReduce = ActorManager5E.getDamageVulnResistImmuneEffectHelper(rActor, "REDUCE", rSource);
for sType,rReduce in pairs(aReduce) do
local tReduce = ActorManager5E.getDamageVulnResistImmuneEffectHelper(rActor, "REDUCE", rSource);
for sType,rReduce in pairs(tReduce) do
local rResist = rActor.tReductions["RESIST"][sType];
if not rResist then
rActor.tReductions["RESIST"][sType] = rReduce;
Expand Down

0 comments on commit db27031

Please sign in to comment.