Ir para conteúdo

[Resolvido]Sobre Novas Vocações


lordluca666

Posts Recomendados

Oi pessoas do xtibia!

 

eu to aqui pra pergunta como eu coloko pra um npc da minha nova promoção por player.

que nem quando se vai la e fla

hi

promotion

yes

e vira master sorc/elder druid etc

so que eu queria colokar a minha vocação, tipo o cara 1ºe sorc, vira master sorc, ai depois vira Zone sorc que e minha nova vocação eu queria sabe como eu coloko isso em um npc pra ele dar essa vocação para os player.

quem poder responder pf responde ai

 

E outra coisa pq nao consigu ve os spoiler do pessoal eu so registrado e nao consigu ve

 

 

A e tambem

 

Desculpa se postei area errada

 

Quem quise joga o ot e so entra:

ip:thegamezone84.no-ip.org

versao:8.40

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

Ola

Kara eu nao posso te ajudar com npc mais eu posso te fazer um talkaction se voce curtir bota ai no seu ot

 

Va em data/talkactions/scripts copie qualquer um cole e renomeie para zone promotion e bote isso dentro:

function onSay(cid, words, param)

if getPlayerVocation(cid) <= 8 then

if doPlayerRemoveMoney(cid, 20000) == TRUE then

setPlayerPromotionLevel(cid, getPlayerPromotionLevel(cid) + 1)

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Voce comprou Zone Promotion!")

doSendMagicEffect(getPlayerPosition(cid), 30)

else

doPlayerSendCancel(cid, "Desculpe, voce nao tem dinheiro para a promotion!")

doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)

end

else

doPlayerSendCancel(cid, "Desculpe, voce ja esta promovido")

end

return TRUE

end

 

Va em talkactions.xml e procure pela parte dos players e bote a seguinte tag:

 

<talkaction words="!buyzonepromotion" script="zone promotion.lua"/>

 

Legenda:

Vermelho Preço da Promotion

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

Ola

Kara eu nao posso te ajudar com npc mais eu posso te fazer um talkaction se voce curtir bota ai no seu ot

 

Va em data/talkactions/scripts copie qualquer um cole e renomeie para zone promotion e bote isso dentro:

 

 

Va em talkactions.xml e procure pela parte dos players e bote a seguinte tag:

 

 

 

Legenda:

Vermelho Preço da Promotion

 

Cara t vlw pelo script mais assim da pra vc explica melhor eu nao so muito bom nisso oque eu tenho que troca ali pra coloka o numero da minha nova vocação

Link para o comentário
Compartilhar em outros sites

Pra adicionar no NPC é só adicionar essas linhas no arquivo promotion.lua dentro da pasta data\npc\scripts (verifique as subpastas também):

 

local cost2 = 50000 -- preço em gp

local level2 = 100 -- level necessário

 

local node2 = keywordHandler:addKeyword({'zone'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'I can promote you for ' .. cost2 .. ' gold coins. Do you want me to promote you?'})

node2:addChildKeyword({'yes'}, StdModule.promotePlayer, {npcHandler = npcHandler, cost = cost2, level = level2, promotion = 2, text = 'Congratulations! You are now ezoned.'})

node2:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Alright then, come back when you are ready.', reset = true})

 

Caso não saiba adicionar, veja como eu adicionei no meu:

 

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 = 'I can promote you for 20000 gold coins. Do you want me to promote you?'})

node1:addChildKeyword({'yes'}, StdModule.promotePlayer, {npcHandler = npcHandler, cost = 20000, level = 20, promotion = 1, text = 'Congratulations! You are now promoted.'})

node1:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Alright then, come back when you are ready.', reset = true})

 

local cost2 = 50000 -- preço em gp

local level2 = 100 -- level necessário

 

local node2 = keywordHandler:addKeyword({'zone'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'I can promote you for ' .. cost2 .. ' gold coins. Do you want me to promote you?'})

node2:addChildKeyword({'yes'}, StdModule.promotePlayer, {npcHandler = npcHandler, cost = cost2, level = level2, promotion = 2, text = 'Congratulations! You are now ezoned.'})

node2:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Alright then, come back when you are ready.', reset = true})

 

npcHandler:addModule(FocusModule:new())

 

~~

 

Sobre o Spoiler, pode ser um bug, mas não sei como arrumar. Mesmo assim vale a pena verificar:

 

 

Funciono ;D

 

 

;D

 

~~

 

MatheusMkalo,

 

setPlayerPromotionLevel(cid, getPlayerPromotionLevel(cid) + 4)
Editado por lucasjockey
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...