X-Git-Url: http://dolda2000.com/gitweb/?a=blobdiff_plain;f=src%2Fcore%2Fobject%2Fmod.rs;fp=src%2Fcore%2Fobject%2Fmod.rs;h=2ecf042a1e938da639ad2128f0489b6c386fbfc1;hb=5d7eff9e9c0f585e9c4d57907f2e72003d39c757;hp=0000000000000000000000000000000000000000;hpb=09cd68feac9813b82f0c73e7c0429ddf0f719117;p=kaka%2Frust-sdl-test.git diff --git a/src/core/object/mod.rs b/src/core/object/mod.rs new file mode 100644 index 0000000..2ecf042 --- /dev/null +++ b/src/core/object/mod.rs @@ -0,0 +1,22 @@ +use core::level::Level; +use core::render::Renderer; +use sprites::SpriteManager; +use time::Duration; + +pub mod boll; +pub mod character; + +pub type Objects = Vec>; + +////////// OBJECT ////////////////////////////////////////////////////////////// + +pub trait Object { + fn update(&mut self, objects: &mut Objects, lvl: &Level, dt: Duration) -> ObjectState; + fn render(&self, _renderer: &mut Renderer, _sprites: &SpriteManager) {} +} + +#[derive(PartialEq)] +pub enum ObjectState { Alive, Dead } + +pub trait Physical {} +pub trait Drawable {}