Jump to content
  • 0

Auto Spell


eickhoff

Question

Galera minha duvida é a seguinte, como q eu faço pra criar um comando de auto spell?

por exemplo, o player fala:

!autospell "Exura"

 

e automaitcamente o char dele fica soltando exura sem parar

 

eu gostaria disso pra colocar pros mages treinarem ML :S

Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0

Abra a pasta data/talkactions/scripts e crie um arquivo chamado repeatspell.lua

Adicione o script:

function doRepeatSpell(cid, spellname, seconds)
if isPlayer(cid) then
doCastSpell(cid, spellname)
end
addEvent(doRepeatSpell, 1000 * seconds, cid, spellname)
end
function onSay(cid, words, param)
if param == "exura" then
doRepeatSpell(cid, "Exura", 3)
end
return false
end

Agora na pasta data/talkactions abra o arquivo talkactions.xml

Adicione a tag:

<talkaction words="!autospell" event="script" value="repeatspell.lua"/>

exura/Exura é o nick da spell e 3 são em quantos segundos ela será repetida.

 

Ajuda de:

Smix

Link to comment
Share on other sites

  • 0


function doRepeatSpell(cid, spellname, seconds)
   if isPlayer(cid) then
		  doCastSpell(cid, spellname)
		  addEvent(doRepeatSpell, 1000 * seconds, cid, spellname)
   end
end

function onSay(cid, words, param)
   if param == "exura" then
		  doRepeatSpell(cid, "Exura", 3)
   end

   return false
end

 

Só uma adaptaçãozinha no teu código Hideki, pois com o addEvent fora do escopo da condição se o player existe, a recursion continuaria existindo mesmo sem o player existir.

 

@eickhoff

Lembrando que você tem que ter a função

doCastSpell(cid, spellname)

 

Instalada na sua source.

Edited by MaXwEllDeN
Link to comment
Share on other sites

×
×
  • Create New...