FareverDB

Conduit: Shard

Mage_Conduit_Projectile in Skills

Fires 1 shard at your target dealing 25% Intellect Spark. Activates when you consume [Spark] above the gauge threshold.

id
Mage_Conduit_Projectile
type
20
flags
0
nature
5
script
function onStartConduit() { var instanceIndex = getSkillInstanceIndex(); if(instanceIndex < 0) return; var fanRadius = 2.5; var fanAmplitude = 240; var shotDelay = 0.1; var target = getActiveSkill()?.aimTarget; if (target == null) target = owner.getTarget(); var count = getSkillInstanceCount(); if (target != null) { var projStep = getStepById(Steps.Projectile); var startPos = projStep.getProjectileStart(); var interProgress = 1 / (count+1); var pos = startPos; if (count > 1) { for (i in 0...instanceIndex + 1) { pos = p3DAdd(startPos, getFanFacingPos((i+1) * interProgress, fanAmplitude, fanRadius, p2DTo3D( p2DSub(target.pos2D, owner.pos2D)) ) ); } } wait(instanceIndex * shotDelay, function() { projStep.generateProjectile(target, pos); }); } }
status
2
Raw data
{
  "id": "Mage_Conduit_Projectile",
  "gfx": {
    "x": 6,
    "y": 1,
    "file": "UI/icons/atlas_class_Mage_96PX.png",
    "size": 96
  },
  "anim": {},
  "type": 20,
  "vars": {
    "var1": 1
  },
  "flags": 0,
  "props": {
    "enableCond": {
      "flags": 2
    }
  },
  "steps": [
    {
      "id": "Projectile",
      "on": 13,
      "type": 7,
      "props": {
        "projectile": {
          "base": "MissileHoming",
          "variant": 1,
          "appearDelay": 0.3,
          "activationDelay": 0.4
        }
      }
    },
    {
      "on": 2,
      "type": 0,
      "props": {},
      "effects": [
        {
          "flags": 0,
          "effect": 0,
          "scaling": [
            {
              "atb": "Intellect",
              "ratio": 0.25
            }
          ],
          "affinity": "Spark"
        }
      ]
    }
  ],
  "texts": {
    "desc": "Fires ::var1:: shard at your target dealing ::dmg::.\n\nActivates when you consume [Spark] above the gauge threshold.",
    "name": "Conduit: Shard"
  },
  "nature": 5,
  "script": "function onStartConduit() {\n\tvar instanceIndex = getSkillInstanceIndex();\n\tif(instanceIndex < 0) return;\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 = getSkillInstanceCount();\n    if (target != null) {\n        var projStep = getStepById(Steps.Projectile);\n        var startPos = projStep.getProjectileStart();\n\n        var interProgress = 1 / (count+1);\n\t\tvar pos = startPos;\n\t\tif (count > 1) {\n\t\t\tfor (i in 0...instanceIndex + 1) {\n\t\t\t\tpos = p3DAdd(startPos, getFanFacingPos((i+1) * interProgress, fanAmplitude, fanRadius, p2DTo3D( p2DSub(target.pos2D, owner.pos2D)) ) );\n\t\t\t}\n\t\t}\n\t\twait(instanceIndex * shotDelay, function() {\n\t\t\tprojStep.generateProjectile(target, pos);\n\t\t});\n    }\n}",
  "status": 2,
  "mastery": []
}