|
| 1 | +----------------------------------- |
| 2 | +-- Herculean Slash |
| 3 | +-- Family: Humanoid Great Sword Weaponskill |
| 4 | +-- Description: Paralyzes target. Duration of effect varies with TP. |
| 5 | +----------------------------------- |
| 6 | +---@type TMobSkill |
| 7 | +local mobskillObject = {} |
| 8 | + |
| 9 | +mobskillObject.onMobSkillCheck = function(target, mob, skill) |
| 10 | + return 0 |
| 11 | +end |
| 12 | + |
| 13 | +mobskillObject.onMobWeaponSkill = function(mob, target, skill, action) |
| 14 | + local params = {} |
| 15 | + local duration = xi.mobskills.calculateDuration(skill:getTP(), 60, 180) |
| 16 | + |
| 17 | + params.baseDamage = mob:getMainLvl() + 2 |
| 18 | + params.fTP = { 3.5, 3.5, 3.5 } |
| 19 | + -- params.vit_wSC = 0.6 -- TODO: Capture if mobskill weaponskills have wSC. |
| 20 | + params.element = xi.element.ICE |
| 21 | + params.attackType = xi.attackType.MAGICAL |
| 22 | + params.damageType = xi.damageType.ICE |
| 23 | + params.shadowBehavior = xi.mobskills.shadowBehavior.WIPE_SHADOWS |
| 24 | + |
| 25 | + local info = xi.mobskills.mobMagicalMove(mob, target, skill, action, params) |
| 26 | + |
| 27 | + if xi.mobskills.processDamage(mob, target, skill, action, info) then |
| 28 | + target:takeDamage(info.damage, mob, info.attackType, info.damageType) |
| 29 | + xi.mobskills.mobStatusEffectMove(mob, target, xi.effect.PARALYSIS, 30, 0, duration) |
| 30 | + end |
| 31 | + |
| 32 | + return info.damage |
| 33 | +end |
| 34 | + |
| 35 | +return mobskillObject |
0 commit comments