bevyengine / bevyengine/bevy

Support reflected event types for `Observer` triggers.

Open
#17,511 0 comments 0 reactions 0 assignees View on GitHub
A-ECS A-Reflection C-Feature D-Modest S-Ready-For-Implementation
Dominant language
Rust
Stars
48.2k
Forks
4.8k
Avg merge
4d 8m
Merged PRs (30d)
147

Description

## What problem does this solve or what need does it fill?

We don't currently support this as a safe alternative to #17509. Users might find this useful.

## What solution would you like?

In a similar manner to #17509, we provide a `ReflectedEvent` event type for use in a `Trigger`:

```rust
fn my_observer(trigger: Trigger, /* ... */) {
/* ... */
}
```

We would provide a type function to map `ReflectedEvent` into `&dyn Reflect` for `Trigger::event()` and `&mut dyn Reflect` for `Trigger::event_mut()`.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.