Combo Points
Rogue_ComboPoints in SkillsGenerates 1 [ComboPoint] when using a [ComboAttack] or [WeaponSkill] different from the last action.
- id
- Rogue_ComboPoints
- type
- 10
- flags
- 0
- nature
- 5
- script
- var lastSkillProc = null; function onSkillProc(ctx) { tryGetComboPoint(ctx.skill, ctx.skillId, false); } function onInflictDamage(dmg) { if (dmg.isFirstHit) { tryGetComboPoint(dmg.skill, dmg.skillId, dmg.critical); } } function tryGetComboPoint(s, skind, isCrit) { if(s != null && lastSkillProc != skind && isSkillCompatible(s) ) { var points = vars.var1; if (hasGlobalMastery(Mastery.Rogue_Finisher_M1) && isCrit) { points += 1; } addAtb(owner, Attribute.ComboPoint, points); lastSkillProc = skind; } } function isSkillCompatible(s) { if(s == null || s.isPassive()) return false; return s.isWeaponSkill() || s.isFinalAttack(); }
- status
- 2
Raw data
{
"id": "Rogue_ComboPoints",
"gfx": {
"x": 0,
"y": 1,
"file": "UI/icons/atlas_class_Rogue_96PX.png",
"size": 96
},
"anim": {},
"type": 10,
"vars": {
"var1": 1
},
"flags": 0,
"props": {},
"steps": [],
"texts": {
"desc": "Generates ::var1:: [ComboPoint] when using a [ComboAttack] or [WeaponSkill] different from the last action.",
"name": "Combo Points"
},
"nature": 5,
"script": "var lastSkillProc = null;\n\nfunction onSkillProc(ctx) {\n\ttryGetComboPoint(ctx.skill, ctx.skillId, false);\n}\n\nfunction onInflictDamage(dmg) {\n\tif (dmg.isFirstHit) {\n\t\ttryGetComboPoint(dmg.skill, dmg.skillId, dmg.critical);\n\t}\n}\n\nfunction tryGetComboPoint(s, skind, isCrit) {\n\tif(s != null && lastSkillProc != skind && isSkillCompatible(s) ) {\n\t\tvar points = vars.var1;\n\t\tif (hasGlobalMastery(Mastery.Rogue_Finisher_M1) && isCrit) {\n\t\t\tpoints += 1;\n\t\t}\n\t\taddAtb(owner, Attribute.ComboPoint, points);\n\t\tlastSkillProc = skind;\n\t}\n}\n\nfunction isSkillCompatible(s) {\n\tif(s == null || s.isPassive())\n\t\treturn false;\n\treturn s.isWeaponSkill() || s.isFinalAttack();\n}",
"status": 2,
"mastery": []
}