landsandboat/scripts/actions/abilities/chocobo_jig.lua
2026-02-20 18:42:33 -07:00

31 lines
1 KiB
Lua

-----------------------------------
-- Ability: Chocobo jig
-- Increases Movement Speed.
-- Obtained: Dancer Level 55
-- TP Required: 0
-- Recast Time: 1:00
-- Duration: 2:00
-----------------------------------
---@type TAbility
local abilityObject = {}
abilityObject.onAbilityCheck = function(player, target, ability)
return 0, 0
end
abilityObject.onUseAbility = function(player, target, ability)
local baseDuration = 120 + player:getJobPointLevel(xi.jp.JIG_DURATION)
local durationMultiplier = 1.0 + utils.clamp(player:getMod(xi.mod.JIG_DURATION), 0, 50) / 100
local finalDuration = math.floor(baseDuration * durationMultiplier)
-- TODO: Chocobo Jig will not override all types of weight effect. Find out which aren't overriden.
if player:hasStatusEffect(xi.effect.WEIGHT) then
player:delStatusEffect(xi.effect.WEIGHT)
end
player:addStatusEffect(xi.effect.QUICKENING, { power = 10, duration = finalDuration, origin = player })
return xi.effect.QUICKENING
end
return abilityObject