FareverDB

Flower Spiral

Crescent_FlowerSpiral_Skill_1 in Skills

Spins to deal 18% Dexterity + 18% Faith Magic to nearby enemies. Consumes all stacks of Psychoactive Petal to spin additional times. During combat, generates a stack of Psychoactive Petal every 4 and after every [ComboAttack], stacking up to 6 times.

id
Crescent_FlowerSpiral_Skill_1
type
7
flags
32
nature
2
script
var dmgStackCount = 0; function onStart(ctx) { var shotDelay = vars.delay; var stackCount = getStatusCount(owner, Skill.Crescent_FlowerSpiral_Skill_1_Charge); dmgStackCount = stackCount; consumeStatus(owner, Skill.Crescent_FlowerSpiral_Skill_1_Charge, 1000); if (stackCount == 0) { playStep(Steps.StartBaseArea); playStep(Steps.StopStep); } else { for (i in 0...(stackCount + 1)) { wait(i * shotDelay, function() { // tryConsumeSubstacks(owner, Skill.Crescent_FlowerSpiral_FinalCombo_Status, 1); if (i < stackCount) { playStep(Steps.AdditionalArea); } else { playStep(Steps.StartBaseArea); playStep(Steps.StopStep); } }); } } } function onInflictDamage(dmg) { var s = dmg.baseSkill; if( s.isFinalAttack() ) { addStatus(owner, Skill.Crescent_FlowerSpiral_Skill_1_Charge); } } var chargeTimer = 0.; function onRegUpdate(dt) { if (owner.isInCombat) { chargeTimer += dt; if (chargeTimer > vars.time) { chargeTimer -= vars.time; addStatus(owner, Skill.Crescent_FlowerSpiral_Skill_1_Charge); } } else { chargeTimer = 0; } }
status
0
cooldown
12
Raw data
{
  "id": "Crescent_FlowerSpiral_Skill_1",
  "gfx": {
    "x": 4,
    "y": 0,
    "file": "UI/icons/atlas_weapon_Crescent_96PX.png",
    "size": 48,
    "width": 2,
    "height": 2
  },
  "anim": {
    "file": "Anim/Human/Crescent/Skill/Anim_Human_Crescent_SpiralFast.fbx",
    "blend": 0
  },
  "type": 7,
  "vars": {
    "time": 4,
    "var1": 0.05,
    "delay": 0.15
  },
  "flags": 32,
  "props": {
    "hit": {
      "freeze": 0.5
    },
    "rankOverride": [
      {
        "vars": {
          "time": 3
        },
        "minRank": 2
      }
    ],
    "rankPassives": [
      {
        "minRank": 3,
        "passives": [
          {
            "ref": "Crescent_FlowerSpiral_Skill_1_Charge"
          }
        ]
      }
    ]
  },
  "steps": [
    {
      "id": "StartBaseArea",
      "on": 13,
      "type": 11,
      "delay": 0.05,
      "props": {
        "startSteps": [
          {
            "step": "BaseArea",
            "force": false
          }
        ]
      },
      "range": 4,
      "visuals": {
        "playAnims": [
          {
            "anim": {
              "file": "Anim/Human/Crescent/Skill/Anim_Human_Crescent_SpiralEnd.fbx",
              "blend": 0,
              "startFrame": 0
            }
          }
        ]
      }
    },
    {
      "id": "BaseArea",
      "on": 13,
      "type": 4,
      "delay": 0.05,
      "props": {},
      "range": 4,
      "effects": [
        {
          "flags": 0,
          "effect": 0,
          "scaling": [
            {
              "atb": "Dexterity",
              "ratio": 0.18
            },
            {
              "atb": "Faith",
              "ratio": 0.18
            }
          ],
          "affinity": "Magic"
        }
      ],
      "visuals": {
        "fxs": [
          {
            "set": "HoneyFlower_QuickSpin",
            "props": {
              "offset": {
                "x": 0,
                "y": 0,
                "z": 0.65,
                "height": 0.5
              }
            },
            "space": 0
          }
        ]
      }
    },
    {
      "id": "AdditionalArea",
      "on": 13,
      "type": 4,
      "delay": 0.1,
      "props": {
        "canRepeat": true
      },
      "range": 4,
      "effects": [
        {
          "flags": 0,
          "effect": 0,
          "scaling": [
            {
              "atb": "Dexterity",
              "ratio": 0.18
            },
            {
              "atb": "Faith",
              "ratio": 0.18
            }
          ],
          "affinity": "Magic"
        }
      ]
    },
    {
      "id": "StopStep",
      "on": 13,
      "type": 10,
      "delay": 0.8,
      "props": {}
    }
  ],
  "texts": {
    "desc": "Spins to deal ::dmg:: to nearby enemies. Consumes all stacks of ::ref_name:: to spin additional times.\n\nDuring combat, generates a stack of ::ref_name:: every ::time:: and after every [ComboAttack], stacking up to ::ref_stacks:: times.",
    "name": "Flower Spiral",
    "refs": {
      "ref": "Crescent_FlowerSpiral_Skill_1_Charge",
      "ref2": "Crescent_FlowerSpiral_Passive"
    },
    "rankDescs": [
      {
        "desc": "Generates a stack every ::time::.",
        "rank": 2,
        "flags": 1
      },
      {
        "desc": "Triggers the effects of ::ref2_name::.",
        "rank": 3,
        "flags": 0
      }
    ]
  },
  "nature": 2,
  "script": "var dmgStackCount = 0;\nfunction onStart(ctx) {\n\tvar shotDelay = vars.delay;\n\tvar stackCount = getStatusCount(owner, Skill.Crescent_FlowerSpiral_Skill_1_Charge);\n\tdmgStackCount = stackCount;\n\tconsumeStatus(owner, Skill.Crescent_FlowerSpiral_Skill_1_Charge, 1000);\n\tif (stackCount == 0) {\n\t\tplayStep(Steps.StartBaseArea);\n\t\tplayStep(Steps.StopStep);\n\t} else {\n\t\tfor (i in 0...(stackCount + 1)) {\n\t\t\twait(i * shotDelay, function() {\n\t\t\t\t// tryConsumeSubstacks(owner, Skill.Crescent_FlowerSpiral_FinalCombo_Status, 1);\n\t\t\t\tif (i < stackCount) {\n\t\t\t\t\tplayStep(Steps.AdditionalArea);\n\t\t\t\t} else {\n\t\t\t\t\tplayStep(Steps.StartBaseArea);\n\t\t\t\t\tplayStep(Steps.StopStep);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n}\n\nfunction onInflictDamage(dmg) {\n\tvar s = dmg.baseSkill;\n\tif( s.isFinalAttack() ) {\n\t\taddStatus(owner, Skill.Crescent_FlowerSpiral_Skill_1_Charge);\n\t}\n}\n\n\n\nvar chargeTimer = 0.;\nfunction onRegUpdate(dt) {\n\tif (owner.isInCombat) {\n\t\tchargeTimer += dt;\n\t\tif (chargeTimer > vars.time) {\n\t\t\tchargeTimer -= vars.time;\n\t\t\taddStatus(owner, Skill.Crescent_FlowerSpiral_Skill_1_Charge);\n\t\t}\n\t} else {\n\t\tchargeTimer = 0;\n\t}\n}",
  "status": 0,
  "mastery": [],
  "cooldown": 12
}