From: Tomas Wenström Date: Wed, 17 Feb 2021 18:43:18 +0000 (+0100) Subject: Stop bolls from passing through walls X-Git-Url: http://www.dolda2000.com/gitweb/?p=kaka%2Frust-sdl-test.git;a=commitdiff_plain;h=e8d0376f121580982bf615f179b001e2784d6029 Stop bolls from passing through walls --- diff --git a/src/core/game.rs b/src/core/game.rs index 5c1bda8..8caf6ab 100644 --- a/src/core/game.rs +++ b/src/core/game.rs @@ -293,9 +293,8 @@ impl Object for Boll { } self.bounces -= 1; let mut a = wall.normal().mirror(self.vel.to_angle()); // TODO interpolera normalen mellan närliggande väggdelar? bollarna studsar väldigt "kantigt" nu - self.pos = pos; + self.pos = pos + Point::from(wall.normal()) * 0.1; // fÃ¥r bollen att inte Ã¥ka igenom väggen av misstag p.g.a nedan slumpvinkel self.vel = Point::from(a) * self.vel.length() * 0.35; - self.pos += self.vel; // TODO det här kan fÃ¥ bollen att Ã¥ka igenom en närliggande vägg utan att kollisionstestas, men behövs just nu för att inte kollidera med samma vägg bakifrÃ¥n // create another boll use rand::distributions::{Distribution, Normal};