diff options
Diffstat (limited to 'src/sim/sim_manager')
| -rw-r--r-- | src/sim/sim_manager/mod.rs | 7 |
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; } } } |
