Ir al contenido

Retardos y repeticiones

Todo lo que pasa dentro de una pila ocurre de golpe salvo que tú digas lo contrario. Las dos formas de meter tiempo son el retardo de cada efecto y los causantes periódicos.

Cada efecto, sin excepción, tiene abajo una barra de retardo. Es lo que separa una pila que hace cinco cosas a la vez de una que las hace en secuencia.

Rango 0 a 10 segundos
Paso medio segundo
Ámbito por efecto, no por pila

Que el retardo sea por efecto es lo que permite montar secuencias sin encadenar pilas: pones cuatro efectos en la misma pila con retardos de 0, 1, 2 y 3 segundos, y se ejecutan uno detrás de otro.

Si la pila se vuelve a disparar antes de que venza un retardo pendiente, el nuevo disparo no sustituye al anterior: se acumulan. Con un causante rápido y un retardo largo puedes acabar con decenas de ejecuciones en cola.

Es la causa número uno de salas que se ponen lentas sin motivo aparente. Si un efecto lleva retardo, asegúrate de que su causante no puede dispararse más rápido de lo que el retardo tarda en vencer.

Se diferencian en el rango y en la precisión. Elegir el que va sobrado de rango y ponerlo al mínimo es peor que elegir el ajustado.

Causante Rango Paso Para qué
Periodos Cortos 50 ms – 500 ms 50 ms Animación fina, movimiento fluido
Periodos 0,5 s – 30 s 0,5 s El de uso general
Periodos Largos 5 s – 600 s 5 s Ciclos de sala, rondas, avisos
¡Ya! 0,5 s – 600 s 0,5 s Una sola vez, contando desde que empieza la sala

Los tres primeros repiten para siempre. El cuarto se dispara una vez y no vuelve.

Es la herramienta más potente y la más peligrosa. A 50 ms una pila se ejecuta veinte veces por segundo; con cinco pilas así en una sala, son cien ejecuciones por segundo compitiendo con todo lo demás.

Úsalo cuando necesites que algo se vea fluido, y solo durante el tiempo que haga falta. Si lo que quieres es que algo pase “rápido” pero no es una animación, Periodos al mínimo (medio segundo) suele bastar y cuesta diez veces menos.

El patrón más útil del sistema es un causante periódico lento con efectos escalonados por retardo:

CUANDO cada 10 segundos ← Periodos
→ efecto A con retardo 0 s
→ efecto B con retardo 2 s
→ efecto C con retardo 4 s

Eso te da una secuencia de tres pasos que se repite cada diez segundos, con una sola pila y sin señales. Mientras el retardo mayor sea menor que el periodo, nunca se solapan.

Si el retardo mayor supera el periodo, empiezan a solaparse ejecuciones. A veces es justo lo que quieres –una cascada continua– pero tienes que decidirlo tú, no descubrirlo.