Uso de eventos#

Los eventos permiten que pilas de bloques separadas en un proyecto se comuniquen entre sí, utilizando bloques de la categoría Lógica - Eventos. Los bloques cuyos nombres comienzan con broadcast indican que ha ocurrido un evento, y los bloques cuyos nombres comienzan con when ejecutan su pila de bloques asociada en respuesta.

Transmitir un evento#

Agregar un bloque de difusión#

Agregue un bloque de difusión o un bloque de difusión y espera a su proyecto.

Captura de pantalla de la categoría Lógica - Eventos de la caja de herramientas, con los bloques de difusión y difusión y espera resaltados.

Seleccionar o crear el evento#

Seleccione la opción desplegable en el bloque difusión para elegir un evento existente, o para crear, renombrar o eliminar un evento.

Captura de pantalla del menú desplegable del bloque de transmisión abierto, que muestra la opción my_event junto con las opciones Nuevo evento, Cambiar nombre del evento y Eliminar el evento "my_event".

Reciba el evento#

Agregar cuando reciba Bloquear#

Agrega un bloque cuando reciba al espacio de trabajo y configura su menú desplegable para que coincida con el nombre del evento utilizado en tu bloque difusión. Luego, adjunta bloques debajo, ya que estos se ejecutarán cada vez que se difunda dicho evento.

Captura de pantalla de la categoría Lógica - Eventos de la caja de herramientas, con los bloques "cuando se inicia" y "cuando recibo" resaltados.

También se pueden encontrar bloques que comienzan con when conectados a sensores, los cuales ejecutan sus bloques asociados cuando se cumple la condición de dicho sensor. Por ejemplo, los bloques when Brain screen y when Bumper Switch.

El cuando la pantalla del cerebro bloquea el sombrero.#
cuando la pantalla cerebral [presionado v] :: hat events
El cuando el interruptor del parachoques bloque del sombrero.#
when [BumperA v] [pressed v] :: hat events

Utilizar eventos en un proyecto#

Una vez que un bloque cuando recibo coincide con el nombre del evento utilizado por un bloque difusión, al ejecutar el proyecto, ambos bloques se ejecutan simultáneamente. Por ejemplo, este proyecto gira hasta que se presiona la pantalla del Cerebro y luego difunde un evento que detiene la marcha del robot.

Una vez encendido, gira hasta que se pulsa la pantalla y, al recibirla, emite un evento que detiene al robot.#
cuando empezó
turno [derecha v]
esperar hasta <¿pantalla presionada?>
transmisión [my_event v]
cuando recibo [my_event v]
deja de conducir