19 lines
346 B
Rust
19 lines
346 B
Rust
|
use bevy::prelude::*;
|
||
|
|
||
|
pub fn target_and_other<F>(
|
||
|
entity1: Entity,
|
||
|
entity2: Entity,
|
||
|
mut predecate: F,
|
||
|
) -> Option<(Entity, Entity)>
|
||
|
where
|
||
|
F: FnMut(Entity) -> bool,
|
||
|
{
|
||
|
if predecate(entity1) {
|
||
|
Some((entity1, entity2))
|
||
|
} else if predecate(entity2) {
|
||
|
Some((entity2, entity1))
|
||
|
} else {
|
||
|
None
|
||
|
}
|
||
|
}
|