Primeiramente vamos ao seu Vocations.XML que se encontra dentro da pasta de seu ot, no caso seuot\data\xml.
ai dentro vão está varios arquivos .XML então você terá que adicionar a nova vocação e escolher seus devidos IDs, abaixo uma descrição para melhor entendimento.
No caso ai eu adicionei 4 novas vocações como você pode ver a Killer Sorcerer de ID 9 , Killer druid de ID 10, Killer paladin de ID 11 e por ultimo o Killer Knight de ID 12. ai é só copiar as 4 novas vocações e adicionar no seu Vocations.XML ou então copie tudo e cole por cima do seu.
vamos a segunda parte.
agora iremos adicionar as novas IDs de nossa vocação no Function.lua ele se econtra na pasta data\lib.
em alguns ots em vez do function.lua tem um arquivo chamado 031-vocations.lua, abra ele e dê uma verificada se estiver mais ou menos ao codigo abaixo, é só copiar e cola, mas se não vamus para segunda parte
function isSorcerer(cid)
return isInArray({1,5,9}, getPlayerVocation(cid))
end
function isDruid(cid)
return isInArray({2,6,10}, getPlayerVocation(cid))
end
function isPaladin(cid)
return isInArray({3,7,11}, getPlayerVocation(cid))
end
function isKnight(cid)
return isInArray({4,8,12}, getPlayerVocation(cid))
end
function isRookie(cid)
return isInArray({0}, getPlayerVocation(cid))
end
em otservs antigos temos somente o arquivo Function.lua, e concerteza ele estará desatualizado, então copie esse codigo abaixo e cole, lembrando que somente se não conseguir do modo acima, se não irá bugar a abertura do ot.
Agora a criação do Npc que venderá a vocação, vamus primeiro em data\npc
copie qualquer um e edite, escolha um nome de sua preferência, no caso ai o nome dele é Killer Promote.
Agora vá pasta Scripts que se encontra dentro da pasta Npc, se ligue que o NPC vai pegar o script promotion3.lua então você deverá criar o script com esse nome.
copie e cole algum arquivo e renomeie para algo do tipo assim promotion3, e cole o conteudo abaixo dentro dele.
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end
function onThink() npcHandler:onThink()
end
local node1 = keywordHandler:addKeyword({'promot'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Posso promove-lo por 20k. Voce quer?'})
node1:addChildKeyword({'yes'}, StdModule.promotePlayer, {npcHandler = npcHandler, cost = 20000, level = 20, promotion = 1, text = 'Parabens voce foi promovido.'})
node1:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Tudo bem, volte quando estiver pronto.', reset = true})
local node2 = keywordHandler:addKeyword({'killer'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Posso promove-lo para um Killer por 30kk. Voce quer?'})
node2:addChildKeyword({'yes'}, StdModule.promotePlayer, {npcHandler = npcHandler, cost = 3000000, level = 100, promotion = 2, text = 'Agora voce e um killer.'})
node2:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Tudo bem, volte quando estiver pronto.', reset = true})
npcHandler:addModule(FocusModule:new())
Vamus as explicação do que o NPC vai falar esqueça a parte do local node1, pois ali está vendendo as primeiras vocações no caso Elite Knight e etc, vamus para local node2.
keywordHandler:addKeyword({'killer'}
Killer é o que você vai falar para o Npc vender a nova vocação
{npcHandler = npcHandler, cost = 3000000, level = 100
cost é o valor da nova promotion, ai tá 30kk e level = 100 é o level necessário para obtelá.
uffa terminei, espero que te ajude.
Quem Está Navegando
0 membros estão online
Nenhum usuário registrado visualizando esta página.