diff --git a/server/src/sys/agent.rs b/server/src/sys/agent.rs index ae0e959d8c..a2ab32ad55 100644 --- a/server/src/sys/agent.rs +++ b/server/src/sys/agent.rs @@ -2296,13 +2296,13 @@ impl<'a> AgentData<'a> { self.body, read_data.bodies.get(entity), ) { + let dist_to_pos_xy = self.pos.0.xy().distance(pos.0.xy()); let spacing = body.spacing_radius() + other_body.spacing_radius(); - if self.pos.0.xy().distance(pos.0.xy()) < spacing { + if dist_to_pos_xy < spacing { sep_vec += (self.pos.0.xy() - pos.0.xy()) .try_normalized() .unwrap_or_else(Vec2::zero) - * ((spacing - self.pos.0.xy().distance(pos.0.xy())) - / spacing); + * ((spacing - dist_to_pos_xy) / spacing); } } }