diff --git a/src/Data/Skills/act_dex.lua b/src/Data/Skills/act_dex.lua index 83461ef798..45de635fab 100644 --- a/src/Data/Skills/act_dex.lua +++ b/src/Data/Skills/act_dex.lua @@ -7924,6 +7924,7 @@ skills["FrostBladesAltX"] = { { name = "Ground DoT", attack = false, + hit = false, melee = false, projectile = false, area = true, @@ -7940,6 +7941,7 @@ skills["FrostBladesAltX"] = { melee = true, projectile = true, area = true, + dotFromAttack = true, }, baseMods = { skill("dotIsArea", true, { type = "SkillPart", skillPart = 2 }), diff --git a/src/Export/Skills/act_dex.txt b/src/Export/Skills/act_dex.txt index c6d9ec3650..9098f37122 100644 --- a/src/Export/Skills/act_dex.txt +++ b/src/Export/Skills/act_dex.txt @@ -1626,7 +1626,7 @@ local skills, mod, flag, skill = ... #mods #skill FrostBladesAltX -#flags attack melee projectile area +#flags attack melee projectile area dotFromAttack parts = { { name = "Melee Hit", @@ -1638,6 +1638,7 @@ local skills, mod, flag, skill = ... { name = "Ground DoT", attack = false, + hit = false, melee = false, projectile = false, area = true, diff --git a/src/Modules/Build.lua b/src/Modules/Build.lua index dd7fde4696..cf0a143713 100644 --- a/src/Modules/Build.lua +++ b/src/Modules/Build.lua @@ -383,8 +383,8 @@ function buildMode:Init(dbFileName, buildName, buildXML, convertBuild, importLin { stat = "TrapThrowCount", label = "Avg. Traps per Throw", fmt = ".2f"}, { stat = "MineThrowCount", label = "Avg. Mines per Throw", fmt = ".2f"}, { stat = "TotemPlacementTime", label = "Totem Placement Time", fmt = ".2fs", compPercent = true, lowerIsBetter = true, condFunc = function(v,o) return not o.TriggerTime end }, - { stat = "PreEffectiveCritChance", label = "Crit Chance", fmt = ".2f%%" }, - { stat = "CritChance", label = "Effective Crit Chance", fmt = ".2f%%", condFunc = function(v,o) return v ~= o.PreEffectiveCritChance end }, + { stat = "PreEffectiveCritChance", label = "Crit Chance", fmt = ".2f%%", flag = "hit" }, + { stat = "CritChance", label = "Effective Crit Chance", fmt = ".2f%%", flag = "hit", condFunc = function(v,o) return v ~= o.PreEffectiveCritChance end }, { stat = "CritMultiplier", label = "Crit Multiplier", fmt = "d%%", pc = true, condFunc = function(v,o) return (o.CritChance or 0) > 0 end }, { stat = "HitChance", label = "Hit Chance", fmt = ".0f%%", flag = "attack" }, { stat = "HitChance", label = "Hit Chance", fmt = ".0f%%", condFunc = function(v,o) return o.enemyHasSpellBlock end }, diff --git a/src/Modules/CalcActiveSkill.lua b/src/Modules/CalcActiveSkill.lua index 33133057f5..251d2f9661 100644 --- a/src/Modules/CalcActiveSkill.lua +++ b/src/Modules/CalcActiveSkill.lua @@ -279,7 +279,7 @@ function calcs.buildActiveSkillModList(env, activeSkill) weapon1Flags, weapon1Info = ModFlag[env.data.weaponTypeInfo["None"].flag], env.data.weaponTypeInfo["None"] end if weapon1Flags then - if skillFlags.attack then + if skillFlags.attack or skillFlags.dotFromAttack then activeSkill.weapon1Flags = weapon1Flags skillFlags.weapon1Attack = true if weapon1Info.melee and skillFlags.melee then @@ -296,7 +296,7 @@ function calcs.buildActiveSkillModList(env, activeSkill) if not skillTypes[SkillType.MainHandOnly] and not skillFlags.forceMainHand then local weapon2Flags, weapon2Info = getWeaponFlags(env, activeSkill.actor.weaponData2, weaponTypes) if weapon2Flags then - if skillFlags.attack then + if skillFlags.attack or skillFlags.dotFromAttack then activeSkill.weapon2Flags = weapon2Flags skillFlags.weapon2Attack = true end diff --git a/src/Modules/ModParser.lua b/src/Modules/ModParser.lua index 771331ee9d..0bd687cfbf 100644 --- a/src/Modules/ModParser.lua +++ b/src/Modules/ModParser.lua @@ -855,7 +855,7 @@ local modFlagList = { ["to unarmed attacks"] = { flags = bor(ModFlag.Unarmed, ModFlag.Hit) }, ["to unarmed melee hits"] = { flags = bor(ModFlag.Unarmed, ModFlag.Melee, ModFlag.Hit) }, ["with melee weapons"] = { flags = ModFlag.WeaponMelee }, - ["with melee weapon attacks"] = { flags = bor(ModFlag.WeaponMelee, ModFlag.Hit) }, + ["with melee weapon attacks"] = { flags = ModFlag.WeaponMelee }, --Tincture mod doesn't care about it being a Hit ["from melee weapons"] = { flags = ModFlag.WeaponMelee }, ["from melee weapon attacks"] = { flags = bor(ModFlag.WeaponMelee, ModFlag.Hit) }, ["melee weapon"] = { flags = ModFlag.WeaponMelee },