Skip to content

Commit 291ab00

Browse files
CedrNLocalIdentity
andauthored
Add support for self cast Hydrosphere DPS (#8598)
* Added skill part "Cast" for Hydrosphere, for when the Hydrosphere is continuously recast. Adjusted skill part names for Frozen, Shocked and Frozen & Shocked for clarity. * Split "Cast" further into Frozen, Shocked and Frozen Shocked skill parts since the damage pulse from casting actually also converts depending on the ailment of the sphere. * Fix not using tabs --------- Co-authored-by: LocalIdentity <localidentity2@gmail.com>
1 parent 93ca7a0 commit 291ab00

File tree

2 files changed

+58
-20
lines changed

2 files changed

+58
-20
lines changed

src/Data/Skills/act_int.lua

Lines changed: 29 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8643,25 +8643,44 @@ skills["Hydrosphere"] = {
86438643
statDescriptionScope = "skill_stat_descriptions",
86448644
castTime = 0.6,
86458645
parts = {
8646-
{
8647-
name = "Frozen",
8648-
},
8649-
{
8650-
name = "Shocked",
8651-
},
8652-
{
8653-
name = "Frozen & Shocked",
8654-
}
8646+
{
8647+
name = "Autopulse (Frozen)",
8648+
},
8649+
{
8650+
name = "Autopulse (Shocked)",
8651+
},
8652+
{
8653+
name = "Autopulse (Frozen & Shocked)",
8654+
},
8655+
{
8656+
name = "Cast (No Ailment)",
8657+
},
8658+
{
8659+
name = "Cast (Frozen)",
8660+
},
8661+
{
8662+
name = "Cast (Shocked)",
8663+
},
8664+
{
8665+
name = "Cast (Frozen & Shocked)",
8666+
}
86558667
},
86568668
preDamageFunc = function(activeSkill, output)
8657-
activeSkill.skillData.hitTimeOverride = activeSkill.skillData.repeatFrequency / (1 + activeSkill.skillModList:Sum("INC", activeSkill.skillCfg, "HydroSphereFrequency") / 100)
8669+
if activeSkill.skillPart == 1 or activeSkill.skillPart == 2 or activeSkill.skillPart == 3 then
8670+
activeSkill.skillData.hitTimeOverride = activeSkill.skillData.repeatFrequency / (1 + activeSkill.skillModList:Sum("INC", activeSkill.skillCfg, "HydroSphereFrequency") / 100)
8671+
end
86588672
end,
86598673
statMap = {
86608674
["skill_physical_damage_%_to_convert_to_cold"] = {
86618675
mod("SkillPhysicalDamageConvertToCold", "BASE", nil, 0, 0, { type = "SkillPart", skillPart = 1 }),
86628676
mod("SkillPhysicalDamageConvertToLightning", "BASE", nil, 0, 0, { type = "SkillPart", skillPart = 2 }),
86638677
mod("SkillPhysicalDamageConvertToCold", "BASE", nil, 0, 0, { type = "SkillPart", skillPart = 3 }),
86648678
mod("SkillPhysicalDamageConvertToLightning", "BASE", nil, 0, 0, { type = "SkillPart", skillPart = 3 }),
8679+
mod("SkillPhysicalDamageConvertToCold", "BASE", nil, 0, 0, { type = "SkillPart", skillPart = 4 }),
8680+
mod("SkillPhysicalDamageConvertToCold", "BASE", nil, 0, 0, { type = "SkillPart", skillPart = 5 }),
8681+
mod("SkillPhysicalDamageConvertToLightning", "BASE", nil, 0, 0, { type = "SkillPart", skillPart = 6 }),
8682+
mod("SkillPhysicalDamageConvertToCold", "BASE", nil, 0, 0, { type = "SkillPart", skillPart = 7 }),
8683+
mod("SkillPhysicalDamageConvertToLightning", "BASE", nil, 0, 0, { type = "SkillPart", skillPart = 7 }),
86658684
},
86668685
["water_sphere_cold_lightning_exposure_%"] = {
86678686
mod("ColdExposure", "BASE", nil, 0, 0, { type = "GlobalEffect", effectType = "Debuff" } ),

src/Export/Skills/act_int.txt

Lines changed: 29 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1753,25 +1753,44 @@ local skills, mod, flag, skill = ...
17531753
#skill Hydrosphere
17541754
#flags spell duration area
17551755
parts = {
1756-
{
1757-
name = "Frozen",
1758-
},
1759-
{
1760-
name = "Shocked",
1761-
},
1762-
{
1763-
name = "Frozen & Shocked",
1764-
}
1756+
{
1757+
name = "Autopulse (Frozen)",
1758+
},
1759+
{
1760+
name = "Autopulse (Shocked)",
1761+
},
1762+
{
1763+
name = "Autopulse (Frozen & Shocked)",
1764+
},
1765+
{
1766+
name = "Cast (No Ailment)",
1767+
},
1768+
{
1769+
name = "Cast (Frozen)",
1770+
},
1771+
{
1772+
name = "Cast (Shocked)",
1773+
},
1774+
{
1775+
name = "Cast (Frozen & Shocked)",
1776+
}
17651777
},
17661778
preDamageFunc = function(activeSkill, output)
1767-
activeSkill.skillData.hitTimeOverride = activeSkill.skillData.repeatFrequency / (1 + activeSkill.skillModList:Sum("INC", activeSkill.skillCfg, "HydroSphereFrequency") / 100)
1779+
if activeSkill.skillPart == 1 or activeSkill.skillPart == 2 or activeSkill.skillPart == 3 then
1780+
activeSkill.skillData.hitTimeOverride = activeSkill.skillData.repeatFrequency / (1 + activeSkill.skillModList:Sum("INC", activeSkill.skillCfg, "HydroSphereFrequency") / 100)
1781+
end
17681782
end,
17691783
statMap = {
17701784
["skill_physical_damage_%_to_convert_to_cold"] = {
17711785
mod("SkillPhysicalDamageConvertToCold", "BASE", nil, 0, 0, { type = "SkillPart", skillPart = 1 }),
17721786
mod("SkillPhysicalDamageConvertToLightning", "BASE", nil, 0, 0, { type = "SkillPart", skillPart = 2 }),
17731787
mod("SkillPhysicalDamageConvertToCold", "BASE", nil, 0, 0, { type = "SkillPart", skillPart = 3 }),
17741788
mod("SkillPhysicalDamageConvertToLightning", "BASE", nil, 0, 0, { type = "SkillPart", skillPart = 3 }),
1789+
mod("SkillPhysicalDamageConvertToCold", "BASE", nil, 0, 0, { type = "SkillPart", skillPart = 4 }),
1790+
mod("SkillPhysicalDamageConvertToCold", "BASE", nil, 0, 0, { type = "SkillPart", skillPart = 5 }),
1791+
mod("SkillPhysicalDamageConvertToLightning", "BASE", nil, 0, 0, { type = "SkillPart", skillPart = 6 }),
1792+
mod("SkillPhysicalDamageConvertToCold", "BASE", nil, 0, 0, { type = "SkillPart", skillPart = 7 }),
1793+
mod("SkillPhysicalDamageConvertToLightning", "BASE", nil, 0, 0, { type = "SkillPart", skillPart = 7 }),
17751794
},
17761795
["water_sphere_cold_lightning_exposure_%"] = {
17771796
mod("ColdExposure", "BASE", nil, 0, 0, { type = "GlobalEffect", effectType = "Debuff" } ),

0 commit comments

Comments
 (0)