.shootval
El ajuste del próximo disparo: la potencia o el alcance de un −1 o −6, cuánto regalás con un −2, o el valor que escribe un disparo de memoria.
Datos
- Dirección
- 8
- Nombre
.shootval- Tipo
- Comando: el bot la escribe y el motor la lee y, en general, la consume
- Grupo
- Disparos
- Quién la escribe
- Tu ADN.
- Quién la lee
- El motor, en la fase de acciones, si
.shootno es 0: ajusta ese disparo. - Cuándo se borra
- El motor, en la fase de acciones, siempre que
.shootno es 0, aunque el tiro no salga. Si no disparás, queda puesta. - Rango
- −32000 a 32000.
- Mutaciones
- la eligen como destino de un store
.shootval no dispara nada por sí sola: acompaña a .shoot y cambia el disparo que sale en ese ciclo. Qué cambia depende del tipo:
- −1 y −6 (robar energía o body). Un valor positivo multiplica la potencia y uno negativo, el alcance. Pero solo a partir de 5: entre −4 y 4 no cambia nada. Arriba de eso la escala es logarítmica: 8 duplica la potencia, 16 la triplica. Y se cobra: el disparo cuesta el valor por el costo de un disparo. Si no te alcanza la energía, el motor lo achica a lo que podés pagar.
- −2 (regalar energía). Cuánta energía mandás, sin signo y nunca más de la que tenés; si escribís 0, el 1% de la tuya.
- −3 y −4 (veneno y desechos). Cuánto mandás, sin signo y nunca más de lo que tenés; con 0, una vigésima parte de lo que tengas.
- Positivo (disparo de memoria). El valor que se escribe en la memoria del otro.
' le escribo 77 en la dirección 50 al que tengo enfrente
cond
*.eye5 0 >
start
77 .shootval store
50 .shoot store
stopEn la prueba, la celda 50 del blanco pasó a valer 77 dos ciclos después.