RO
dúvida

Onde esta o erro neste script? (checar description)

Por roriscrave, 27 de out. de 2013 em Scripts

resolvido
script
12
2.5k
27 de outubro de 2013 às 03:28

script:

function onStepIn(cid, item, position, fromPosition)
local item = getPlayerItemById(cid, true, 1678)
local desc = getItemAttribute(item.uid, "description")
if item.itemid >= 1 then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "A descrição do seu item é 

".. desc ..".")
end
return true
end


Erro que acontece:

data/movement/script/check.lua6: attempt to concatenate local 'desc' <a nil value>

 

kbpauloK
27 de outubro de 2013 às 05:49
function onStepIn(cid, item, position, fromPosition)
local item = getPlayerItemById(cid, true, 1678)
local desc = getItemAttribute(item.uid, "description")
if item.itemid >= 1 then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "A descrição do seu item é"..desc..".")
end
return true
end

tenta.

RoksasR
27 de outubro de 2013 às 11:03

Desta forma:

 

 

function onStepIn(cid)
    local tmp = getPlayerItemById(cid, true, 1678)
    local descr = getItemAttribute(tmp.uid, "description")

    if (not item) or (not descr) then
        return true
    end

    doPlayerSendTextMessage(cid, 27, "A descrição do seu item é "..tostring(descr)..".")
    return true
end
 
LuckOakeL
27 de outubro de 2013 às 13:31

Tó:

function onStepIn(cid, item, position, fromPosition)
    local player_item = getPlayerItemById(cid, true, 1678)
    
    if player_item.uid > 0 and getItemAttribute(player_item.uid, "description") then
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "A descrição do seu item é "..getItemAttribute(player_item.uid, "description")..".")
    end
    return true
end

Editado Outubro 27 por LuckOake

27 de outubro de 2013 às 13:47

kbpaulo, o seu continua dando o mesmo erro.

roksas, não da erro mas não aparece a mensagem com a descrição do item

luckOake, funcionou para alguns items, os que já tem description no item.xml não funciona. So funciona para aqueles que eu adiciono description in-gmae, sabe como arrumar

LuckOakeL
27 de outubro de 2013 às 13:59

Corrigido:

function onStepIn(cid, item, position, fromPosition)
    local player_item = getPlayerItemById(cid, true, 1678)
    
    if player_item.uid > 0 then
        if getItemAttribute(player_item.uid, "description") then
            doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "A descrição do seu item é "..getItemAttribute(player_item.uid, "description")..".")
        elseif getItemInfo(player_item.itemid).description ~= "" then
            doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "A descrição do seu item é "..(getItemInfo(player_item.itemid).description)..".")
        end
    end
    return true
end
27 de outubro de 2013 às 14:19

LuckOake, me tira uma duvida, se o item já tiver um description no item.xml, dai o script do shop adiciona uma atribute nele de description "item comprado por X jogador", ao usar o script não pega essa nova description pq?

obs: so pega ela se o item não tiver uma descrição inicial no item.xml

LuckOakeL
27 de outubro de 2013 às 14:26

Rapaz, aí eu já não sei. Provavelmente é algum bug do TFS. Vou ver se acho algo aqui.

27 de outubro de 2013 às 14:28

melhor eu tirar a description do items.xml e deixa so a do shop (item comprado por x jogador)

dai da pra ver se é clone ou n rs

LuckOakeL
27 de outubro de 2013 às 14:29

Certo. Dúvida sanada?

 

Se sim, reporte o tópico para ser movido.

27 de outubro de 2013 às 14:32

sim, te dei o rep la, vlw demais fera!

OmegaO
27 de outubro de 2013 às 14:38

Tópico movido para a seção de dúvidas e pedidos resolvidos.