37 lines
1 KiB
Lua
37 lines
1 KiB
Lua
-----------------------------------
|
|
-- ID: 14960
|
|
-- Evoker's Gages
|
|
-- Pet mod via latent effect
|
|
-----------------------------------
|
|
---@type TItem
|
|
local itemObject = {}
|
|
local listenerPrefix = 'PET_MOD_LATENT'
|
|
local latentPetId = xi.petId.LEVIATHAN
|
|
local latentMods =
|
|
{
|
|
{ xi.mod.ATT, 10 },
|
|
}
|
|
|
|
itemObject.onItemCheck = function(target, item, caster)
|
|
return 0
|
|
end
|
|
|
|
itemObject.onItemEquip = function(user, item)
|
|
local listenerName = fmt('{}_{}', listenerPrefix, item:getID())
|
|
xi.itemUtils.handlePetLatentMods(user, latentPetId, latentMods, true)
|
|
|
|
user:addListener('MAGIC_STATE_EXIT', listenerName, function(player, spell)
|
|
if spell:getSpellGroup() == xi.magic.spellGroup.SUMMONING then
|
|
xi.itemUtils.handlePetLatentMods(user, latentPetId, latentMods, true)
|
|
end
|
|
end)
|
|
end
|
|
|
|
itemObject.onItemUnequip = function(user, item)
|
|
local listenerName = fmt('{}_{}', listenerPrefix, item:getID())
|
|
xi.itemUtils.handlePetLatentMods(user, latentPetId, latentMods, false)
|
|
|
|
user:removeListener(listenerName)
|
|
end
|
|
|
|
return itemObject
|