Compare commits

...

1 Commits

Author SHA1 Message Date
c5d6ea28e1 fix: discard PlayerControlled tag component 2025-08-15 11:28:08 -05:00

View File

@@ -1,5 +1,6 @@
use bevy_ecs::{ use bevy_ecs::{
event::{EventReader, EventWriter}, event::{EventReader, EventWriter},
query::With,
system::{Query, ResMut}, system::{Query, ResMut},
}; };
@@ -16,14 +17,14 @@ use crate::{
pub fn player_system( pub fn player_system(
mut events: EventReader<GameEvent>, mut events: EventReader<GameEvent>,
mut state: ResMut<GlobalState>, mut state: ResMut<GlobalState>,
mut players: Query<(&PlayerControlled, &mut Velocity)>, mut players: Query<&mut Velocity, With<PlayerControlled>>,
mut errors: EventWriter<GameError>, mut errors: EventWriter<GameError>,
) { ) {
// Get the player's velocity (handling to ensure there is only one player) // Get the player's velocity (handling to ensure there is only one player)
let mut velocity = match players.single_mut() { let mut velocity = match players.single_mut() {
Ok((_, velocity)) => velocity, Ok(velocity) => velocity,
Err(e) => { Err(e) => {
errors.write(GameError::InvalidState(format!("Player not found: {}", e)).into()); errors.write(GameError::InvalidState(format!("No/multiple entities queried for player system: {}", e)).into());
return; return;
} }
}; };