Events#
Introduction#
The Events blocks in VEXcode allow for event-driven coding, enabling different parts of a project to run in response to triggers such as project start, received events, or user interactions. Below is a list of available blocks:
when timer – Runs a stack of blocks after the timer exceeds a specified time.
when started – Runs the attached stack of blocks when the project starts.
when I receive event – Runs the attached stack when a specific event is broadcast.
broadcast event – Triggers an event without pausing execution.
broadcast event and wait – Triggers an event and pauses execution until the event’s tasks complete.
when timer#
The when timer block activates the attached stack of blocks after a specified amount of time.
cuando el temporizador > [1] segundos
Parameters |
Description |
|---|---|
time |
Specifies the number of seconds before the attached stack of blocks starts. Accepts both whole and decimal numbers. |
Example
cuando el temporizador > [2] segundos
[Move the 6-Axis Arm after 2 seconds.]
incrementar la posición [brazo v] en x:[100] y:[0] z:[0] [mm v] ▶
when started#
The when started block runs its stack when the project begins. You can have multiple when started blocks to run multiple stacks of blocks at once.
cuando empezó
Parameters |
Description |
|---|---|
This block has no parameters. |
Example
cuando empezó
[Move the 6-Axis Arm 100 millimeters along the x-axis.]
incrementar la posición [brazo v] en x:[100] y:[0] z:[0] [mm v] ▶
Parameters |
Description |
|---|---|
This block has no parameters. |
when I receive event#
The when I receive event block starts a stack when a matching event is broadcast. You can have multiple when I receive event blocks to run multiple stacks of blocks at once.
cuando recibo [my_event v]
Parameters |
Description |
|---|---|
event |
The event to be triggered. Users can select an existing event, create a new one, rename the selected event, or delete it. |
Example
cuando empezó
[Move the 6-Axis Arm 100 millimeters along the y-axis.]
incrementar la posición [brazo v] en x:[100] y:[0] z:[0] [mm v] ▶
transmisión [move_y v]
cuando recibo [move_y v]
imprimir [Received!] en la consola ◀ y coloque el cursor en la siguiente fila
incrementar la posición [brazo v] en x:[0] y:[100] z:[0] [mm v] ▶
broadcast event#
The broadcast event block triggers any matching when I receive event hat block. It does not pause the execution of the stack and continues running the next block immediately.
transmisión [message1 v]
Parameters |
Description |
|---|---|
event |
The event to trigger. Users can select an existing event, create a new one, rename the selected event, or delete it. |
Example
cuando empezó
[Move the 6-Axis Arm 100 millimeters along the y-axis.]
incrementar la posición [brazo v] en x:[100] y:[0] z:[0] [mm v] ▶
transmisión [move_y v]
cuando recibo [move_y v]
imprimir [Received!] en la consola ◀ y coloque el cursor en la siguiente fila
incrementar la posición [brazo v] en x:[0] y:[100] z:[0] [mm v] ▶
broadcast event and wait#
The broadcast event and wait block triggers an event, then pauses execution of the current stack until all triggered when I receive event block stacks have completed.
transmitir [message1 v] y esperar
Parameters |
Description |
|---|---|
event |
The event to trigger. Users can select an existing event, create a new one, rename the selected event, or delete it. |
Example
cuando empezó
[Move the 6-Axis Arm 100 millimeters along the y-axis.]
incrementar la posición [brazo v] en x:[100] y:[0] z:[0] [mm v] ▶
transmitir [move_y v] y esperar
imprimir [Finished moving!] en la consola ◀ y coloque el cursor en la siguiente fila
cuando recibo [move_y v]
imprimir [Received!] en la consola ◀ y coloque el cursor en la siguiente fila
incrementar la posición [brazo v] en x:[0] y:[100] z:[0] [mm v] ▶