use boll::*;
-use common::{Point, Dimension};
use core::controller::ControllerManager;
use core::render::Renderer;
-use point; // defined in common, but loaded from main...
+use geometry::{Point, Dimension};
+use point;
use rand::Rng;
use sdl2::event::{Event, WindowEvent};
use sdl2::keyboard::Keycode;
// if let Some(s) = self.states.last_mut() {
// s.pause();
// }
- state.enter(&mut self.ctrl_man);
+ state.enter(&self.ctrl_man);
self.states.push(state);
}
StateChange::Pop => {
}
_ => {
if let Some(state) = self.states.last_mut() {
- return state.handle_event(event)
+ if let Some(change) = state.handle_event(event) {
+ return Some(change);
+ }
} else {
return Some(StateChange::Exit)
}
fn render(&mut self) {
self.renderer.clear();
- self.states.last_mut().unwrap().render(&mut self.renderer, &mut self.sprites);
+ self.states.last_mut().unwrap().render(&mut self.renderer, &self.sprites);
self.renderer.present();
}
}