bevy_picking_state_machine 0.1.0

A global state machine for working with `bevy_picking`.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
use bevy::{ecs::component::Component, input::mouse::MouseButton};

/// Filters which button can trigger an entity's `Pressed`.
#[derive(Debug, Clone, Default, Component)]
pub struct ButtonFilter(Vec<MouseButton>);

impl ButtonFilter {
    pub fn new(iter: impl IntoIterator<Item = MouseButton>) -> Self {
        ButtonFilter(iter.into_iter().collect())
    }
    pub fn contains(&self, btn: MouseButton) -> bool {
        self.0.contains(&btn)
    }
}