.refaim
Hacia dónde apunta el bot que estás viendo, en la misma escala que .aim: para saber si te está mirando.
Datos
- Dirección
- 711
- Nombre
.refaim- Tipo
- Sentido: el motor la escribe para que el ADN la lea
- Grupo
- Lo que se ve (ref*)
- Quién la escribe
- El motor, en la fase de acciones de cada ciclo, con el rumbo (
.aim) del bot que ve tu ojo con foco. También al chocar con un bot. Lo leés en el ciclo siguiente. - Cuándo se borra
- El motor, cada ciclo, cuando se borran los sentidos.
- Rango
- Casi siempre 0 a 1256, una vuelta; mientras el otro gira puede pasarse un poco.
- Mutaciones
- la eligen como lectura (
*)
.refaim es la dirección en la que apunta el bot que ve tu ojo con foco: lo que ese bot lee en su .aim. Una vuelta completa son 1256; casi siempre está entre 0 y 1256, aunque mientras gira puede pasarse un poco.
Lo más útil es compararla con tu propio rumbo. Si el otro te está mirando, su rumbo es el tuyo dado vuelta, o sea el tuyo más 628. El operador anglecmp da la diferencia entre dos ángulos teniendo en cuenta la vuelta completa:
' ¿me está mirando? entonces me corro de costado
cond
*.eye5 0 >
*.refaim *.aim 628 add anglecmp abs 60 <
start
50 .sx store
stopCon dos bots que giraban hasta verse, la condición se cumplió justo cuando quedaron frente a frente. Un bot que te mira probablemente esté por dispararte, sobre todo si su .refshoot es mayor que 0.
Si no ves nada, o ves una forma, vale 0.