Проектная работа - WIP
This commit is contained in:
@@ -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
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Создать координатную сетку
|
/// Создать координатную сетку
|
||||||
|
|||||||
Reference in New Issue
Block a user