DarwinBotsManual
Abrir la app EnglishEN

.fixed

Vale 1 si el bot está clavado en su lugar y 0 si se puede mover.

Datos

Dirección
215
Nombre
.fixed
Tipo
Sentido: el motor la escribe para que el ADN la lea
Grupo
Movimiento
Quién la escribe
El motor, en la fase de acciones de cada ciclo: 1 si el bot quedó fijo, 0 si no. Lo leés en el ciclo siguiente.
Cuándo se borra
Nadie; el motor la reescribe en cada ciclo. Escribir en ella no fija ni libera.
Rango
0 o 1.
Mutaciones
la eligen como lectura (*)

.fixed es el informe de .fixpos: 1 si el bot está fijo y 0 si está libre. La publica el motor al final de cada ciclo, así que escribir en ella no fija ni libera nada; para eso hay que escribir en .fixpos.

La diferencia entre las dos importa. .fixpos es la orden y queda con el número que le pusiste; .fixed dice si el bot quedó efectivamente fijo. Si la simulación tiene desactivada la fijación, .fixpos puede valer 1 y .fixed seguir en 0. Además .fixed se actualiza al final del ciclo: el ciclo en que escribís en .fixpos todavía leés el estado anterior.

Un uso típico es evitar escrituras repetidas, como hace Anon Terifica daynight, del Bestiario, que se clava de noche y se suelta de día:

cond
*.daytime 1 =
*.fixed 1 =
start
0 .fixpos store
stop

cond
*.daytime 0 =
*.fixed 0 =
start
1 .fixpos store
stop