Jump to content

function repeatFunction(_times, _delay, _function, ...)


meubk

Recommended Posts

Esta função serve para repetir outras funções por um certo tempo.

function repeatFunction(_times, _delay, _function, ...)
	if _times == 0 then return true end
	_function(...)
	addEvent(repeatFunction, _delay, _times - 1, _delay, _function, ...)
end

exemplo de uso:

repeatFunction(20, 1000, doSendMagicEffect, getThingPos(cid), 23)

ira repetir a função doSendMagicEffect, 20 vezes, com intervalos de 1000ms (1 segundo).

Link to comment
Share on other sites

E nesse caso usa o addEvent, ele não executa como um loop, pois loop não da pause sem travar

E o bom de usar recursividade ai, é que voce não enche a pilha com varios addEvents, só adiciona um a um, menos memoria gasta

 

Porem usar diretamente assim não acho legal, é bom usar com condicionais, por exemplo um doSendMagicEffect com um if isCreature

Edited by dalvorsn
Link to comment
Share on other sites

como o @dalvorsn flo generalizar tanto assim n eh tao bom... o sendMagicEffect por exemplo daria erro se o player deslogasse e tb ficaria mandando o efeito na pos q o player tivesse na hora q ativar a funçao, n ficaria seguindo o player...

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...