summaryrefslogtreecommitdiff
path: root/server/src/spatial_index.rs
diff options
context:
space:
mode:
Diffstat (limited to 'server/src/spatial_index.rs')
-rw-r--r--server/src/spatial_index.rs8
1 files changed, 6 insertions, 2 deletions
diff --git a/server/src/spatial_index.rs b/server/src/spatial_index.rs
index a62c80e0..d4bd1776 100644
--- a/server/src/spatial_index.rs
+++ b/server/src/spatial_index.rs
@@ -35,8 +35,12 @@ impl<T: Eq + Hash + Copy> SpatialIndex<T> {
cb(e, pos)
}
}
- pub fn query(&self, _position: Vec2, _radius: f32, cb: impl FnMut(T, Vec2)) {
- self.all(cb)
+ pub fn query(&self, position: Vec2, radius: f32, mut cb: impl FnMut(T, Vec2)) {
+ self.all(|pl, p| {
+ if p.distance(position) < radius {
+ cb(pl, p)
+ }
+ })
}
}
impl<T> Default for SpatialIndex<T> {