DarwinBotsManual
Abrir la app EnglishEN

.sexrepro

Ordena una reproducción sexual: solo funciona si el bot fue fecundado, y el hijo mezcla su ADN con el del esperma.

Datos

Dirección
302
Nombre
.sexrepro
Tipo
Comando: el bot la escribe y el motor la lee y, en general, la consume
Grupo
Reproducción
Quién la escribe
Tu ADN.
Quién la lee
El motor, en la fase de acciones, si es mayor que 0 y el bot está fecundado: pide un hijo sexual con ese porcentaje. Ese ciclo, .repro espera.
Cuándo se borra
El motor, solo cuando nace el hijo. Si el parto falla, sigue escrita.
Rango
−32000 a 32000; se usa el resto de dividir por 100.
Mutaciones
la eligen como destino de un store

La reproducción sexual tiene dos papeles. El que hace de padre no tiene hijos: le dispara esperma a otro bot con -8 .shoot store (ver .shoot). El que lo recibe queda fecundado unos diez ciclos (.fertilized se lo dice), y si en ese plazo escribe un porcentaje en .sexrepro, tiene un hijo cuyo ADN mezcla el suyo con el del esperma.

' Gira hasta ver algo y le dispara esperma
cond
 *.eye5 0 =
start
 25 .aimdx store
stop
cond
 *.eye5 0 >
start
 -8 .shoot store
stop
' Si la fecundaron, tiene un hijo con la mitad de lo suyo
cond
 *.fertilized 0 >
start
 50 .sexrepro store
stop

Con dos de estos bots en un campo chico, lo normal es que nazca un hijo en unas decenas de ciclos. El hijo aparece delante de la madre, hacia donde apunta: si ahí hay otro bot o una pared, el parto espera. El porcentaje funciona como en .repro: módulo 100, y la orden queda escrita hasta que el parto sale bien.

Lo que cambia respecto de la asexual:

Cómo se arma el ADN del hijo está en Reproducción.