Hey 2d and 3d selection work!

Small bug w.r.t. selecting multiple entities at once, should be a quick fix...
bevy0.12
Elijah C. Voigt 2 years ago
parent b4270899d2
commit ade967fb67

@ -493,21 +493,19 @@ fn select(
hit::intersects3d(&ray, mesh, &gt).and_then(|_hit| {
selectable
.iter()
.find(|&parent| {
children
.iter_descendants(parent)
.any(|child| child == entity)
.find(|&e| {
// A child was hit (pieces)
let primary = entity == e;
// This entity was hit (tile hitboxes)
let secondary = children
.iter_descendants(e)
.any(|child| child == entity);
primary || secondary
})
.iter()
.for_each(|&parent| {
selected.iter().for_each(|s| {
if s != parent {
commands
.entity(s)
.remove::<game::Selected>();
}
});
commands.entity(parent).insert(game::Selected);
.for_each(|&e| {
commands.entity(e).insert(game::Selected);
});
Some(())
});

Loading…
Cancel
Save