added doc and minor changes to have a better grid
This commit is contained in:
		
							parent
							
								
									7b3bdbfa11
								
							
						
					
					
						commit
						e884ff6e9b
					
				
							
								
								
									
										16
									
								
								src/main.rs
									
									
									
									
									
								
							
							
						
						
									
										16
									
								
								src/main.rs
									
									
									
									
									
								
							@ -198,6 +198,7 @@ fn open_file(filename: &str) -> io::Result<String> {
 | 
			
		||||
    Ok(content)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
///Here we display the grid by looping in every position checking if it exists in the HashMap.
 | 
			
		||||
fn display_grid(
 | 
			
		||||
    w: &world::World,
 | 
			
		||||
    robot_pool: &Vec<robot::Robot>,
 | 
			
		||||
@ -208,21 +209,22 @@ fn display_grid(
 | 
			
		||||
        for j in 0..w.x {
 | 
			
		||||
            match h.get(&robot::Position { x: j, y: i }) {
 | 
			
		||||
                Some(id) => match robot_pool[(id - 1) as usize].o {
 | 
			
		||||
                    robot::Orientation::N => print!("↑"),
 | 
			
		||||
                    robot::Orientation::E => print!("→"),
 | 
			
		||||
                    robot::Orientation::S => print!("↓"),
 | 
			
		||||
                    robot::Orientation::W => print!("←"),
 | 
			
		||||
                    robot::Orientation::N => print!("↑  "),
 | 
			
		||||
                    robot::Orientation::E => print!("→  "),
 | 
			
		||||
                    robot::Orientation::S => print!("↓  "),
 | 
			
		||||
                    robot::Orientation::W => print!("←  "),
 | 
			
		||||
                },
 | 
			
		||||
 | 
			
		||||
                None => print!("."),
 | 
			
		||||
                None => print!(".  "),
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        println!();
 | 
			
		||||
    }
 | 
			
		||||
    print!("  ");
 | 
			
		||||
    print!("   ");
 | 
			
		||||
    for j in 0..w.x {
 | 
			
		||||
        print!("{}  ", j);
 | 
			
		||||
    }
 | 
			
		||||
    println!();
 | 
			
		||||
}
 | 
			
		||||
fn main() -> Result<(), Box<dyn std::error::Error>> {
 | 
			
		||||
    // We handle CLI flags here.
 | 
			
		||||
@ -244,7 +246,7 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
 | 
			
		||||
    let world: world::World = parse_config(raw_conf, &mut robot_pool)?;
 | 
			
		||||
    let mut hash: HashMap<robot::Position, u32> = HashMap::new();
 | 
			
		||||
    create_hash_map(&robot_pool, &mut hash);
 | 
			
		||||
 | 
			
		||||
    display_grid(&world, &robot_pool, &hash);
 | 
			
		||||
    loop {
 | 
			
		||||
        let mut piouff: u32 = 0;
 | 
			
		||||
        for r in &mut robot_pool {
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user