load level in engine

This commit is contained in:
Fabien Freling 2020-03-12 17:54:31 +01:00
parent dd6a65d843
commit 5774c3e488
2 changed files with 56 additions and 13 deletions

View file

@ -1,11 +1,8 @@
extern crate piston_window;
use piston_window::*;
mod engine;
enum Tile {
Empty,
Wall,
}
mod engine;
use engine::Tile;
fn main() {
let mut window: PistonWindow =
@ -15,18 +12,24 @@ fn main() {
.build()
.unwrap_or_else(|e| { panic!("Failed to build PistonWindow: {}", e) });
let level: [Tile; 5 * 5] = [
let mut engine = engine::Engine::new(window.size());
let tiles = vec![
Tile::Wall, Tile::Wall, Tile::Wall, Tile::Wall, Tile::Wall,
Tile::Wall, Tile::Empty, Tile::Empty, Tile::Empty, Tile::Wall,
Tile::Wall, Tile::Empty, Tile::Empty, Tile::Empty, Tile::Wall,
Tile::Wall, Tile::Empty, Tile::Empty, Tile::Empty, Tile::Wall,
Tile::Wall, Tile::Wall, Tile::Wall, Tile::Wall, Tile::Wall,
];
let mut engine = engine::Engine::new(window.size());
let level = engine::Level {
width:5,
height: 5,
tiles
};
engine.load_level(level);
while let Some(event) = window.next() {
window.draw_2d(&event, |context, graphics, device| {
window.draw_2d(&event, |context, graphics, _device| {
engine.render(context, graphics);
});
}