Ir para conteúdo

(Resolvido)[Ajuda] Colocar pausa de tempo entre os laços do for

Featured Replies

Postado

Possuo um script que suga o HP do target varias vezes, mas se o target morre fica dando creature not found, etc. Coloquei verificação se tem target no evento, ta tudo certo, mas no for ele roda tudo de uma só vez, então mesmo a magia sendo pausada colocando tempo no addevent, o for não pausa, apenas encomenda tudo de uma só vez. Queria que colocasse uma pausa entre os laços, por exemplo:
For de 1 a 10.
Ele testa tudo que está no script, executa e espera 1 segundo para passar para o 2. E assim sucessivamente.

@Edit: Se souber, apenas posta a função da pausa que eu encaixo no script.

Editado por Danves (veja o histórico de edições)



 tumblr_mwfeg45FIV1qk4cb3o4_500.gif

Resolvido por Alencar123

Ir para solução
  • Respostas 11
  • Visualizações 461
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • elseif spell == "Leech Seed" then setPlayerStorageValue(cid, 498587, 1) for var = 1,10 do addEvent(function() if not isCreature(target) or not isCreature(cid) then return false end if getPla

Postado
  • Autor

Mas aí no momento da spell ele tinha target, então não dá break e encomenda todos os addevents da spell que suga hp, porem no segundo que executar algum addevent encomendado o target pode ter morrido, e isso causa creature not found.
Por isso queria uma pausa por tempo em cada laço do for.



 tumblr_mwfeg45FIV1qk4cb3o4_500.gif

Postado
  • Autor
elseif spell == "Leech Seed" then
setPlayerStorageValue(cid, 498587, 1)
for var = 1,10 do
if not target then 
break
 end
addEvent(function()
if getPlayerStorageValue(cid, 498587) == 1 then
local life = getCreatureHealth(target)
doSendDistanceShoot(getThingPosWithDebug(cid), getThingPosWithDebug(target), 1)
doAreaCombatHealth(cid, GRASSDAMAGE, getThingPosWithDebug(target), 0, -min, -max, 14)
    
local newlife = life - getCreatureHealth(target)
 
doSendMagicEffect(getThingPosWithDebug(cid), 12)
doSendMagicEffect(getThingPosWithDebug(target), 45)
if newlife >= 1 then
doCreatureAddHealth(cid, newlife)
        doSendAnimatedText(getThingPosWithDebug(cid), "+"..newlife.."", 32)
end 
end
 end, 1000*var)
end 

(O storage foi algo que pus em outros scripts pra quando o player puxar o summon de volta ou deslogar ele mudar o storage pra -1, evitando outros bugs da spell)



 tumblr_mwfeg45FIV1qk4cb3o4_500.gif

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo