FareverDB

Heartsteel

Shield_Craft_Passive in Skills

Your next [ComboAttack] deals an additional 15% Armor Physical (20 cooldown).

id
Shield_Craft_Passive
type
24
flags
1
notes
do a new hit damage, not a dmgAdd
nature
5
script
var STATUS_KIND = Skill.Shield_Craft_Passive_Status; function onRegUpdate(dt) { if(!isInCooldown()) { setStatus(owner, STATUS_KIND); } } function onReceiveDamageEval(hit) { if(isInCooldown()) { hit.dmgMult -= vars.var2; } } /*function onSkillProc(ctx) { if(hasStatus(owner, STATUS_KIND)) { if(ctx.skill.isFinalAttack()) { var armor = getAtb(owner, Attribute.Armor); var dmg = armor * vars.var1; ctx.dmgAdd += dmg; removeStatus(owner, STATUS_KIND); consumeCooldown(); } } }*/ function onInflictDamageEval(hit) { if( hasStatus(owner, Skill.Shield_Craft_Passive_Status) && hit.isFinalCombo ) { playStep(Steps.MagicDamage, hit.target); removeStatus(owner, Skill.Shield_Craft_Passive_Status); consumeCooldown(); } }
status
2
cooldown
20
Raw data
{
  "id": "Shield_Craft_Passive",
  "gfx": {
    "x": 3,
    "y": 0,
    "file": "UI/icons/atlas_weapon_Shield_96PX.png",
    "size": 96
  },
  "anim": {},
  "type": 24,
  "vars": {
    "var1": 0.25,
    "var2": 0.1
  },
  "flags": 1,
  "notes": "do a new hit damage, not a dmgAdd",
  "props": {
    "rankOverride": [
      {
        "props": {
          "cooldown": 15
        },
        "minRank": 2
      }
    ]
  },
  "steps": [
    {
      "id": "MagicDamage",
      "on": 13,
      "type": 0,
      "props": {},
      "effects": [
        {
          "flags": 0,
          "effect": 0,
          "scaling": [
            {
              "atb": "Armor",
              "ratio": 0.15
            }
          ],
          "affinity": "Physical"
        }
      ],
      "visuals": {
        "hitFx": "Physical_Blast"
      }
    }
  ],
  "texts": {
    "desc": "Your next [ComboAttack] deals an additional ::dmg:: (::cooldown:: cooldown).",
    "name": "Heartsteel",
    "rankDescs": [
      {
        "desc": "Cooldown reduced to ::cooldown::.",
        "rank": 2,
        "flags": 1
      },
      {
        "desc": "Reduces all damage taken by ::var2%:: while this is on cooldown.",
        "rank": 3,
        "flags": 0
      }
    ]
  },
  "nature": 5,
  "script": "var STATUS_KIND = Skill.Shield_Craft_Passive_Status;\n\nfunction onRegUpdate(dt) {\n\tif(!isInCooldown()) {\n\t\tsetStatus(owner, STATUS_KIND);\n\t}\n}\n\nfunction onReceiveDamageEval(hit) {\n\tif(isInCooldown()) {\n\t\thit.dmgMult -= vars.var2;\n\t}\n}\n\n/*function onSkillProc(ctx) {\n\tif(hasStatus(owner, STATUS_KIND)) {\n\t\tif(ctx.skill.isFinalAttack()) {\n\t\t\tvar armor = getAtb(owner, Attribute.Armor);\n\t\t\tvar dmg = armor * vars.var1;\n\t\t\tctx.dmgAdd += dmg;\n\t\t\tremoveStatus(owner, STATUS_KIND);\n\t\t\tconsumeCooldown();\n\t\t}\n\t}\n}*/\n\nfunction onInflictDamageEval(hit) {\n\tif( hasStatus(owner, Skill.Shield_Craft_Passive_Status) && hit.isFinalCombo ) {\n\t\tplayStep(Steps.MagicDamage, hit.target);\n\t\tremoveStatus(owner, Skill.Shield_Craft_Passive_Status);\n\t\tconsumeCooldown();\n\t}\n}",
  "status": 2,
  "mastery": [],
  "cooldown": 20
}