Então galera, no meu servidor tem um item que encanta armor, legs,weapons...
e quando alguém da use em algum item com ele dá esse erro no distro.
Alguém me ajuda a resolver???
Ocultar conteúdo
[Error - Action Interface] data/actions/scripts/arm100.lua:onUse Description: data/actions/scripts/arm100.lua:9: attempt to call global 'getItemArmor' (a nil value) stack traceback: data/actions/scripts/arm100.lua:9: in function <data/actions/scripts/arm100.lua:1>
arm100.lua
Ocultar conteúdo
function onUse(cid, item, frompos, item2, topos)
if isCreature(item2.uid) == TRUE then doPlayerSendCancel(cid, "You cannot use it on creature.") return TRUE end
local ile = 1 local arm = getItemArmor(item2.uid) if item2.uid ~=0 then descr = "Values: "
if(getItemActionId(item2.uid) < 100 or getItemActionId(item2.uid) > 110) and (arm ~= 0 or getItemAttack(item2.uid) ~= 0) then setItemArmor(item2.uid, arm + ile) setItemAttack(item2.uid, getItemAttack(item2.uid) + ile) setItemDefense(item2.uid, getItemDefense(item2.uid) + ile) doSendMagicEffect(topos, 13) doRemoveItem(item.uid,1) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR,"Upgrade successful.") doItemSetAttribute(item2.uid, "aid", getItemActionId(item2.uid)+1) if(getItemActionId(item2.uid)) == 1 then doItemSetAttribute(item2.uid, "aid", 100) end return TRUE end
if(getItemActionId(item2.uid) >= 109) and (arm ~= 0 or getItemAttack(item2.uid) ~= 0) then doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR,"Your item is upgraded to max level.") return TRUE end
local random = math.random(0, 10) if(arm ~= 0) then if random > getItemActionId(item2.uid)-99 then setItemArmor(item2.uid, arm + ile) setItemAttack(item2.uid, getItemAttack(item2.uid) + ile) setItemDefense(item2.uid, getItemDefense(item2.uid) + ile) doSendMagicEffect(topos,13) doRemoveItem(item.uid,1) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR,"Upgrade successful.") doItemSetAttribute(item2.uid, "aid", getItemActionId(item2.uid)+1) if(getItemActionId(item2.uid)) == 1 then doItemSetAttribute(item2.uid, "aid", 100) end else doRemoveItem(item.uid,1) doRemoveItem(item2.uid,1)
doSendMagicEffect(topos,2) doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR,"Sorry your item is broken.") end else doPlayerSendCancel(cid,"You can't upgrade this.") end return TRUE end return TRUE end
info
Grupo: Visconde
Registrado: 09/08/10
Posts: 314
Reputação: +19
Char no Tibia: não tenho
Então galera, no meu servidor tem um item que encanta armor, legs,weapons...
e quando alguém da use em algum item com ele dá esse erro no distro.
Alguém me ajuda a resolver???
[Error - Action Interface]
data/actions/scripts/arm100.lua:onUse
Description:
data/actions/scripts/arm100.lua:9: attempt to call global 'getItemArmor' (a nil value)
stack traceback:
data/actions/scripts/arm100.lua:9: in function <data/actions/scripts/arm100.lua:1>
arm100.lua
function onUse(cid, item, frompos, item2, topos)
if isCreature(item2.uid) == TRUE then
doPlayerSendCancel(cid, "You cannot use it on creature.")
return TRUE
end
local ile = 1
local arm = getItemArmor(item2.uid)
if item2.uid ~=0 then
descr = "Values: "
if(getItemActionId(item2.uid) < 100 or getItemActionId(item2.uid) > 110) and (arm ~= 0 or getItemAttack(item2.uid) ~= 0) then
setItemArmor(item2.uid, arm + ile)
setItemAttack(item2.uid, getItemAttack(item2.uid) + ile)
setItemDefense(item2.uid, getItemDefense(item2.uid) + ile)
doSendMagicEffect(topos, 13)
doRemoveItem(item.uid,1)
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR,"Upgrade successful.")
doItemSetAttribute(item2.uid, "aid", getItemActionId(item2.uid)+1)
if(getItemActionId(item2.uid)) == 1 then
doItemSetAttribute(item2.uid, "aid", 100)
end
return TRUE
end
if(getItemActionId(item2.uid) >= 109) and (arm ~= 0 or getItemAttack(item2.uid) ~= 0) then
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR,"Your item is upgraded to max level.")
return TRUE
end
local random = math.random(0, 10)
if(arm ~= 0) then
if random > getItemActionId(item2.uid)-99 then
setItemArmor(item2.uid, arm + ile)
setItemAttack(item2.uid, getItemAttack(item2.uid) + ile)
setItemDefense(item2.uid, getItemDefense(item2.uid) + ile)
doSendMagicEffect(topos,13)
doRemoveItem(item.uid,1)
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR,"Upgrade successful.")
doItemSetAttribute(item2.uid, "aid", getItemActionId(item2.uid)+1)
if(getItemActionId(item2.uid)) == 1 then
doItemSetAttribute(item2.uid, "aid", 100)
end
else
doRemoveItem(item.uid,1)
doRemoveItem(item2.uid,1)
doSendMagicEffect(topos,2)
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR,"Sorry your item is broken.")
end
else
doPlayerSendCancel(cid,"You can't upgrade this.")
end
return TRUE
end
return TRUE
end
desde já obrigado!
Editado Agosto 5 por diarmaint