DarwinBotsManual
Abrir la app EnglishEN

cos

Da el coseno de un ángulo en unidades de .aim, multiplicado por 32000: 0 cos da 32000.

Datos

Palabra
cos
Familia
Avanzados
Pila entera
saca 1, pone 1
Qué hace
Cambia un ángulo en unidades de .aim por su coseno multiplicado por 32000 y redondeado: de −32000 a 32000.
Costo
Comando avanzado; debugint y debugbool no cuestan
Se ejecuta en
dentro de un gen: en la condición (cond) y en el cuerpo (start o else)

ángulo cos deja el coseno del ángulo multiplicado por 32000 y redondeado. Funciona igual que sin: el ángulo en unidades de .aim (unas 1256 por vuelta) y el resultado entre −32000 y 32000.

Ángulocos
0 (hacia la derecha)32000
314 (hacia arriba)25 (casi 0: 314 no es un cuarto de vuelta exacto)
628 (hacia la izquierda)−32000

El coseno da la parte horizontal de un movimiento. Este bot calcula cuánto avanza a la derecha por cada 100 que se mueve hacia donde apunta, y lo guarda en la celda 50 (negativo si apunta hacia la izquierda):

cond
start
  *.aim cos 100 mult 32000 div 50 store
stop

Multiplicá antes de dividir: *.aim cos 32000 div 100 mult solo puede dar 0, −100 o 100, porque la división redondea a un entero antes de escalar.