From fd19c77a6ae474d8a4212a7055a7032016fe01ca Mon Sep 17 00:00:00 2001 From: CoCo_Sol Date: Thu, 25 May 2023 21:46:28 +0200 Subject: [PATCH] fix fmt --- src/map.rs | 33 +++++++++++++++++++-------------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/src/map.rs b/src/map.rs index 92c0671..0a19ffe 100644 --- a/src/map.rs +++ b/src/map.rs @@ -77,21 +77,26 @@ pub enum Tile { /// Permet de crée des entité representant les cases d'une map, sur une longueur et langueur donné. /// Donner une longueur impaire. pub fn init_map(longueur: u8, largeur: u8, mut commands: Commands) { - for y in 0..longueur { - for x in 0..largeur { - if y % 2 != 0 && x == longueur { - } else { - let mut curent_type = Tile::Grass; - if rand::random() { - if rand::random() { - curent_type = Tile::Forest - } else { - curent_type = Tile::Hill - } - } + (0..longueur) + .flat_map(|y| { + (0..largeur) + .filter(move |&x| !(y % 2 == 0 && x == largeur - 1)) + .map(move |x| (x, y)) + }) + .for_each(|(x, y)| { + commands.spawn((generate_random_tile_for_map(), Position { x, y })); + }); +} - commands.spawn((curent_type, Position { x, y })); - } +/// Cette fonction return un ellement aleatoir entre de la Grass Hill et Forest +fn generate_random_tile_for_map() -> Tile { + if rand::random() { + if rand::random() { + Tile::Forest + } else { + Tile::Hill } + } else { + Tile::Grass } }