Cloroplastos y luz
Las sysvars para comprar, sacar, contar y compartir cloroplastos, y para saber cuánta luz queda en el campo.
| Dirección | Sysvar | Tipo | Resumen |
|---|---|---|---|
| 920 | .chlr | Sentido | Cuántos cloroplastos tiene el bot, de 0 a 32000, después de la pérdida natural del ciclo. |
| 921 | .mkchlr | Comando | Compra cloroplastos: suma esa cantidad en el mismo ciclo y cobra energía por cada uno. |
| 922 | .rmchlr | Comando | Se desprende de esa cantidad de cloroplastos en el mismo ciclo, sin costo y sin recuperar nada. |
| 923 | .light .availability | Sentido | Cuánta luz queda disponible en el campo, de 0 a 32000: baja a medida que los bots ocupan más superficie. |
| 924 | .sharechlr | Comando | En un organismo multicelular, reparte los cloroplastos con cada bot atado: el número es el porcentaje del total que se queda este bot. |
Los cloroplastos le permiten a un bot vivir del sol: en los ciclos de día, un bot con cloroplastos que está dentro de la franja iluminada gana energía y cuerpo sin hacer nada. Los vegetales nacen con ellos, pero cualquier bot puede comprarlos. Cómo se calcula esa ganancia está en Cloroplastos y vegetales.
Las sysvars del grupo son:
.chlr: cuántos cloroplastos tiene el bot..mkchlr: comprar; cuesta energía por cloroplasto..rmchlr: sacar; gratis, pero no devuelve nada..light: cuánta luz queda libre en el campo, que baja cuando está lleno de bots..sharechlr: repartir cloroplastos con los compañeros de un organismo.
Antes de comprar conviene saber lo que traen. Los cloroplastos se pierden solos un poco cada ciclo (hasta medio por ciclo cuando son pocos, casi nada cuando son miles), pesan mucho (cada uno suma casi 1 de .mass, así que el bot apenas se mueve), y son incompatibles con los virus: si un bot con cloroplastos intenta fabricar uno con .mkvirus, los pierde todos. Al reproducirse, el hijo se lleva su porcentaje.
La idea más común es un bot que se mantiene en un nivel fijo, reponiendo lo que se pierde mientras le alcance la energía:
' Mantiene unos 2000 cloroplastos
cond
*.chlr 2000 <
*.nrg 1000 >
start
100 .mkchlr store
stop