[Talkaction]Trocar Vocation Por Talkaction

130379
Por 130379
em Actions e Talkactions

130379

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 06/09/10Posts: 7Char no Tibia: Thralan Cat

Oi boa tarde a todos meu 1° topico que trago ao xTibia

Entao vamos ao que entereça:

Versao testada:Baiak Server 8.6

 

1° Vá até data/talkaction/scripts Crie um arquivo vocation.lua e ponha isso dentro:

 

 

--0-0BY Gui-0-0-----------------------------------------------------

function onSay(cid, words, param)

 

if getPlayerVocation(cid) <= 8 then

if doPlayerRemoveItem(cid,9633,1) == TRUE then

 

doPlayerSetVocation(cid,getPlayerVocation(cid)+numero da vocation)

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You have been promoted!")

doSendMagicEffect(getPlayerPosition(cid), 30)

 

else

 

doPlayerSendCancel(cid, "Sorry, you don't have enought money")

doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)

 

end

else

 

doPlayerSendCancel(cid, "Sorry, you are already promoted")

end

end

 

Roxo:é o numero da vocaçao que vc criou(vocation id)

Rosa é no numero do item e a quantidade.

vermelho:é a mensagem que vai aparecer quando o player trocar de vocaçao ou se ele nao tiver o item ou se ele ja tiver a vocaçao

 

Agora Criei o talkaction vamos adicionar a talkaction.xml

 

talkaction words="!supervocation" event="script" value="vocation.lua"/>

 

 

Roxo: mensagem que o player vai usa para virar a nova vocaçao.

vermelho: nome do script que seria vocation.lua

 

Meu Primeiro Post se tiver erros ou soluçoes Melhores Porfavor Corrigam e me ajudem a cada vez melhorar os tópicos do x tibia.

Duvidas Inuteis porfavor sem essa!Duvidas poste perguntas no topico abrçoes. :thumbsupsmiley: :thumbsupsmiley:

Estou com uma duvida no meu ot fiz isso pras 4 vocaçoes trocarem agora seria quando o cara pegar o item e falar o necessario ele troca so q so troca pra sorcerer tpw la no script pus tudo certo so q vai direto pra sorcerer entende!! espero que me ajudem

Eskylo

boa sorte
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 11/08/10Posts: 477Gênero: Masculino
--0-0BY Gui-0-0-----------------------------------------------------

function onSay(cid, words, param)

 

if getPlayerVocation(cid) <= 4 then

if doPlayerRemoveItem(cid,9633,1) == TRUE then

 

doPlayerSetVocation(cid,getPlayerVocation(cid)+4)

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "You have been promoted!")

doSendMagicEffect(getPlayerPosition(cid), 30)

 

else

 

doPlayerSendCancel(cid, "Sorry, you don't have enought money")

doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)

 

end

else

 

doPlayerSendCancel(cid, "Sorry, you are already promoted")

end

end

Corrigi aí, assim

if getPlayerVocation(cid) <= 8 then

vai dar promoção se o player for de uma vocação menor ou igual a 8, não sei se seu server até a vocação 8 ainda são vocações sem promotion, mas em ot, digamos normais, vocação sem promoção vai até 4, entao essa condição deve ser:

if getPlayerVocation(cid) <= 4 then

para dar promoção somente se o jogador tiver vocação 4 ou menor. (Pra ots que 'rook' tem deve ter uma verificação se o jogador já tem vocação.)

 

Nessa linha:

doPlayerSetVocation(cid,getPlayerVocation(cid)+4)

em servidores normais é assim, +4, por que sorcerer (vocação 1) +4=5 5 é master sorcerer e assim por diante. Caso não obedeça a regularidade de +4, você terá de criar uma tabela ou usar elseif.

 

Mesmo assim parabéns pelo script (ele foi montado certo) e pela organização do tópico! :button_ok:

Atenciosamente, Eskylo

 

 

Ironman-icon.png

.

.

130379

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 06/09/10Posts: 7Char no Tibia: Thralan Cat

Mt obrigado e que n sei mecher mt com scripts e nao entendi muito mas brigado pela intençao

Espero que aprovem meu topico