Skip to content

Commit

Permalink
add support for additional strike targets (#7689)
Browse files Browse the repository at this point in the history
  • Loading branch information
Nerotox authored Jul 16, 2024
1 parent 8a29f7f commit 00a0672
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 0 deletions.
4 changes: 4 additions & 0 deletions src/Data/SkillStatMap.lua
Original file line number Diff line number Diff line change
Expand Up @@ -1653,6 +1653,10 @@ return {
--
-- Skill type modifier
--
-- MeleeSingleTarget
["melee_attack_number_of_spirit_strikes"] = {
mod("AdditionalStrikeTarget", "BASE", nil)
},
-- Trap
["support_trap_damage_+%_final"] = {
mod("Damage", "MORE", nil, 0, KeywordFlag.Trap),
Expand Down
3 changes: 3 additions & 0 deletions src/Modules/CalcOffence.lua
Original file line number Diff line number Diff line change
Expand Up @@ -1075,6 +1075,9 @@ function calcs.offence(env, actor, activeSkill)
radius = output.WeaponRange
}
end

local baseStrikeCount = 1
output.StrikeTargets = baseStrikeCount + skillModList:Sum("BASE", skillCfg, "AdditionalStrikeTarget")
end
end
if skillFlags.area or skillData.radius or (skillFlags.mine and activeSkill.skillTypes[SkillType.Aura]) then
Expand Down
4 changes: 4 additions & 0 deletions src/Modules/CalcSections.lua
Original file line number Diff line number Diff line change
Expand Up @@ -695,6 +695,10 @@ return {
{ label = "Area of Effect modifiers", modName = "AreaOfEffectTertiary", cfg = "skill" },
}, },
{ label = "Weapon Range", haveOutput = "WeaponRange", { format = "{1:output:WeaponRangeMetre}m", { breakdown = "WeaponRange" }, }, },
{ label = "Strike Targets", haveOutput = "StrikeTargets", { format = "{1:output:StrikeTargets}",
{ breakdown = "StrikeTargets" },
{ modName = "AdditionalStrikeTarget", cfg = "skill" }
}, },
{ label = "Attachment Range", flag = "brand", { format = "{1:output:BrandAttachmentRangeMetre}m",
{ breakdown = "BrandAttachmentRange" },
{ modName = "BrandAttachmentRange", cfg = "skill"},
Expand Down
2 changes: 2 additions & 0 deletions src/Modules/ModParser.lua
Original file line number Diff line number Diff line change
Expand Up @@ -3866,6 +3866,8 @@ local specialModList = {
["projectiles deal (%d+)%% increased damage with hits and ailments for each time they have chained"] = function(num) return { mod("Damage", "INC", num, nil, 0, bor(KeywordFlag.Hit, KeywordFlag.Ailment), { type = "PerStat", stat = "Chain" }, { type = "SkillType", skillType = SkillType.Projectile }) } end,
["projectiles deal (%d+)%% increased damage with hits and ailments for each enemy pierced"] = function(num) return { mod("Damage", "INC", num, nil, 0, bor(KeywordFlag.Hit, KeywordFlag.Ailment), { type = "PerStat", stat = "PiercedCount" }, { type = "SkillType", skillType = SkillType.Projectile }) } end,
["(%d+)%% increased bonuses gained from equipped quiver"] = function(num) return {mod("EffectOfBonusesFromQuiver", "INC", num)} end,
-- Strike Skills
["non%-vaal strike skills target (%d+) additional nearby enem[yi]e?s?"] = function(num) return { mod("AdditionalStrikeTarget", "BASE", num, { type = "SkillType", skillType = SkillType.MeleeSingleTarget}, { type = "SkillType", skillType = SkillType.Vaal, neg = true}) } end,
-- Leech/Gain on Hit/Kill
["cannot leech life"] = { flag("CannotLeechLife") },
["cannot leech mana"] = { flag("CannotLeechMana") },
Expand Down

0 comments on commit 00a0672

Please sign in to comment.