Use RemovedComponents
type to iterate over all removed entities
fn react_on_removal(
mut removed: RemovedComponents<Dying>,
mut query: Query<&mut Sprite>
) {
// RemovedComponents returns us the entities
for entity in &mut removed {
// Which we use to query for other components on the entity
if let Ok(mut sprite) = query.get_mut(entity) {
// And remove red from any sprite components that are
// not dying
sprite.color.set_r(0.0);
}
}
}
RemovedComponents<T>::iter()
returns an iterator with the Entity
s that had
their Component
T
(in this case Dying
) removed at some point earlier
during the tick.