Purified Heart
PurifiedHeart_Proc in SkillsYour next [WeaponSkill] releases a lightning bolt dealing 200% Faith + 200% Intellect Magic.
- id
- PurifiedHeart_Proc
- flags
- 0
- nature
- 4
- script
- function onSkillProc(ctx) { if( ctx.skill.isWeaponSkill() ) { var fanRadius = 2.5; var fanAmplitude = 240; var shotDelay = 0.1; var target = getActiveSkill()?.aimTarget; if (target == null) target = owner.getTarget(); var count = 1; if (target != null) { var projStep = getStepById(Steps.Projectile); var startPos = projStep.getProjectileStart(); var interProgress = 1 / (count+1); for (i in 0...count) { var pos = startPos; if (count > 1) { pos = p3DAdd(startPos, getFanFacingPos((i+1) * interProgress, fanAmplitude, fanRadius, p2DTo3D( p2DSub(target.pos2D, owner.pos2D)) ) ); } wait(i * shotDelay, function() { projStep.generateProjectile(target, pos); }); } } stop(); } }
- duration
- 20
Raw data
{
"id": "PurifiedHeart_Proc",
"gfx": {
"x": 0,
"y": 0,
"file": "UI/Portraits/Items/GearTrinket/Items_Loot_Trinket_Trinket_pearl_02.prefab.png",
"size": 256
},
"anim": {},
"vars": {
"var1": 1
},
"flags": 0,
"props": {
"status": {
"types": [
{
"type": "Buff"
}
]
},
"enableCond": {
"flags": 2
}
},
"steps": [
{
"id": "Projectile",
"on": 13,
"type": 7,
"props": {
"projectile": {
"base": "MissileHoming",
"fxSet": "Projectile_Electric_Big",
"variant": 0,
"appearDelay": 0.2,
"activationDelay": 0.2
}
}
},
{
"on": 2,
"type": 0,
"props": {},
"effects": [
{
"flags": 0,
"effect": 0,
"scaling": [
{
"atb": "Faith",
"ratio": 2
},
{
"atb": "Intellect",
"ratio": 2
}
],
"affinity": "Magic"
}
]
}
],
"texts": {
"desc": "Your next [WeaponSkill] releases a lightning bolt dealing ::dmg::.",
"name": "Purified Heart"
},
"nature": 4,
"script": "function onSkillProc(ctx) {\n\tif( ctx.skill.isWeaponSkill() ) {\n\n var fanRadius = 2.5;\n var fanAmplitude = 240;\n var shotDelay = 0.1;\n\n\tvar target = getActiveSkill()?.aimTarget;\n\tif (target == null) target = owner.getTarget();\n\n var count = 1;\n\n if (target != null) {\n var projStep = getStepById(Steps.Projectile);\n var startPos = projStep.getProjectileStart();\n\n var interProgress = 1 / (count+1);\n for (i in 0...count) {\n var pos = startPos;\n if (count > 1) {\n pos = p3DAdd(startPos, getFanFacingPos((i+1) * interProgress, fanAmplitude, fanRadius, p2DTo3D( p2DSub(target.pos2D, owner.pos2D)) ) );\n }\n wait(i * shotDelay, function() {\n projStep.generateProjectile(target, pos);\n });\n }\n }\n\tstop();\n\t}\n}",
"mastery": [],
"duration": 20
}