Skip to main content

Sesión tercera. Reto 2

Enunciado: 

Diseña y programa en Scratch unas escenas en la que dos personajes se comuniquen creando un diálogo según las instrucciones que les de en ese momento el usuario del programa.

Condiciones: 

  • Al menos dos personajes.
  • Al menos 2 fondos de escenario.
  • La interacción sucede cuando el programa pregunta al usuario qué debe decir cada interlocutor del diálogo.
  • Posteriormente las escenas se suceden automáticamente con la intervención dialogada de los personajes.
  • Tienes que dar vida a los personajes poniéndoles voz, puede ser la tuya grabada o la que sintetiza Scratch.

Este proyecto incluirá variables o listas en la conversación entre dos personajes. El concepto de una variable es más sencillo que el de una lista pero cuando trabajamos con listas el programa se simplifica bastante.

Por ejemplo si añadimos un diálogo a una variable, necesitaremos 30 variables para 30 expresiones  lo que dificulta mucho entender el funcionamiento del programa. Esto se soluciona con el empleo de listas. Si hay dos personajes se crean dos listas y el diálogo de cada personaje se incluye en cada elemento de su lista, de forma ordenada, para luego poder recuperarlo.

En esta práctica guiada vamos a necesitar los siguiente bloques:

De eventos: que hacen posible que se ejecuten las instrucciones que se colocan debajo de ellos.

image.png

De apariencia: que permiten comunicarse a los personajes y cambiar su forma o apariencia

image.png

Sensores: que permiten que haya interacción con el usuario del programa. La respuesta que da el usuario a la pregunta se guarda en la variable "respuesta"

image.png

Crear listas: En el ejemplo de abajo se ha creado una lista llamada "conversación Juan". Insertamos el diálogo "¡Hola Pedro!" en el número 1 de su lista. Cuando queramos recuperar "¡Hola Pedro!" tendremos que usar el bloque "elemento 1 de la lista "conversación Juan"

image.png

Podemos poner el bloque sensor "respuesta" en lugar del ¡Hola Pedro! para posiblitar la interacción.

image.png

Texto a voz: permiten sintetizar la voz del texto introducido en decir ( hola ) con el tono elegido en "asignar voz a ( chillido )"

image.png

En lugar de teclear el texto "hola" podemos poner el elemento que corresponda de la lista.

image.png

El programa se desarrollaría como sigue: 

Inicialmente se preguntan al usuario lo que tienen que decir los personajes. En el ejemplo se han puesto 2 diálogos. Termina el programa con el bloque de "enviar el mensaje (diálogo) y esperar.

Este es el programa:

image.png

Cuando el mismo objeto (en este caso el personaje Juan) recibe el mensaje diálogo comienza la escena hablada y envia el mensaje (turno de Pedro 1) para que el segundo personaje (Pedro) responda al primero

image.png

Y al recibir el mensaje el personaje Pedro se reproduza su diálogo. Posteriormente enviará el mensaje "turno Juan 2" para que el primer personaje diga su dialogo segundo.

image.png

El juego se repite enviando y recibiendo mensajes hasta completar todo el diálogo.