3.6 - Lanzar proyectiles y colisiones. "invasores del espacio"

 https://www.youtube.com/watch?v=HvEbipYkd_E&list=PL5tA44GpyFntFHtHd6Zxb2xQZpxwOfeu3&index=23

3.6: Lanzamiento de proyectiles en Scratch

馃幆 Objetivo de este tutorial

Vamos a implementar un sistema de disparos para un juego. El personaje principal (un cangrejo) lanzar谩 un proyectil en direcci贸n al puntero del rat贸n cuando hagamos clic. Aprender谩s a:

  • Hacer que el proyectil siga al personaje mientras no se dispare.

  • Lanzar el proyectil hacia el rat贸n al hacer clic.

  • Mover el proyectil de forma continua hasta que toque el borde de la pantalla.

  • Gestionar la visibilidad del proyectil (aparecer/desaparecer).


馃 Paso 1: Preparar los objetos (sprites)

Necesitaremos dos objetos:

  1. El personaje principal (en el v铆deo usan un cangrejo, pero puedes usar el gato o cualquier otro).

    • Puedes elegirlo de la biblioteca o dibujarlo.

    • Este objeto se mover谩 con el rat贸n o con teclas (lo dejaremos fijo para el ejemplo, pero puede moverse).

  2. El proyectil (una pelota, una bala, una estrella, etc.).

    • Dibuja un objeto peque帽o y redondeado (por ejemplo, un c铆rculo de color amarillo o rojo).

    • Este ser谩 el objeto que se lance.


馃摝 Paso 2: Comportamiento del proyectil – Seguir al personaje

El proyectil debe estar dentro del personaje (en su misma posici贸n) hasta que se dispare. Adem谩s, para que no se vea, podemos ocultarlo mientras sigue al personaje.

C贸digo del proyectil (parte 1 – seguimiento):

text
al presionar bandera
esconder
enviar mensaje [listo]   // (opcional, para sincronizar)

Luego, necesitamos un bucle que mantenga el proyectil en la posici贸n del personaje hasta que hagamos clic:

text
al recibir [listo]  // o directamente al presionar bandera
repetir hasta que <¿rat贸n presionado?>
    ir a [personaje v]   // o a (posici贸n del cangrejo)
    esconder

馃挕 Importante: El bloque ir a [personaje v] est谩 en la categor铆a de Movimiento, y puedes seleccionar el nombre del objeto que act煤a como lanzador (ej: "Cangrejo").


馃殌 Paso 3: Lanzar el proyectil al hacer clic

Cuando el rat贸n est茅 presionado, el proyectil debe:

  1. Apuntar hacia la posici贸n del rat贸n.

  2. Mostrarse (para que se vea volando).

  3. Moverse en esa direcci贸n hasta tocar el borde.

C贸digo del proyectil (parte 2 – lanzamiento):

text
al presionar bandera
esconder
por siempre
    // Seguir al personaje hasta que se haga clic
    repetir hasta que <¿rat贸n presionado?>
        ir a [Cangrejo v]
        esconder
    fin
    
    // Lanzamiento
    apuntar hacia [puntero del rat贸n v]
    mostrar
    repetir hasta que <¿tocando el borde?>
        mover (10) pasos
    fin
    esconder  // desaparece al tocar el borde

⚙️ Ajusta la velocidad del proyectil cambiando el n煤mero de pasos en mover (10) pasos. Si quieres que vaya m谩s lento, usa un n煤mero menor (ej: 5); si quieres m谩s r谩pido, usa un n煤mero mayor (ej: 15).


馃И Paso 4: Probar el sistema

  1. Coloca al personaje (cangrejo) en alg煤n lugar de la pantalla.

  2. Presiona la bandera verde.

  3. Mueve el rat贸n por la pantalla (notar谩s que el proyectil no se ve, pero est谩 siguiendo al cangrejo).

  4. Haz clic con el rat贸n en alg煤n punto de la pantalla.

  5. El proyectil aparecer谩 y volar谩 en l铆nea recta hacia donde hiciste clic, hasta tocar el borde.

Si el proyectil no se ve, aseg煤rate de que el bloque mostrar se ejecuta despu茅s del clic.


馃 Paso 5: Mejoras y extensiones

  1. A帽adir colisi贸n con enemigos:

    • En lugar de ¿tocando el borde?, puedes usar ¿tocando [Enemigo]? para que el proyectil desaparezca al impactar con un enemigo y sume puntos.

  2. Sonido al disparar:

    • A帽ade un bloque tocar sonido [disparo] justo despu茅s del mostrar para dar feedback auditivo.

  3. M煤ltiples proyectiles:

    • Usa clones para permitir disparos m煤ltiples sin que el proyectil tenga que esperar a desaparecer.

  4. Movimiento del personaje:

    • Puedes mover el cangrejo con teclas (flechas) mientras el proyectil se prepara. El proyectil siempre seguir谩 al cangrejo hasta el momento del disparo.

  5. Efecto de trayectoria:

    • Usa la extensi贸n L谩piz para dejar un rastro de la bala.

  6. Diferentes direcciones:

    • Si quieres disparar siempre en la direcci贸n que mira el personaje, usa apuntar en direcci贸n (direcci贸n del personaje) en lugar de apuntar hacia el rat贸n.


馃З Paso 6: Explicaci贸n del flujo completo

FaseAcci贸nEstado del proyectil
InicioEl proyectil se esconde y espera.Oculto, siguiendo al personaje.
Preparaci贸nMientras no se presiona el rat贸n, el proyectil se mueve continuamente a la posici贸n del personaje.Oculto, en la misma posici贸n que el lanzador.
DisparoAl presionar el rat贸n, el proyectil apunta al rat贸n y se muestra.Visible, apuntando al rat贸n.
VueloEl proyectil avanza en l铆nea recta hasta tocar el borde (o un enemigo).Visible, en movimiento.
FinAl tocar el borde, el proyectil se esconde y el ciclo comienza de nuevo.Oculto, listo para el siguiente disparo.

馃摎 Resumen del tutorial 3.5

ConceptoImplementaci贸n
Proyectil siguiendo al personajeUsar ir a [personaje v] dentro de un bucle repetir hasta que.
Detecci贸n del clicCondici贸n ¿rat贸n presionado? en el sensor.
Direcci贸n del disparoapuntar hacia [puntero del rat贸n v].
Movimiento continuorepetir hasta que <tocando el borde> mover (10) pasos.
Visibilidadmostrar al disparar, esconder al impactar o en la preparaci贸n.
Ciclo continuoEl proyectil se reinicia autom谩ticamente tras desaparecer.

馃幀 ¡Ya tienes un sistema de disparos funcional!

Con este sencillo esquema, puedes integrar el lanzamiento de proyectiles en cualquier juego. Es la base para juegos de naves, plataformas con disparos, o cualquier aventura donde el personaje ataque a distancia. ¡An铆mate a combinarlo con enemigos, puntuaciones y efectos especiales

Comentarios

Entradas m谩s populares de este blog

1.4 - Interfaz de usuario-Xnergic TCM

1.7 - Bloques de uso m谩s com煤n-Xnergic TCM

1.5 - Personajes-Xnergic