Проектная работа - WIP

This commit is contained in:
+15 -5
View File
@@ -96,22 +96,32 @@ fn spawn_snake(commands: &mut Commands) {
commands commands
.entity(tail) .entity(tail)
//
.observe( .observe(
|event: On<GridBarier>, |event: On<GridBarier>,
mut query: Query<(&mut Direction, &Transform)>, mut query: Query<(&mut Direction, &Transform)>,
snake_path: Res<SnakePath>| { snake_path: Res<SnakePath>| {
trace!("first observer working");
if let Ok((mut direction, transform)) = query.get_mut(event.0) { if let Ok((mut direction, transform)) = query.get_mut(event.0) {
if let Some(new_direction) = snake_path.pick(transform) { if let Some(new_direction) = snake_path.pick(transform) {
trace!("change direction for {:?} to {:?}", event.0, new_direction);
*direction = new_direction; *direction = new_direction;
} }
} }
}, },
) )
.observe(|event: On<GridBarier>| { .observe(
trace!("second observer working"); |event: On<GridBarier>,
}); query: Query<(Entity, &Transform), With<End>>,
mut snake_path: ResMut<SnakePath>| {
if let Ok((entity, transform)) = query.get(event.0) {
if let Some(removed) = snake_path.pop(transform) {
trace!(
"removed direction {:?} from snake_path by End entity {:?}",
removed, entity
);
}
}
},
);
} }
/// Создать координатную сетку /// Создать координатную сетку