Ir para conteúdo

[moveevent] Treiners Sem Treiners


Skyblade

Posts Recomendados

eu pedi pra reabrirem ele mas ngm me ouviu... isso é uma falta de consideração ¬¬

 

só estou querendo ajudar.. mas se n derem ouvidos.. exclui...

 

Olá! :party:

 

Eu novamente trazendo novidades pro xtibia!

Queria logo avisar.. q essa action ja deve ter sido inventada, pois eu vi ela em outro servidor, gostei e tudo, n consegui falar com o host que criou nem nada (isso faz um ano mais ou menos), ai eu tive a ideia de montar ela pra ve se conseguia =D, e deu certo...

Começando:

Primeiramente vá em movements/scripts, copie qualquer arquivo e renomeie para treino.lua

abra ele e add..

 


--Script by Skyblade

function onStepIn(cid, item, position, fromPosition)





local parametro = {cid=cid}

voc = getPlayerVocation(cid)

p = getPlayerPosition(cid)

doTransformItem(item.uid,item.itemid-1)

if voc == 0 then

doPlayerSendTextMessage(cid,25,"Somente players com vocação podem treinar!")

elseif voc == 1 or voc == 2 or voc == 5 or voc == 6 then  --pode ser editada

mageevent = addEvent(mage,3000,parametro)

doSendMagicEffect(p,3)

doPlayerSendTextMessage(cid,25,"Seu Treinamento começa em instantes!")

elseif voc == 3 or voc == 7 then --pode ser editada

archerevent = addEvent(arch,3000,parametro)

doPlayerSendTextMessage(cid,25,"Seu Treinamento começa em instantes!")

doSendMagicEffect(p,3)

elseif voc == 4 or voc == 8 then --pode ser editada

knightevent = addEvent(kina,3000,parametro)

doPlayerSendTextMessage(cid,25,"Seu Treinamento começa em instantes!")

doSendMagicEffect(p,3)

end



setPlayerStorageValue(cid,1881,p.x)

setPlayerStorageValue(cid,1882,p.y)





return TRUE

end







function mage(parametro)

cid = parametro.cid

parametro = {cid=cid}





p = getPlayerPosition(cid)

xiz = getPlayerStorageValue(cid,1881)

yps = getPlayerStorageValue(cid,1882)

inip = {x=xiz,y=yps,z=7,stackpos=253}

ini = getThingfromPos(inip)

if ini.uid == cid then

doPlayerAddSkillTry(cid,5,5)

doPlayerAddSpentMana(cid,100)

mageevent = addEvent(mage,1000,parametro)

doSendMagicEffect(p,12)

ip = getPlayerIp(cid)

if ip == 0 then

stopEvent(mageevent)

end

end









end







function kina(parametro)

cid = parametro.cid

parametro = {cid=cid}

p = getPlayerPosition(cid)

ip = getPlayerIp(cid)

if ip == 0 then



stopEvent(knightevent)

end

xiz = getPlayerStorageValue(cid,1881)

yps = getPlayerStorageValue(cid,1882)

inip = {x=xiz,y=yps,z=7,stackpos=253}

ini = getThingfromPos(inip)

if ini.uid == cid then

knightevent = addEvent(kina,1000,parametro)

doSendMagicEffect(p,12)

club = getPlayerSkill(cid,1)

sword = getPlayerSkill(cid,2)

axe = getPlayerSkill(cid,3)

doPlayerAddSkillTry(cid,3,5)





if (club > axe) and (club > sword) then

doPlayerAddSkillTry(cid,1,5)

elseif (axe > club) and (axe > sword) then

doPlayerAddSkillTry(cid,3,5)

elseif (sword > axe) and (sword > club) then

doPlayerAddSkillTry(cid,2,5)

end



doPlayerAddSkillTry(cid,5,5)

doPlayerAddSpentMana(cid,100)

end





end



function arch(parametro)

cid = parametro.cid

parametro = {cid=cid}

p = getPlayerPosition(cid)

ip = getPlayerIp(cid)

if ip == 0 then



stopEvent(archevent)

end

xiz = getPlayerStorageValue(cid,1881)

yps = getPlayerStorageValue(cid,1882)

inip = {x=xiz,y=yps,z=7,stackpos=253}

ini = getThingfromPos(inip)

if ini.uid == cid then

archerevent = addEvent(arch,1000,parametro)

doSendMagicEffect(p,12)

doPlayerAddSkillTry(cid,4,5)

doPlayerAddSkillTry(cid,5,5)

doPlayerAddSpentMana(cid,100)

 end
end


function onStepOut(cid, item, position, fromPosition)

doTransformItem(item.uid,item.itemid+1)

local parametro = {cid=cid}

voc = getPlayerVocation(cid)

p = getPlayerPosition(cid)

setPlayerStorageValue(cid,9444, 0)



if voc == 1 then

stopEvent(mageevent)

elseif voc == 2 then

stopEvent(archerevent)

elseif voc == 3 then

stopEvent(knightevent)

end

end

 

Vá em movements.xml e add essa tag:

   

<movevent type="StepIn" actionid="5555" event="script" value="treino.lua"/>

<movevent type="StepOut" actionid="5555" event="script" value="treino.lua"/>

 

Agora em seu ot crie uma area tipo treiners... só que sem eles =D... bote um tile "diferenciado" (sugiro o ID 426) e bote a actionid 5555..

Pronto =)

Como Funciona:

Seguinte.. quando o player pisa o script verifica a vocaçao e começa o treino (arch,mage,kina) ai ele fica "adicionando" skills (poucas) no player... até ele sair.

Créditos:

Não posso colocar créditos para a pessoa q inventou mais posso agradecer pela ótima idéia.

e Créditos a mim que consegui colocar funfa uma coisa q eu só tinha visto =D

desculpe pela má formatação do texto é q to com um poco de preguiça :D

Cyaa!

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

Ainda acho que deveria ter reportado mais vezes, não precisava de tanta pressa.

Os spoilers não estavam abrindo aqui no Chrome, mas no IE abriu perfeitamente, provavelmente algum bug do fórum.

 

Quanto ao script, prefiro treinar atacando, mas esse método parece bom também.

 

E no título não deveria ser MoveEvent?

Link para o comentário
Compartilhar em outros sites

Cara, tenta explicar melhor, a ideia foi boa, mais o tutorial ficou mal explicado, ensina a modificar, tipo, tem como eu adicionar mais skill? ou se eu mudar o SKILL e ML em config.lua vai aumentar o skill do "Piso" também?

Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...

Testei em muitos servidores 8.50 e em dois servidores 8.54 em nenhum deu certo , o player sobe no tile a aparece :

 

Seu treino começará em instantes , após isso nada acontece...

 

Mas obrigadão , se puder arrumar , arrume , é um otimo script , eu tava doido pra coloca eli no meu servidor.

Link para o comentário
Compartilhar em outros sites

  • 7 months later...

Cara Não Funciona Testado Em 8.54 Ele Da A Msg Que O Treinamento Ira Começar A Qualquer Instante Mais Não Acontece Nada :icon2: eu ja vi esse sistema em um serve americano mais numca achei e esse que você postou não funciona tenta arruma ae a ideia é legal so falta funciona :excl:

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...