Disparos
Las sysvars para disparar (.shoot, .shootval, .backshot, .aimshoot) y las que te avisan cuando te pega un disparo (.shflav, .shang y las cuatro de dirección).
| Dirección | Sysvar | Tipo | Resumen |
|---|---|---|---|
| 7 | .shoot | Comando | La orden de disparar: el número elige el tipo de disparo (−1 roba energía, −2 la regala, −3 veneno, −6 roba body, positivo escribe en la memoria del otro). |
| 8 | .shootval | Comando | 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. |
| 202 | .shflav | Sentido | El tipo del disparo que te pegó en el ciclo anterior (−1, −2, −3…, o la dirección de un disparo de memoria); 0 si no te pegó ninguno. |
| 209 | .shang | Sentido | Desde qué ángulo llegó el disparo que te pegó, medido desde tu frente hacia la derecha: escribilo en .aimdx y quedás mirando al tirador. |
| 210 | .shup | Sentido | El tipo del disparo que te pegó de frente en el ciclo anterior; 0 si no te pegó ninguno por adelante. |
| 211 | .shdn | Sentido | El tipo del disparo que te pegó por la espalda en el ciclo anterior; 0 si no te pegó ninguno por atrás. |
| 212 | .shdx | Sentido | El tipo del disparo que te pegó por la derecha en el ciclo anterior; 0 si no te pegó ninguno por ese lado. |
| 213 | .shsx | Sentido | El tipo del disparo que te pegó por la izquierda en el ciclo anterior; 0 si no te pegó ninguno por ese lado. |
| 900 | .backshot | Comando | Con un valor distinto de 0, el próximo disparo sale hacia atrás en lugar de hacia adelante. |
| 901 | .aimshoot | Comando | Desvía el próximo disparo un ángulo respecto de tu frente, sin girar: positivo hacia la derecha, negativo hacia la izquierda. |
Disparar es la manera de comer de casi todos los bots que no son vegetales, y también la de atacar, regalar energía o escribir en la memoria de otro. Este grupo tiene dos mitades.
Para disparar. .shoot es la orden: el número que escribís elige el tipo de disparo, y el motor lo lanza en ese mismo ciclo. El más común es −1, que le saca energía al que recibe el golpe y te la trae de vuelta. .shootval ajusta el disparo: la potencia, el alcance, la cantidad que regalás o el valor que escribís. .backshot dispara hacia atrás y .aimshoot desvía el tiro un ángulo, sin que tengas que girar.
Para sentir los disparos que te pegan. .shflav dice de qué tipo fue, .shang desde qué ángulo llegó, y .shup, .shdn, .shdx y .shsx repiten el tipo en la que corresponde al lado del golpe (adelante, atrás, derecha o izquierda). Llegan con un ciclo de atraso y duran un solo ciclo. Ojo: también registran los disparos que te favorecen, como la energía que vuelve de tus propios ataques.
Una combinación clásica une las dos mitades: el que es atacado gira hacia el atacante y le devuelve el fuego.
' si me pega algo que no es mi propia energía de vuelta, giro y disparo
cond
*.shflav 0 !=
*.shflav -2 !=
start
*.shang .aimdx store
-1 .shoot store
stopCómo vuela un disparo, cuánto llega y qué hace cada tipo al pegar está en Disparos; el paso a paso para un bot cazador, en Un bot que dispara.