Ir para conteúdo
Entre para seguir isso  
Mock

Simples ferramenta para o addEvent

Recommended Posts

Mock    32
Mock

Se você é scripter meio experiente sabe colocar um delay em alguma função lua, mas certamente ja fez algo assim:

addEvent(doCreatureSay,5000,cid,'hail',1)

Esta explicito que se o playerm orrer ou logar durante o delay vai dar erro no console, e para evitar você é obrigado a fazer algo assim:

addEvent(function(cid,msg,typ)
  if isPlayer(cid) then
         doCreatureSay(cid,msg,typ)
  end
end,5000,cid,'hail',1)

Não mais...

 

Adcione essa função nas libs do seu server

function valid(f)
return function(p,...)
	if isCreature(p) then
		return f(p,...)
	end
end
end

E depois é so usar assim que nao tera nem um erro:

addEvent(valid(doCreatureSay),5000,cid,'hail',1)

 

 

PS: só funciona se o primeiro parametro for um creature

Compartilhar este post


Link para o post
Socket    0
Socket

Pode ser útil para preguiçosos não é mesmo?

 

Atenciosamente, Socket.

Compartilhar este post


Link para o post
tigerx2    1
tigerx2

sempre me deparo com esta merda de problema,

é uma ótima função, parabéns :)

Compartilhar este post


Link para o post
Mock    32
Mock
Pode ser útil para preguiçosos não é mesmo?

 

Atenciosamente, Socket.

nao para preguiçosos mais para economizar espaço

Compartilhar este post


Link para o post
iuniX    4
iuniX

Isso ajuda pakas, economiza tempo e esforço

Parabens ursonildo (Y)

Compartilhar este post


Link para o post
MaXwEllDeN    13
MaXwEllDeN

Fica legal se você usar tipo:

 

function valid(f, val)
return function(...)
	if val then
		return f(...)
	end
end
end

 

usando:

 

addEvent(valid(print, (1+1 == 2), 2000, "DEU :D")

 

se o segundo parâmetro for true ele retorna a função, então se fosse pra verificar se o player está online:

 

addEvent(valid(print, (isCreature(cid)), 2000, "DEU :D")

 

'-'

Compartilhar este post


Link para o post
Visitante
Este tópico está impedido de receber novos posts.
Entre para seguir isso  
  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×