 Já sabemos que diferentes objetos poden realizar acciones simultáneamente, ou a la vez, decimos, también concurrentemente. Cada objeto pode tener uno máis programas ou scripts e estos se están ejecutando, a la vez que os scripts de outros objetos que pueda tener o nosso proyecto. Por tanto, puede haber ocasiones en las que nos interese que las acciones de diferentes objetos se coordínen, se sincronicen. Por exemplo, nos podria interesar que este objeto chica e este objeto chico mantengan unha especie de diálogo. Vamos a ver como utilizando as instrucciones decir podemos hacer que salgan bocadillos tipo cómic en los que cada uno de los objetos va diciendo algo e o outro le responde. Aprenderemos en este vídeo que hay un mecanismo máis potente en Scratch, que es el envío e recepción de mensajes que permite realizar esta coordinación entre objetos de manera sencilla. Sin embargo, antes de ver este mecanismo, vamos a ver como lo haríamos utilizando outro tipo de instrucciones que son menos apropiadas. De esta forma veremos la motivación del envío de mensajes o intercambio de mensajes entre objetos en Scratch. Vamos a ver en primer lugar como se comporta este programa, vamos a ejecutarlo. El chico dice ola, ahora la chica dice ola, entonces el chico le contesta con este mensaje e ella contesta con este outro. Finalmente, el chico dice o último mensaje. Vamos a ejecutarlo outra vez. Vemos como, a parte de decir alcunas cosas con os bocadillos, también hemos cambiado en algún momento el disfraz de los objetos. Vamos a ver ahora el código. Nos vejamos en el código de la chica e vemos que tras presionar la bandera verde, a chica cambia inicialmente a un primer disfraz, con esta instrucción cambia a disfraz e nombrando explícitamente a que disfraz, podemos hacer que se seleccione de manera determinista el disfraz que queremos que se muestre. Podemos ver los disfrazes de la chica e comprobamos que tiene varios disfrazes cada uno de ellos con un nombre, girl1a, girl1b, c y b. Con la instrucción cambiar disfraz podemos elegir qual sale. Luego, tenemos esta outra instrucción, nos vejamos en el color, en la paleta de control, con la instrucción esperar un número de segundos, hacemos que el programa separe durante, en este caso, dos segundos. Con esto estávamos dando pie a que durante este tiempo, el outro objeto pueda estar haciendo alguna acción, como por ejemplo, decir algo. Vamos a ver el código que es lo que hacen os primeros dos segundos este objeto. Vemos que, después de cambiar también a uno de sus disfrazes, dice hola durante dos segundos. Esta instrucción hola, después de cambiar a este disfraz, es la que ejecuta el chico nada más embezar. Volvemos al código de la chica e vemos que, después de esperar dos segundos, dice su correspondiente hola contestándole al chico, al mensaje que el chico ha pronunciado durante estos dos segundos, e ella también tarda dos segundos. Vamos a ejecutar el código, el chico primero durante dos segundos dice hola e ya está esperando y ahora ella durante dos segundos dice hola, paramos. Este es el hola que dice la chica, después de haber escuchado el hola del chico. Después, la chica espera dos segundos y durante estos dos segundos, el chico está diciendo este outro mensaje. Vamos a comprobarlo, entonces hemos visto que este dice hola, lo que echa dice hola e el chico, después dice este mensaje también durante dos segundos, durante los cuales, la chica está esperando aquí. Vamos a comprobarlo, hola, hola, el mensaje del chico e quando acaban estos dos segundos, la chica dice su último mensaje. La chica, después de estos últimos dos segundos, cambia el disfraz e dice su último mensaje. Durante estos dos segundos mantiene este disfraz e pasa dos dos segundos cambia outra vez de disfraz. Durante estos dos segundos en que la chica está diciendo este mensaje, el chico está esperando aquí. Finalmente, quando a chica termina doa de hablar, el chico cambia su disfraz e finalmente dice genial. E así concluye el programa. Vamos a repasar la ejecución. Sería conveniente que cargues este proyecto, lo tienes enlazado en la documentación de este bloque e compruebes como efectivamente se va intercalando la ejecución de este programa con la ejecución del programa de la chica. E como estas esperas dan lugar a que el outro objeto pueda hablar o pueda ejecutar su instrucción. Realizar a sí este programa con estas esperas no es unha buena idea. Si cambiamos de opinión e ahora queremos que el diálogo de uno de dos dure un tiempo máis grande, tendíamos que cambiar no solamente su código sino también el código del outro objeto para que sigan sincronizados e el diálogo tenga sentido. Por ejemplo, se queremos que la chica aquí durante tres segundos diciendo algo, vemos que simplemente porque merece valor o programa va a dejar de funcionar. Vamos a ejecutarlo. Veis? Ahora, ha salido antes de tiempo el mensaje genial porque la chica ha tardado tres segundos en decir su primer mensaje, el mensaje color.