landsandboat/scripts/items/random_ring.lua

34 lines
1 KiB
Lua
Raw Permalink Normal View History

2025-02-01 15:27:19 -06:00
-----------------------------------
-- ID: 15770
-- Item: Random Ring
-- Item Effect: Enchantment Dex + math.random(1, 8)
-- Duration: 30 Mins
-----------------------------------
---@type TItem
local itemObject = {}
itemObject.onItemCheck = function(target, item, caster)
2025-02-01 15:27:19 -06:00
if target:getStatusEffectBySource(xi.effect.ENCHANTMENT, xi.effectSourceType.EQUIPPED_ITEM, xi.item.RANDOM_RING) ~= nil then
target:delStatusEffect(xi.effect.ENCHANTMENT, nil, xi.effectSourceType.EQUIPPED_ITEM, xi.item.RANDOM_RING)
end
return 0
end
2026-02-19 22:48:02 -07:00
itemObject.onItemUse = function(target, user)
2025-02-01 15:27:19 -06:00
if target:hasEquipped(xi.item.RANDOM_RING) then
local power = math.random(1, 8)
2026-02-19 22:48:02 -07:00
target:addStatusEffect(xi.effect.ENCHANTMENT, { power = power, duration = 3600, origin = user, sourceType = xi.effectSourceType.EQUIPPED_ITEM, sourceTypeParam = xi.item.RANDOM_RING })
2025-02-01 15:27:19 -06:00
end
end
itemObject.onEffectGain = function(target, effect)
effect:addMod(xi.mod.DEX, effect:getPower())
2025-02-01 15:27:19 -06:00
end
itemObject.onEffectLose = function(target, effect)
end
return itemObject