DarwinBotsManual
Abrir la app EnglishEN

.timer

Un reloj que suma 1 por ciclo, que podés escribir y que el hijo hereda del padre: sirve para sincronizar a un linaje.

Datos

Dirección
12
Nombre
.timer
Tipo
Entrada y salida: la escriben el bot y el motor
Grupo
Cuerpo, energía y estado
Quién la escribe
El motor le suma 1 en la fase de acciones; después de 32000 sigue en −32000. Tu ADN también puede escribirlo. Al cargar arranca al azar y el hijo lo hereda.
Cuándo se borra
No: el motor nunca lo pone en 0.
Rango
−32000 a 32000.
Mutaciones
la eligen como lectura (*)

El motor le suma 1 al final de cada ciclo a lo que haya en .timer. A diferencia de .robage, el valor es tuyo: si escribís 0, el ciclo siguiente leés 1, y sigue contando desde ahí. Cuando pasa de 32000 salta a −32000 y sigue subiendo.

Dos detalles de dónde arranca:

Por eso es la herramienta para que todo un linaje actúe a la vez: los descendientes de un mismo fundador comparten el reloj sin hablarse.

' Cada 100 ciclos de reloj, media vuelta
cond
 *.timer 100 mod 0 =
start
 628 .aimdx store
stop

Todos los hijos de este bot giran en los mismos ciclos que él. Si preferís contar desde el nacimiento de cada uno, poné el reloj en 0 al nacer con 0 .timer store dentro de un gen con *.robage 0 =.

Ojo con mod y los números negativos: con el reloj en −250, 100 mod da −50, no 50. La comparación con 0 funciona igual.