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)))

Véase también