Vá a pasta data/movements/scripts e crie um arquivo chamado helmetspell.lua
Adicione o script:
local item_id = 10562 local slot = 1 function onEquip(cid, item) if getPlayerSlotItem(cid, slot).itemid == item then setPlayerStorageValue(cid, 2020) return true end end
Novamente, crie um arquivo chamado helmetspell2.lua
Adicione o script:
function onDeEquip(cid, item) setPlayerStorageValue(cid, 2020, 0) return true end
Agora em data/movements abra o arquivo movements.xml
Adicione as tags:
<movevent type="Equip" itemid="10562" slot="head" script="helmetspell.lua"/> <movevent type="DeEquip" itemid="10562" slot="head" script="helmetspell2.lua"/>
Abra a pasta data/actions/scripts e crie um arquivo chamado itembless.lua
local config = {
vocs = {0, 1, 2},
item_id = 2187,
lossPercent = 2,
}
function onUse(cid, item, frompos)
if getPlayerItemCount(cid, config.item) >= 1 and getPlayerVocation(cid) == config.vocs then
doPlayerRemoveItem(cid, config.item)
doPlayerSetLossPercent(cid, PLAYERLOSS_EXPERIENCE, config.lossPercent)
doSendMagicEffect(getPlayerPosition(cid), 29)
doSendPlayerTextMessage(cid, 27, "You are been blessed.")
else
doSendPlayerTextMessage(cid, 27, "You cannot use this item.")
end
end
Em vermelho são os ids das vocations que podem usar o item e ganhar a bless.
Em amarelo é o id do item.
Em azul é a porcentagem de exp que o player perde ao morrer.
Em roxo é a mensagem enviada ao player quando recebe a bless.
Em rosa é a mensagem enviada ao player quando não é nenhuma das vocations expecificadas.
Agora em data/actions abra o arquivo actions.xml
Adicione a tag:
<action itemid="xxxx" event="script" value="itembless.lua"/>
Em xxxx coloque o ID do item.
Agora enquanto a spell que só poderá ser usada pelo player quando usar o helmet, você terá de adicionar:
function onCastSpell(cid, var) if getPlayerStorageValue(cid, 2020) >= 1 then return false end
no arquivo .lua da spell, depois da parte:
function onCastSpell(cid, var)
Ficando então como exemplo:
... function onCastSpell(cid, var) if getPlayerStorageValue(cid, 2020) >= 1 then return false end ...
(...) representa que há continuação antes e após as partes.


info
Grupo: Campones
Registrado: 12/10/12
Posts: 45
Reputação: 0
Char no Tibia: num lebro o nome
Olá Xtibianos.
Vim aqui no forum pedir a ajuda de vcs.
Tenho um ot novo que começei a editar, queria fazer umas coisas novas nele.
Vim pedir dois scripts de Magia por Item e Blessing por Item.
O script de Magia por Item é o seguinte:
Um helmet (id 10562) que ao ser usado o player podia usar tal magia.
O script de Blessing por Item é o seguinte:
Um item (id 2187) que ao dar use ele sumirá e dará um blessing (as vocations 0, 1 e 2) que perde 2% por level e pode perder item.
Pesso a vocês que ao fazer o script colocar como editalo tipo como editar a quantidade de % que cada lvl perde.
Rep+ pra quem conseguir.