Ir para conteúdo
  • 0

[Pedido] Item Exclusivo Para Jogador (Unique)


ZeNit91

Pergunta

Tipo do script: Item Exclusivo para jogador (Unique)

Protocolo (versão do Tibia): 8.54

Servidor utilizado: PkeDash

Nível de experiência: Medio

Adicionais/Informações:

 

Ola gostaria De um sistema que funcionasse da seguinte Maneira

 

Jogador recebe Um item em 1 guest que nao pode ser trocado ou jogado no chão.

 

OBS: Ja tenho os itens estão Prontos e separados a guest que dara o item tbm esta pronto, oque esta faltado é um jeito de bloquear esses itens para troca e drop.

 

Id: 12578 nome: Unique Ruby

Id: 12579 nome: Unique Potion

Id: 12580 nome: Unique Stamina

 

Quando o jogador receber algum desses itens de um bau ele nao poderá trocar nem jogar no chão

 

Darei Rep COm Orgulho

Link para o comentário
Compartilhar em outros sites

10 respostass a esta questão

Posts Recomendados

  • 0

crie um arquivo item.lua em movements/scripts e adicione isso:

local uniqueitems = [12578, 12579, 12580]
function onDeEquip(cid, item)
if item.itemid == uniqueitems then
doPlayerSendCancel(cid, "Sorry, this is an unique item.")
end
end

 

tag: <movevent type="DeEquip" itemid="12578,12579,12580 " event="script" value="item.lua"/>

 

Depois na mesma pasta crie trade.lua e adicione:

 

function onTradeAccept(cid, target, item, targetItem)
if item.itemid == 2578 or targetItem.itemid == 12579 or targetItem.itemid == 12580 then
doPlayerSendCancel(cid, "Sorry, you cannot trade this item.")
end
end

 

tag: <movevent type="TradeAccept" itemid="12578,12579,12580" event="script" value="trade.lua"/>

Editado por lucashgas
Link para o comentário
Compartilhar em outros sites

  • 0

Obrigado aí LucasHGas ....

Acho que sem querer querendo você me ajudou e me deu uma idéia maneira para meu server'

 

 

Obrigado ae novamente'

Vou testar aqui e edito para postar o resultado.

 

[estou_sem_rep+] button_cancel.png

 

 

@@@EDIT

LucasHGas ....

Corrige aí o que ficou com erro de digitação na sua tag'

tag: <movevent type="DeEquip" itemid="12578,12579,12580 " event="script" value="iitem.lua"/>

Ficou com dois "ii"s, e se o cara não souber nada de Script ele vai ter um erro e não vai saber arrumar'

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

E nesta, a tag não está finalizada'

tag: <movevent type="TradeAccept" itemid="12578,12579,12580" event="script" value="trade.lua"/>

Faltou o fim da Tag "/>"...

 

Obs: Nem todos os OTServer's possuem o movevent type="TradeAccept"... tem que colocar isso em pauta'

 

 

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

 

Tipo do script: Item Exclusivo para jogador (Unique)

Protocolo (versão do Tibia): 8.54

Servidor utilizado: PkeDash

Nível de experiência: Medio

Adicionais/Informações:

 

Ola gostaria De um sistema que funcionasse da seguinte Maneira

 

Jogador recebe Um item em 1 guest que nao pode ser trocado ou jogado no chão.

 

OBS: Ja tenho os itens estão Prontos e separados a guest que dara o item tbm esta pronto, oque esta faltado é um jeito de bloquear esses itens para troca e drop.

 

Id: 12578 nome: Unique Ruby

Id: 12579 nome: Unique Potion

Id: 12580 nome: Unique Stamina

 

Quando o jogador receber algum desses itens de um bau ele nao poderá trocar nem jogar no chão

 

Darei Rep COm Orgulho

 

Aproveitando que estou aqui no Tópico, resolvi postar uma solução mais simples para você'

Siga os passos abaixo'

 

 

1º Baixe o OtItemEditor' (Ot Item Editor)

 

2º Basta abrir o OtItemEditor'

 

3º Clique e "File" e logo após clique em "Open"...

 

4º Procure o arquivo "items.otb" na pasta do seu OTserver' (geralmente em "data / items / items.otb")...

 

5º Como já sabe a ID do item que quer editar... procure-o no Item Editor...

 

6º E tire a opções "Moveable" e "Pickupable" que provavelmente estará selecionada'

 

7º Salve e pronto'

 

 

 

 

Espero ter ajudado'

 

 

Atenciosamente,

Adriano Swatt

Editado por Gonorreia
Link para o comentário
Compartilhar em outros sites

  • 0

@lucashgas

 

ocorreu o seguinte erro

 

[09/02/2012 17:17:01] [Error - LuaScriptInterface::loadFile] data/movements/scripts/uniqueitem.lua:1: unexpected symbol near '['

[09/02/2012 17:17:01] [Warning - Event::loadScript] Cannot load script (data/movements/scripts/uniqueitem.lua)

[09/02/2012 17:17:01] data/movements/scripts/uniqueitem.lua:1: unexpected symbol near '['

[09/02/2012 17:17:01] [Error - MoveEvent::configureMoveEvent] Unknown event type "TradeAccept"

 

O meu servidor é o dash adv

Editado por Zerons
Link para o comentário
Compartilhar em outros sites

  • 0

Xerons,

 

Faça como o [Gonorreia] falou, pelo ItemEditor é melhor e funciona em qualquer ot. em alguns ot nao tem o event TradeAccept.

( Unknown event type "TradeAccept" )

 

Pelo ItemEditor ( item.otb ), basta vc desmarcar a opção ( "Moveable" e "Pickupable" )

 

( Para achar o item vc pode ir no item.xml pega o ID e procura no ItemEditor. )

 

xD

Editado por Lailton
Link para o comentário
Compartilhar em outros sites

  • 0

da pra fazer tem event de trade s

 

onTradeRequest(cid, target, item)

onTradeAccept(cid, target, item, targetItem)

 

O problema eh que ta TradeAccept e o certo seria tradeaccept ... case sensitive

Editado por MatheusMkalo
Link para o comentário
Compartilhar em outros sites

  • 0

da pra fazer tem event de trade s

 

onTradeRequest(cid, target, item)

onTradeAccept(cid, target, item, targetItem)

 

O problema eh que ta TradeAccept e o certo seria tradeaccept ... case sensitive

 

entao so tenho que colocar o tradeaccept em modo sensitive simples ?

Link para o comentário
Compartilhar em outros sites

  • 0

@ZeNit91

 

ae parceirao funciona desse geito ?

 

Citar

function onTradeAccept(cid, target, item, targetItem)
if item.itemid == [1453, 1450, 15603, 15602, 15604, 15605, 15606, 15607, 15600, 15948, 15599, 15601, 1386, 352, 353, 359, 2407, 2408, 2409, 2404, 2405, 2406, 2401, 2402, 2403, 2397, 2396, 2395, 2398, 2399, 2400, 2386, 2387, 2388, 2394, 2393, 2392, 2391, 2390, 2389, 1805, 1804, 1803, 1808, 1807, 1806, 2382, 2381, 2380, 2383, 2384, 2385, 1796, 1797, 1798, 1799, 1800, 360, 361, 362, 363, 364, 365, 366, 367, 368, 333, 369, 370, 371, 372, 373, 374, 377, 378, 379, 380, 381, 382, 383]
doPlayerSendCancel(cid, "Sorry, you cannot trade this item.")
end
end

 

 

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...