RESOLVIDO.
function onEquip(cid, item, slot) if getPlayerStorageValue(cid, getItemAttribute(item.uid, "storagetoequip")) == -1 then doPlayerSendCancel(cid, "You can't equip this item.") return false end return true end
Agora soh colocar um valor do storage que deve ser 1 no attributo do item "storagetoequip".
Exemplo:
doItemSetAttribute(item.uid, "storagetoequip", 15123) setPlayerStorageValue(cid, 15123, 1)
opa, entao ficaria assim?
function onEquip(cid, item, slot) if getPlayerStorageValue(cid, getItemAttribute(item.uid, "storagetoequip", 15123)) == -1 then doPlayerSendCancel(cid, "You can't equip this item.") return false end return true end
e como vai axar o id do item, onde coloco? me perdi aqui, desculpe a demora.
function onEquip(cid, item, slot) if (getPlayerStorageValue(cid, 1577) == -1) then doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Apenas players promote pode uzar esse iten!") return FALSE end return TRUE end
<movevent type="Equip" itemid="id do seu item" slot="hand" event="script" value="nome seu script.lua"/>
ai você for criar mais armas vip tem que cria outra tag com mesmo script.
ex:
<movevent type="Equip" itemid="id do seu item" slot="hand" event="script" value="nome seu script.lua"/>
<movevent type="Equip" itemid="id do seu novo iten vip" slot="hand" event="script" value="nome seu script.lua"/>
que der certo fala ai que não der arrumo.
ola, assim nao da, é o problema que falei no inico do topico, da duplicate id em movements ae todas as vocaçoes podem usar itens de outras vocaçoes, nao rola duplicar id, qria se possivel o script todo em 1 só, sem duplicaçao de id's.. o script q o byerne passou eu nao testei ainda, nao intendi como faz e me perdi.
preciso desta soluçao pra turma parar de roubar itens, é um sistema perfeito contra roubos e perdas de itens vip, oq adianta ter o item e nao poder usar? é perfeito, so o dono usa!
aguardo galera
melhor então você fazer uma vocação vip ai só vip uza iten
Seria assim, voce colocaria um attributo no item "storagetoequip". De preferencia um entre 15000 e 16000. (Exemplo)
O Script checaria se o player tem um storage deste mesmo numero positivo. E se tiver entao ele poderá equipar tal item.
Repensei agora e só daria certo por unique id.
function onEquip(cid, item, slot) if getPlayerStorageValue(cid, item.uid) == -1 then doPlayerSendCancel(cid, "You can't equip this item.") return false end return true end
A tag ficaria assim:
<movevent type="Equip" fromuid="15000" touid="16000" slot="hand" event="script" value="nome seu script.lua"/>
Ai voce teria que colocar o uid do item X. E o player teria que ter um storage de mesmo valor X igual a 1 para usa-lo.
melhorou, vou aplicar aqui, muito obrigado. rep+
Estou com uma duvida onde eu mudo a storage necessaria para usar o item?
Obr.