Ir para conteúdo

Featured Replies

Postado

vamos analisar o erro que deu: 

[24/12/2014 17:18:36] (luaDoRemoveItem) Item not found

ele  tentou remover o item mas não havia item. Pra resolver isso vc precisa fazer duas coisas bem simples, pegar o uid do item coletado (não sei se a função já faz isso automaticamente) e fazer a checagem se aquele uid é válido.
ficaria assim sem o callback:

for posx = 490,496 do -- checar posição X, começo e final da sala
for posy = 498,503 do -- checar posicao Y, começo e final da sala
local pos = {x=posx, y=posy, z=5} 
local limpar = getTileItemById(pos, 1739)                
	if limpar > 0 then
		doRemoveItem(limpar.uid)
	end
end
end

se der erro só coloca ali na checagem if limpar.uid > 0 then

Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá!

"Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda

I7Pm6ih.png

(obg ao @Beeny por fazer essa linda sign <3)

  • Respostas 7
  • Visualizações 1k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Tente: function onStepIn(cid)     local items = {1903, 1904, 1905}     for posx = 490, 496 do         for posy = 498, 503 do             local pos = {x=posx, y=posy, z=5}             for i = 1, #ite

  • vamos analisar o erro que deu:  [24/12/2014 17:18:36] (luaDoRemoveItem) Item not found ele  tentou remover o item mas não havia item. Pra resolver isso vc precisa fazer duas coisas bem simples, peg

Postado
  • Autor

Essa combinação aqui deu certo @White:

function onStepIn(cid)

for posx = 490,496 do -- checar posição X, começo e final da sala
for posy = 498,503 do -- checar posicao Y, começo e final da sala
local pos = {x=posx, y=posy, z=5} 
local limpar = getTileItemById(pos, 1903)                


if limpar.uid > 0 then
doRemoveItem(limpar.uid)
end
end
end

return TRUE
end

 

Mas acabei de perceber um detalhe adicional.
Como faço para remover vários itens selecionado.
Ex: Em uma sala tenho Itens 1, 2, 3, 4 e 5.

Quero remover apenas os Itens 1, 2, 3 e 5.
Queria uma tabela, onde eu possa adicionar os IDs dos itens que eu quero remover.

Editado por Frenesy (veja o histórico de edições)

cms1-pr%C3%AAmio.png

Postado
  • Solução

Mas acabei de perceber um detalhe adicional. Como faço para remover vários itens selecionado.

Tente:

function onStepIn(cid)
    local items = {1903, 1904, 1905}
    for posx = 490, 496 do
        for posy = 498, 503 do
            local pos = {x=posx, y=posy, z=5}
            for i = 1, #items do
                local limpar = getTileItemById(pos, items[i])
                if limpar.uid > 0 then
                    doRemoveItem(limpar.uid)
                end
            end
        end
    end
    
    return true
end

The corrupt fear us.

The honest support us.

The heroic join us.

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo