[Resolvido]Sobre Novas Vocações

lordluca666
em Lixeira Pública

lordluca666

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 27/04/09Posts: 4

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

Vilden

Loading. . .
avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 09/05/08Posts: 1597

Amigo local incorreto, tenha mais atenção onde postar.

você está pedindo uma script pelo que vejo, o local mais correto seria em

-> Pedidos de Scripts

 

Tópico reportado!

(para mover)

Atenciosamente, Vilden.

Henrique Moura

Ex-administrador
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 17/02/08Posts: 2541

Peço um pouco mais de ateção antes de postar, verifique se a seção que você está criando o tópico é realmente a seção mais adepta ao assunto do mesmo.

Tópico movido,

Grato.

KaKilo ~
 


Lom14fD.png

MatheusGlad

<~~> Scripter <~~>
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 09/09/09Posts: 528Char no Tibia: Emekalo Makalo

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

Yours Mkalo :)

lordluca666

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 27/04/09Posts: 4

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

lucasjockey

avatar
Artesão
Artesão

INFOS

Grupo: ArtesãoRegistrado: 30/07/07Posts: 101

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)

x[sup]2[/sup]=-1
x=i
:D

Vilden

Loading. . .
avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 09/05/08Posts: 1597

Dúvida sanada, tópico reportado pelo dono.

 

 

Fechado.

Atenciosamente, Vilden.