use crate::plugin::Plugin;
use crate::resource::Resources;
pub struct InputPlugin;
impl Plugin for InputPlugin {
type Dependencies = ();
fn name(&self) -> &'static str {
"InputPlugin"
}
fn build(&self, resources: &mut Resources) {
resources.insert(astrelis_input::InputState::new());
tracing::debug!("InputPlugin: Registered InputState");
}
}
#[cfg(test)]
mod tests {
use super::*;
use crate::EngineBuilder;
#[test]
fn test_input_plugin_registers_state() {
let engine = EngineBuilder::new().add_plugin(InputPlugin).build();
assert!(engine.get::<astrelis_input::InputState>().is_some());
}
}