Crate bevy_event_set[−][src]
A macro to create event bundles for Bevy
Usage
ⓘ
event_set!([name] { [...events] });
This will create a struct that can be used to send events of all given
types through the SendEvent
trait.
Example
use bevy_event_set::*; // Define your events struct EventOne; struct EventTwo; struct EventThree(usize); // Create an event set named `MyEvents` event_set!(MyEvents { EventOne, EventTwo, EventThree }); // Use the event set in a system fn event_emitter_system(mut events: MyEvents) { events.send(EventOne); events.send(EventTwo); events.send(EventThree(42)); } // Subscribe to events selectively in different systems fn event_one_listener_system(events: Res<Events<EventOne>>) { } fn event_two_listener_system(events: Res<Events<EventTwo>>) { } fn event_three_listener_system(events: Res<Events<EventThree>>) { } // Add the event set to your app App::build() .add_event_set::<MyEvents>();
Macros
event_set | Creates an event set |
Traits
AddEventSet | Trait used to add |
EventSet | Describes an event set |
SendEvent | Allows an event set to send an event of a given type |