Sesión tercera. Reto 2
Enunciado:
Diseña y programa en Scratch unas escenas teatrales en la que dos personajes se comuniquen entre sí. El diálogo se crea de forma interactiva 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élodebe decirque cada interlocutor del diálogo.logo tiene que decir. - 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 un30 diálogo a una variable,logos necesitaremos 30 variables para 30 expresiones variables, 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, por ejemplo al recibir un mensaje.
De apariencia: que permiten comunicarse a los personajes y cambiar su forma o apariencia.
Sensores: que permiten que haya interacción con el usuario del programa. La respuesta que teclea el usuario a la pregunta que hace el programa se guarda en la variable "respuesta".
Crear listas: Para crear un lista tienes que ir al menú de la categoría de Variables:
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".
Podemos insertar el bloque sensor "respuesta" en lugar del ¡Hola Pedro! para posiblitar la interacción.
Texto a voz: permiten sintetizar la voz del texto introducido en el bloque decir ( hola ) con el tono elegido en el bloque "asignar voz a ( chillido )".
Actualmente Scratch permite elegir entre 4 tonos que darían vida a 4 personajes con una voz diferente:
En lugar de teclear el texto "hola" podemos poner el elemento que corresponda de la lista.
El programa se desarrollaría como sigue:
Inicialmente se pregunta al usuario lo que tienen que decir los dos personajes (Juan y Pedro). En el ejemplo se han puesto 2 diálogos. El programa termina con el bloque enviar el mensaje (diálogo) y esperar.
Este es uno de los programas que tiene el personaje Juan:
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.
Y al recibir el personaje Pedro el mensaje (turno Pedro 1) se reproduza su diálogo. Posteriormente enviará el mensaje "turno Juan 2" para que el primer personaje diga su segundo diálogo.
El juego se repite enviando y recibiendo mensajes hasta completar todo el diálogo.