bevycrossbeamevent

MIT/Apache 2.0

Fire Bevy events from crossbeam channels.

Useful if you need to handle callbacks in 3rd party libraries etc. like steamworks-rs, or getting events out of tracing layers.

Usage

Add the plugin to your app

```rust ignore

[derive(Clone, Debug)]

struct LobbyJoined(Lobby);

impl Plugin for MyPlugin { fn build(&self, app: &mut App) { app.addcrossbeamevent::(); app.addstartupsystem(setup); app.addsystem(handlelobby_joined); } }

fn setup(service: Res, sender: Res>) { let sender = sender.clone(); service.join_lobby(id, move |lobby| { sender.send(LobbyJoined(lobby)); }); }

fn handlelobbyjoined(mut lobbyjoinedevents: EventReader) { for lobby in lobbyjoinedevents.iter() { info!("lobby joined: {lobby:?}"); } } ```

Bevy Version Support

The main branch targets the latest bevy release.

|bevy|bevycrossbeamevent| |----|--------------------| |0.10|0.1, main |

License

bevy_crossbeam_event is dual-licensed under either

at your option.

Contributions

PRs welcome!