Simple complete conflict avoidance.
This commit is contained in:
parent
993fb0730c
commit
2e9c699600
3 changed files with 83 additions and 18 deletions
|
|
@ -1,3 +1,5 @@
|
|||
use std::io;
|
||||
|
||||
use clap::{Parser, ValueEnum};
|
||||
use factorio_blueprint::belt_finding::{conflict_avoidance::ConflictAvoidance, problems, Problem};
|
||||
|
||||
|
|
@ -5,6 +7,7 @@ use factorio_blueprint::belt_finding::{conflict_avoidance::ConflictAvoidance, pr
|
|||
enum Mode {
|
||||
Solve,
|
||||
ConflictAvoidance,
|
||||
ConflictStep,
|
||||
}
|
||||
|
||||
#[derive(ValueEnum, Clone)]
|
||||
|
|
@ -51,5 +54,17 @@ fn main() {
|
|||
println!("{}", c)
|
||||
}
|
||||
}
|
||||
Mode::ConflictStep => {
|
||||
println!("{}", p);
|
||||
p.find_path();
|
||||
println!("{}", p);
|
||||
let mut c = ConflictAvoidance::new(p);
|
||||
println!("{}", c);
|
||||
while c.remove_conflict() {
|
||||
println!("{}", c);
|
||||
let mut s = String::new();
|
||||
let _ = io::stdin().read_line(&mut s);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue