From Test-Scratch-Wiki
Mover () pasos | |
mover (10) pasos | |
Categoría | Movimiento |
Forma | Apilable |
Añadido en | 1.0 |
El bloque mover () pasos es un bloque de movimiento y un bloque apilable. Este bloque hace avanzar a su objeto la cantidad de pasos especificada, en la dirección en la que apunta. Un paso equivale a un pixel. La cantidad predeterminada de pasos es 10, pero puede ser cambiada por cualquier número. El bloque de hecho hace uso de la trigonometría para moverse en la dirección apropiada, pues es así como lo gestiona el ordenador.
Ejemplos de uso
Mover un objeto con instrucciones basadas en los bloques cambiar x por () y cambiar y por () puede resultar complicado en muchos casos. En vez de eso, se puede utilizar este bloque para mover un objeto en la dirección en la que apunta.
Los usos del bloque mover () pasos son innumerables. He aquí algunos:
- Hacer que un objeto pueda moverse en las direcciones principales con las flechas:
al presionar tecla [flecha arriba v] apuntar en dirección (0 v) mover (10) pasos
- O hacer que se mueva en cualquier dirección usando giros y avance/retroceso:
por siempre si <¿tecla [flecha izquierda v] presionada?> entonces girar a la izquierda (5) grados end si <¿tecla [flecha derecha v] presionada?> entonces girar a la derecha (5) grados end si <¿tecla [flecha arriba v] presionada?> entonces mover (5) pasos end si <¿tecla [flecha abajo v] presionada?> entonces mover (-5) pasos end end
- Hacer que un objeto siga al ratón:
por siempre apuntar hacia [puntero del ratón v] mover (10) pasos end
- Hacer que un objeto se mueva a lo largo de la pantalla:
al presionar bandera verde fijar estilo de rotación a [izquierda-derecha v] por siempre mover (10) pasos si toca un borde, rebotar end
Código alternativo
El efecto de este bloque se puede conseguir también de esta manera:
sumar a x (([sen v] de (dirección)) * (pasos)) sumar a y (([cos v] de (dirección)) * (pasos))
O también:
ir a x: ((posición en x) + (([sen v] de (dirección)) * (pasos))) y: ((posición en y) + (([cos v] de (dirección)) * (pasos)))