11 Funciones de clon recorte-Félix Delgado Plana

 https://www.youtube.com/watch?v=rWdqLN1ptew

Clones - Creando Múltiples Enemigos

Duración estimada: 20-25 minutos
Nivel: Intermedio
Objetivo: Aprender a utilizar los bloques de clonación en Scratch para crear múltiples copias de un personaje (clones), cada una con su propio comportamiento independiente, y comprender la diferencia entre el objeto original y sus clones.


1. ¿Qué son los Clones?

Los clones son copias de un personaje (sprite) que se crean durante la ejecución del programa. Son útiles para:

  • Crear múltiples enemigos en un juego.

  • Generar objetos que caen (como lluvia o estrellas).

  • Simular multitudes o partículas.

Características importantes:

  • Cada clon es independiente: puede moverse, cambiar de disfraz y comportarse de forma diferente.

  • Los clones no son permanentes: se crean y se eliminan durante la ejecución.

  • El original puede ocultarse mientras los clones realizan la acción.


2. Bloques para Trabajar con Clones

Categoría

Bloque

Función

Control

al comenzar como clon

Evento que se ejecuta solo en los clones, no en el original.

Control

crear clon de [este objeto]

Crea una copia del personaje.

Control

borrar este clon

Elimina el clon actual.


3. Ejemplo Práctico 1: Enemigo que se Mueve al Azar

Vamos a crear un enemigo que se mueva de forma aleatoria por la pantalla.

Código del Enemigo (Original)

text

al presionar bandera verde

apuntar en dirección (número al azar entre [1] y [160])

por siempre

    mover [1] pasos

    rebotar si toca un borde

Explicación

  • Al empezar, el enemigo elige una dirección aleatoria (entre 1 y 160 grados).

  • Se mueve continuamente en esa dirección.

  • Al llegar al borde, rebota y cambia de dirección.


4. Ejemplo Práctico 2: Enemigo que Desaparece al Tocar al Gato

Añadimos la detección de colisión con el gato.

Código del Enemigo (con Interacción)

text

al presionar bandera verde

mostrar

apuntar en dirección (número al azar entre [0] y [180])

por siempre

    mover [1] pasos

    rebotar si toca un borde

    si ¿tocando [Sprite1]? entonces

        esconder

Explicación

  • El enemigo se mueve aleatoriamente.

  • Si toca al gato (Sprite1), desaparece (esconder).


5. Ejemplo Práctico 3: Clonación Básica

Ahora vamos a crear múltiples enemigos usando clones.

Estructura del Programa

Parte 1: El Código de los Clones

Este código se ejecutará solo en los clones.

text

cuando comience como clon

mostrar

apuntar en dirección (número al azar entre [1] y [180])

por siempre

    mover [1] pasos

    rebotar si toca un borde

    si ¿tocando [Sprite1]? entonces

        borrar este clon

Parte 2: Crear los Clones desde el Original

Este código se ejecuta en el original (no en los clones).

text

al presionar bandera verde

esconder  // Ocultamos el original

repetir [3]  // Creamos 3 clones

    crear clon de [este objeto]

Código Completo

text

al presionar bandera verde

esconder

repetir [3]

    crear clon de [este objeto]


cuando comience como clon

mostrar

apuntar en dirección (número al azar entre [1] y [180])

por siempre

    mover [1] pasos

    rebotar si toca un borde

    si ¿tocando [Sprite1]? entonces

        borrar este clon

Resultado

  • Al presionar la bandera verde, el original se oculta.

  • Se crean 3 clones, cada uno con su propia dirección aleatoria.

  • Cada clon se mueve independientemente.

  • Si un clon toca al gato, ese clon se elimina (los demás siguen funcionando).


6. Detalles Importantes sobre los Clones

6.1. El Original Permanece Oculto

  • El bloque al presionar bandera verde solo se ejecuta en el original.

  • Si no ocultamos el original, se quedará quieto en su posición inicial mientras los clones se mueven.

6.2. Posición y Dirección Inicial

  • Los clones siempre parten de la posición y dirección del original en el momento de ser creados.

  • Si creamos varios clones sin cambiar su posición, parecerá que solo hay uno, porque todos estarán superpuestos.

  • Para evitarlo, podemos cambiar la posición o dirección de cada clon al crearlo.

Ejemplo: Clones con Posiciones Diferentes

text

al presionar bandera verde

esconder

repetir [5]

    ir a x: (número al azar entre [-200] y [200]) y: (número al azar entre [-150] y [150])

    crear clon de [este objeto]

6.3. borrar este clon vs esconder

  • esconder: Oculta el clon, pero sigue existiendo en memoria.

  • borrar este clon: Elimina el clon por completo, liberando recursos.


7. Versión Final del Código (Con Posiciones Aleatorias)

Código del Enemigo

text

al presionar bandera verde

esconder

repetir [5]

    ir a x: (número al azar entre [-200] y [200]) y: (número al azar entre [-150] y [150])

    crear clon de [este objeto]


cuando comience como clon

mostrar

apuntar en dirección (número al azar entre [1] y [180])

por siempre

    mover [2] pasos

    rebotar si toca un borde

    si ¿tocando [Sprite1]? entonces

        borrar este clon

Código del Gato (para Perseguir)

text

al presionar bandera verde

por siempre

    apuntar hacia [puntero del ratón]

    mover [3] pasos

Resultado Final

  • El gato persigue al ratón.

  • Aparecen 5 enemigos en posiciones aleatorias.

  • Cada enemigo se mueve en una dirección aleatoria y rebota en los bordes.

  • Si el gato toca a un enemigo, ese enemigo desaparece.


8. Resumen de Conceptos Clave

Concepto

Explicación

Clon

Copia de un personaje que se crea durante la ejecución.

Original

El personaje base. Puede ocultarse para no interferir.

al comenzar como clon

Evento que solo ejecutan los clones.

crear clon de [este objeto]

Crea una nueva copia del personaje.

borrar este clon

Elimina el clon actual.

Independencia

Cada clon tiene su propia posición, dirección y variables.

Posición inicial

Los clones heredan la posición y dirección del original.


9. Ejercicios Propuestos

  1. Lluvia de objetos: Crea un programa que genere clones que caen desde la parte superior de la pantalla.

  2. Más enemigos: Añade un contador que muestre cuántos enemigos han sido eliminados.

  3. Oleadas: Crea un sistema donde, al eliminar todos los enemigos, aparezca una nueva oleada con más clones.


10. Conclusión

  • Los clones son una herramienta fundamental para crear juegos y simulaciones con múltiples elementos.

  • Permiten ahorrar memoria y simplificar el código, ya que no necesitamos duplicar manualmente cada personaje.

  • Es importante recordar que el original y los clones son independientes, y que el código dentro de al comenzar como clon solo se ejecuta en los clones.

  • Con los clones, podemos crear desde enemigos hasta sistemas de partículas, pasando por juegos de disparos y mucho más.

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