use geometry::{Point, ToAngle};
use point;
use sdl2::event::Event;
-use sdl2::joystick::PowerLevel;
use sdl2::keyboard::Keycode;
use sdl2::rect::Rect;
use sprites::SpriteManager;
self.vel -= direction * 0.1;
}
- if ctrl.start.is_pressed && !ctrl.start.was_pressed {
- match ctrl.device.power_level() {
- Ok(PowerLevel::Unknown) => { println!("power level unknown"); }
- Ok(PowerLevel::Empty) => { println!("power level empty"); }
- Ok(PowerLevel::Low) => { println!("power level low"); }
- Ok(PowerLevel::Medium) => { println!("power level medium"); }
- Ok(PowerLevel::Full) => { println!("power level full"); }
- Ok(PowerLevel::Wired) => { println!("power level wired"); }
- Err(_) => {}
- };
- }
-
Alive
}
}
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};