summaryrefslogtreecommitdiff
path: root/src/sim/sim_manager
diff options
context:
space:
mode:
Diffstat (limited to 'src/sim/sim_manager')
-rw-r--r--src/sim/sim_manager/mod.rs7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/sim/sim_manager/mod.rs b/src/sim/sim_manager/mod.rs
index 8849a1d..432ac0b 100644
--- a/src/sim/sim_manager/mod.rs
+++ b/src/sim/sim_manager/mod.rs
@@ -242,10 +242,13 @@ impl SimManager {
.cell_manager
.chunk_position_to_chunk_idx
.get(&(cx, cy))
- .map(|&idx| &self.cell_manager.chunks[idx])
- && !chunk.sleeping
+ .and_then(|&idx| self.cell_manager.chunks.get_mut(idx))
+ && let Some(ds) = chunk.collider_dirty_seqno
+ // debounce
+ && self.cell_manager.seqno - ds > 5
{
self.rb_manager.upsert_chunk_collider(cx, cy, chunk);
+ chunk.collider_dirty_seqno = None;
}
}
}