Home · skill · Spear_Goo_Combo
Properties
- status
- Done
- type
- AttackCombo
- nature
- Combo
- duration
- 1.1
- steps
Referenced by
Raw data
{
"status": "Done",
"gfx": {
"file": "UI/icons/atlas_weapon_Spear_96PX.png",
"size": 48,
"x": 0,
"y": 0,
"width": 2,
"height": 2
},
"id": "Spear_Goo_Combo",
"type": "AttackCombo",
"nature": "Combo",
"texts": {
"desc": "Strikes forward, dealing ::dmg:: to an enemy and generates a ::ref_name::, stacking up to ::ref_stacks:: times.\n\nAt ::ref_stacks:: stacks, your next ::name:: releases the darts, dealing randomly ::dmg2:: or ::dmg3::.",
"name": "Hive Assault",
"rankDescs": [
{
"rank": 2,
"desc": "Damage increased by an amount equal to your [CritChance].",
"flags": 0
},
{
"rank": 3,
"desc": "Generates another ::ref_name:: if this critically strikes.",
"flags": 0
}
],
"refs": {
"ref": "Spear_Goo_Combo_Status"
}
},
"anim": {
"ref": "AttackCombo",
"startFrame": 3,
"blend": 0.1
},
"duration": 1.1,
"steps": [
{
"on": 0,
"props": {},
"type": 9,
"duration": 0.6,
"range": 6
},
{
"on": 0,
"props": {
"move": {
"direction": [
0
]
}
},
"type": 8,
"duration": 0.1,
"delay": 0.1,
"range": 0.5
},
{
"props": {
"rotation": {
"limiter": 360
}
},
"on": 0,
"type": 14,
"duration": 1.05
},
{
"props": {
"move": {
"dashSmoothing": 0,
"direction": [
0
]
}
},
"on": 0,
"type": 8,
"delay": 0.47,
"range": 2,
"duration": 0.35
},
{
"on": 0,
"props": {
"move": {
"dashSmoothing": 1,
"direction": [
0
]
}
},
"type": 8,
"delay": 0.82,
"duration": 0.23,
"range": 4
},
{
"on": 0,
"visuals": {
"fxs": [
{
"set": "Honey_Burst_Cone",
"space": 1,
"props": {}
}
]
},
"props": {
"area": {
"shape": [
2,
60
]
}
},
"effects": [
{
"affinity": "Physical",
"effect": 0,
"scaling": [
{
"ratio": 0.62,
"atb": "Strength"
},
{
"ratio": 0.62,
"atb": "Intellect"
}
],
"baseVal": 0,
"flags": 0
}
],
"type": 0,
"delay": 0.9,
"range": 8,
"id": "Area"
},
{
"on": 13,
"props": {
"projectile": {
"base": "MissileHoming",
"generation": {
"count": 1,
"duration": 0.2,
"stepLinked": true,
"shape": [
0,
1,
45,
0
],
"shapeRot": {
"yaw": 0,
"pitch": 90,
"roll": 0
},
"directionBias": 0.5
},
"fxSet": "Projectile_Honey_Stinger",
"scale": 0.2
}
},
"type": 7,
"id": "Projectile"
},
{
"on": 13,
"props": {},
"type": 6,
"id": "MagicDamage",
"effects": [
{
"effect": 0,
"scaling": [
{
"ratio": 0.7,
"atb": "Intellect"
}
],
"affinity": "Magic",
"flags": 0
}
]
},
{
"on": 2,
"props": {},
"id": "ProjectileHit",
"type": 6
},
{
"on": 13,
"props": {},
"id": "PhysicalDamage",
"type": 6,
"effects": [
{
"effect": 0,
"scaling": [
{
"ratio": 0,
"atb": "Strength"
}
],
"affinity": "Physical",
"flags": 0
}
]
}
],
"flags": [],
"mastery": [],
"props": {
"hit": {
"camShake": 10,
"shake": 5
}
},
"vars": {},
"script": "var firedThisStep = false;\nfunction gainStinger(count) {\n\tfor (i in 0...count) {\n\t\tvar prevStacks = owner.getStatusCount(Skill.Spear_Goo_Combo_Status);\n\t\tvar s = owner.addStatus(Skill.Spear_Goo_Combo_Status);\n\t\tif (s.stacks > prevStacks) {\n\t\t\tplayStep(Steps.Projectile);\n\t\t}\n\t}\n}\n\nfunction onInflictDamageEval(hit) {\n\tif (rank >= 2 && hit.skillId == skill.kind) {\n\t\thit.dmgMult += hit.critChance;\n\t}\n}\n\nfunction onInflictDamage(dmg) {\n\tif (firedThisStep) { return; }\n\tif (dmg.stepId == Steps.Area && dmg.isFirstHit && !hasStatusMaxStacked(owner, Skill.Spear_Goo_Combo_Status)) {\n\t\tif (rank >= 3 && dmg.critical) {\n\t\t\tgainStinger(2);\n\t\t} else {\n\t\t\tgainStinger(1);\n\t\t}\n\t}\n}\n\nfunction onStatusEnd(s, elapsed) {\n\tif (elapsed && s.kind == Skill.Spear_Goo_Combo_Status) {\n\t\tdestroyProjectiles();\n\t}\n}\n\nfunction tryRelease(target) {\n\tfiredThisStep = false;\n\tif (hasStatusMaxStacked(owner, Skill.Spear_Goo_Combo_Status)) {\n\t\tfiredThisStep = true;\n\t\towner.tryConsumeStatus(Skill.Spear_Goo_Combo_Status);\n\t\tskill.fireProjectiles(target, null, 0.3);\n\t}\n}\n\nfunction onStep(s) {\n\tif (s.kind == Steps.Area && s.curCtx.aimTarget != null)\n\t\ttryRelease(s.curCtx.aimTarget);\n}\n\nfunction onProjectileCreated(proj) {\n\thoverProjectile(proj, 3);\n}\n\n\nfunction onProjectileHit(hit) {\n\tif (hit.projectile != null) {\n\t\tif (checkProba(0.5)) {\n\t\t\tplayStep(Steps.PhysicalDamage, hit.target);\n\t\t} else {\n\t\t\tplayStep(Steps.MagicDamage, hit.target);\n\t\t}\n\t}\n}",
"_xrefs": [
{
"from_sheet": "item",
"from_id": "Spear_Goo",
"via_field": "skills"
}
]
}