Ir para conteúdo

Featured Replies

Postado

Obrigado desde já.

 

Eu fiz esse script, ele funciona do jeito que eu queria único problema é que quando o jogador usa o logout da um erro no console. vale apena dizer que o erro só ocorre quando o jogador é desconectado o mesmo não acontece quando o player é conectado. (Imagem do erro em anexo)

 

Quando eu usei o

if isCreature(cid) then

achei que resolveria mas não aconteceu.

 

Sei que tinha uma maneira melhor de fazer o script. mas essa foi a unica logica que me veio a cabeça, caso haja outra deixa nos comentários 

 

function onDeEquip(cid, item, slot) 


           if isCreature(cid) then
              salvartest = getItemSpecialDescription(item.uid)
              
              doRemoveItem(item.uid)
              doSendMagicEffect(getCreaturePosition(cid), 2)
              doSetItemSpecialDescription(doPlayerAddItem(cid, 10103, 1), salvartest)
              return doPlayerSendCancel(cid, "Esse item não pode ser removido")
              else                                           
                  return doPlayerSendCancel(cid, "return false")
           end
end

Qual é o objetivo do item?

R: impedir que o jogador descarte ou movimente um determinado item.  

 

exemplo:  unique ball da pxg.

post-70826-0-54430800-1404737297_thumb.p

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

Postado

beleza onde você definiu o item? item.uid é uma referência

 

function onDeEquip(cid, item, slot) 


           
if isCreature(cid) then <<<<<<<<<<<<<<----------- condição se for criatura então
              salvartest = getItemSpecialDescription(item.uid)
              
              doRemoveItem
(item.uid) <<<<-------- remover o item item.uid (( não designado)) função correta:     doPlayerRemoveItem(cid, itemid, count)
              doSendMagicEffect(getCreaturePosition(cid), 2)
              doSetItemSpecialDescription(doPlayerAddItem(cid, 10103, 1), salvartest)
              return doPlayerSendCancel(cid, "Esse item não pode ser removido")
              else                                           
                 
return doPlayerSendCancel(cid, "return false")
           end
end


Tente algo mais como

 

function onDeEquip(cid, item, slot) 
local unequip =
getItemIdByName(param2)
 if unequip == 10901 then ---exemplo de id       
              doSendMagicEffect(getCreaturePosition(cid), 2)
              doSetItemSpecialDescription(doPlayerAddItem(cid, 10103, 1), salvartest)
              return doPlayerSendCancel(cid, "Esse item não pode ser removido")

return true

else
           end
end

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

Postado
  • Autor

eu não entendi?

--------------------------------------------------------------------

no 

doPlayerRemoveItem(cid, itemid, count)

tem que ser 

doRemoveItem(item.uid) 

por que não vai remover o item do jogador e sim do piso.

 

-------------------------------------------------------------------

 

você colocou um 

return true

 logo depois do 

return doPlayerSendCancel(cid, "Esse item não pode ser removido")

da um erro ai não?

 

-------------------------------------------------------------------------------

 

la no 

 if unequip == 10901 then ---exemplo de id  

eu coloco o id do item que n pode ser movido né?

 

-------------------------------------------------------------------

 

e aqui no 

local unequip = getItemIdByName(param2)

devo substituir o param2 por algo?

 

----------------------------------------------------------------------

 

valeu a tentativa mas não deu certo não =z

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

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