Home · skill · PurifiedHeart_Proc
Properties
- nature
- Status
- duration
- 20
- steps
Raw data
{
"gfx": {
"file": "UI/Portraits/Items/GearTrinket/Items_Loot_Trinket_Trinket_pearl_02.prefab.png",
"size": 256,
"x": 0,
"y": 0
},
"id": "PurifiedHeart_Proc",
"nature": "Status",
"texts": {
"name": "Purified Heart",
"desc": "Your next [WeaponSkill] releases a lightning bolt dealing ::dmg::."
},
"anim": {},
"duration": 20,
"steps": [
{
"on": 13,
"props": {
"projectile": {
"base": "MissileHoming",
"variant": 0,
"fxSet": "Projectile_Electric_Big",
"activationDelay": 0.2,
"appearDelay": 0.2
}
},
"type": 7,
"id": "Projectile"
},
{
"on": 2,
"props": {},
"effects": [
{
"effect": 0,
"scaling": [
{
"ratio": 1.5,
"atb": "Faith"
},
{
"ratio": 1.5,
"atb": "Intellect"
}
],
"affinity": "Magic",
"flags": 0
}
],
"type": 0
}
],
"flags": [],
"mastery": [],
"props": {
"enableCond": {
"flags": 2
},
"status": {
"types": [
{
"type": "Buff"
}
]
}
},
"vars": {
"var1": 1
},
"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}"
}