Postado Agosto 7, 2015 9 anos O player clica no item e a vocação dele é trocada pra X, só pode ser usada no level -10 até o 10 pode usar, mais não.
Postado Agosto 7, 2015 9 anos Em "Data/actions/scripts", copie e cole um arquivo.lua e renomeie para changeVoc.lua, apague tudo e cole: local t = { checkStorage = 0092, -- Não altere mesmo que faça outro script para outra vocation!!! vocStorage = 0091, -- Mesma coisa da checkStorage. maxLevel = 10, -- Level máximo para usar. useVoc = 7 -- Vocação após usar o item. } function onUse(cid, item) if getPlayerLevel(cid) <= t.maxLevel then doPlayerSetVocation(cid, t.useVoc) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Sua vocação foi alterada para ".. (getVocationInfo(t.useVoc).name) ..".") setPlayerStorageValue(cid, t.vocStorage, t.useVoc) setPlayerStorageValue(cid, t.checkStorage, 1) doSendMagicEffect(getPlayerPosition(cid), CONST_ME_MAGIC_GREEN) doRemoveItem(item.uid, 1) else doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Apenas jogadores com level inferior a ".. t.maxLevel .." podem utilizar este item.") end return true end Em "Data/actions", abra o arquivo actions.xml e adicione: <action itemid="2456" event="script" value="changeVoc.lua"/> Agora em "Data/creaturescripts/scripts", copie e cole um arquivo.lua e renomeie para changeVoc.lua, apague tudo e cole: local t = { checkStorage = 0092, vocStorage = 0091 } function onLogin(cid) if getPlayerStorageValue(cid, t.checkStorage) > 0 then doPlayerSetVocation(cid, getPlayerStorageValue(cid, t.vocStorage)) end return true end Em "Data/creaturescripts", no arquivo creaturescripts.xml adicione: <event type="login" name="changeVocation" event="script" value="changeVoc.lua"/> A mesma regra das storage no primeiro arquivo se aplicam ao segundo! Se der algum problema, me avise. ➥ Regras | Seções OTServ | Seções BOT
Postado Agosto 8, 2015 9 anos Em 08/08/2015 em 10:50, SilenceRoot disse: É necessario o creaturescript? Sim, se você não adiciona-lo, quando o jogador relogar a vocação irá voltar para a antiga. ➥ Regras | Seções OTServ | Seções BOT
Postado Agosto 8, 2015 9 anos Autor Dei uma pesquisada no fórum e achei script sem o creaturescript, porem não está indo, poderia dar uma olhada? function onUse(cid,item,frompos,item2,topos) if item.uid == 3000 then doPlayerSetVocation(cid,1) doSendMagicEffect(topos,14) doPlayerSendTextMessage(cid,22,"Voce trocou sua vocaçao pra assassin.") else doPlayerSendCancel(cid,"You cannot use this object.") end return 1 end
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.