aboutsummaryrefslogtreecommitdiff
path: root/src/systems.rs
diff options
context:
space:
mode:
authorLibravatar Silas Bartha <silas@exvacuum.dev>2025-02-15 20:53:19 -0500
committerLibravatar Silas Bartha <silas@exvacuum.dev>2025-02-15 20:53:19 -0500
commit9e5f782eb228a6b050b01d5c4c82dba1399f7172 (patch)
tree2fe21e55d073b3ee5b31ef05c3e036bec71c2b03 /src/systems.rs
parenta1e9304dc31980703446bdb33246e314bafd3b15 (diff)
directory-aware navigation
Diffstat (limited to 'src/systems.rs')
-rw-r--r--src/systems.rs13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/systems.rs b/src/systems.rs
index d6840ee..b95b14f 100644
--- a/src/systems.rs
+++ b/src/systems.rs
@@ -6,13 +6,16 @@ use bevy::{
use crate::resources::DirworldTasks;
pub fn remove_completed_tasks(mut commands: Commands, mut tasks: ResMut<DirworldTasks>) {
- tasks.retain(|_, task| {
- if task.is_finished() {
- if let Some(Some(mut command_queue)) = block_on(future::poll_once(&mut *task)) {
- commands.append(&mut command_queue);
+ tasks.retain(|_, task| match task {
+ Some(task) => {
+ if task.is_finished() {
+ if let Some(Some(mut command_queue)) = block_on(future::poll_once(&mut *task)) {
+ commands.append(&mut command_queue);
+ }
}
+ !task.is_finished()
}
- !task.is_finished()
+ None => true,
});
}