FareverDB

Heart of the Furnace

Spear_Eruption_Passive in Skills

Your [Skill]s and [Attack]s increase your [Armor] by 2%, stacking up to 15 times.

id
Spear_Eruption_Passive
type
24
flags
0
nature
5
script
var BUFF = Skill.Spear_Eruption_Passive_Status; var SHIELD = Skill.Spear_Eruption_Passive_Shield; function onSkillProc(s) { if (s.isWeaponSkill || s.isSkill || s.baseSkill?.isBasicAttack() || s.baseSkill?.isFinalAttack() ) { addStatus(owner, BUFF); } } function onInflictDamage(dmg) { if (dmg.critical && rank >= 3 && hasStatusMaxStacked(owner, BUFF)) { var amount = dmg.amount * vars.var1; var existing = owner.getStatus(SHIELD); var current = existing?.getShield() ?? 0; //amount = clamp(amount, 0, owner.maxHealth * vars.health - current); addShield(owner, SHIELD, amount); } }
status
2
Raw data
{
  "id": "Spear_Eruption_Passive",
  "gfx": {
    "x": 14,
    "y": 0,
    "file": "UI/icons/atlas_weapon_Spear_96PX.png",
    "size": 48,
    "width": 2,
    "height": 2
  },
  "anim": {},
  "type": 24,
  "vars": {
    "var1": 0.3,
    "health": 0.25
  },
  "flags": 0,
  "props": {},
  "steps": [
    {
      "on": 0,
      "type": 11,
      "props": {},
      "visuals": {
        "fxs": [
          {
            "set": "Lava_Aura_Spear",
            "flags": 8,
            "props": {
              "offset": {
                "x": 0,
                "y": 0,
                "z": 1.2,
                "height": 0
              }
            },
            "space": 0,
            "attachName": "Weapon"
          }
        ]
      },
      "duration": -1
    }
  ],
  "texts": {
    "desc": "Your [Skill]s and [Attack]s increase your [Armor] by ::ref_val1%::, stacking up to ::ref_stacks:: times.",
    "name": "Heart of the Furnace",
    "refs": {
      "ref": "Spear_Eruption_Passive_Status"
    },
    "rankDescs": [
      {
        "desc": "Stacks up to ::ref_stacks:: times.",
        "rank": 2,
        "flags": 0
      },
      {
        "desc": "At ::ref_stacks:: stacks, critical strikes grant you a Shield equal to ::ref_var1%:: of the damage dealt for ::ref_dur1::.",
        "rank": 3,
        "flags": 0
      }
    ]
  },
  "nature": 5,
  "script": "var BUFF =  Skill.Spear_Eruption_Passive_Status;\nvar SHIELD = Skill.Spear_Eruption_Passive_Shield;\n\nfunction onSkillProc(s) {\n\tif (s.isWeaponSkill || s.isSkill || s.baseSkill?.isBasicAttack() || s.baseSkill?.isFinalAttack() ) {\n\t\taddStatus(owner, BUFF);\n\t}\n}\n\n\nfunction onInflictDamage(dmg) {\n\tif (dmg.critical && rank >= 3 && hasStatusMaxStacked(owner, BUFF)) {\n\t\tvar amount = dmg.amount * vars.var1;\n\t\tvar existing = owner.getStatus(SHIELD);\n\t\tvar current = existing?.getShield() ?? 0;\n\t\t//amount = clamp(amount, 0, owner.maxHealth * vars.health - current);\n\t\taddShield(owner, SHIELD, amount);\n\t}\n}",
  "status": 2,
  "mastery": []
}