Skip to content

Commit eec01b9

Browse files
LocalIdentityLocalIdentity
andauthored
Fix incorrect Area radius on Explosive Spear (#1286)
Explosive Spear had `active_skill_base_area_of_effect_radius` as a remove stat but it did not exist in the base stat set for the skill so it was incidentally removing the stat from the following stat sets Co-authored-by: LocalIdentity <localidentity2@gmail.com>
1 parent 5a8d954 commit eec01b9

2 files changed

Lines changed: 17 additions & 0 deletions

File tree

src/Data/Skills/act_dex.lua

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2584,6 +2584,7 @@ skills["ExplosiveSpearPlayer"] = {
25842584
{ "base_number_of_remote_spear_mines_allowed", 1 },
25852585
{ "active_skill_base_physical_damage_%_to_convert_to_fire", 60 },
25862586
{ "remote_spear_mine_minimum_target_distance", 10 },
2587+
{ "active_skill_base_area_of_effect_radius", 28 },
25872588
{ "active_skill_base_physical_damage_%_to_convert_to_fire", 40 },
25882589
},
25892590
stats = {
@@ -2660,6 +2661,7 @@ skills["ExplosiveSpearPlayer"] = {
26602661
{ "base_number_of_remote_spear_mines_allowed", 1 },
26612662
{ "active_skill_base_physical_damage_%_to_convert_to_fire", 60 },
26622663
{ "remote_spear_mine_minimum_target_distance", 10 },
2664+
{ "active_skill_base_area_of_effect_radius", 40 },
26632665
{ "active_skill_base_secondary_area_of_effect_radius", 15 },
26642666
{ "active_skill_base_tertiary_area_of_effect_radius", 20 },
26652667
{ "active_skill_base_physical_damage_%_to_convert_to_fire", 40 },

src/Export/Scripts/skills.lua

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -501,10 +501,25 @@ directiveTable.set = function(state, args, out)
501501
statRow.InterpolationBases = tableConcat(baseStatRow.InterpolationBases, statRow.InterpolationBases)
502502
statRow.AdditionalStats = tableConcat(baseStatRow.AdditionalStats, statRow.AdditionalStats)
503503
statRow.AdditionalStatsValues = tableConcat(baseStatRow.AdditionalStatsValues, statRow.AdditionalStatsValues)
504+
statRow.BaseStats = tableConcat(tableConcat(tableConcat(skill.baseGrantedEffectStatSet.ImplicitStats, skill.baseGrantedEffectStatSet.ConstantStats), baseStatRow.FloatStats), baseStatRow.AdditionalStats)
504505
end
505506
level.statInterpolation = statRow.StatInterpolations
506507
level.actorLevel = statRow.ActorLevel
507508
local tempRemoveStats = copyTable(set.removeStats, true)
509+
for i, removeStat in pairs(set.removeStats) do
510+
-- Fixes the case where a removeStat does not exist in the base set but does in future sets
511+
-- It should not be removed if this is the case
512+
local remove = false
513+
for _, stat in ipairs(statRow.BaseStats) do
514+
if stat.Id == removeStat then
515+
remove = true
516+
end
517+
end
518+
if remove == false then
519+
table.remove(tempRemoveStats, i)
520+
table.remove(set.removeStats, i)
521+
end
522+
end
508523
local resolveInterpolation = true
509524
local injectConstantValuesIntoEachLevel = false
510525
local statMapOrderIndex = 1

0 commit comments

Comments
 (0)