Use GameControllers instead of Joysticks
[kaka/rust-sdl-test.git] / src / core / game.rs
index 5c1bda8..d9df53a 100644 (file)
@@ -7,7 +7,6 @@ use core::render::Renderer;
 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;
@@ -228,18 +227,6 @@ impl Object for Character {
            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
     }
 
@@ -293,9 +280,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};