diff options
Diffstat (limited to 'src/main.rs')
-rw-r--r-- | src/main.rs | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/src/main.rs b/src/main.rs index 3e8e461..cc087b6 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,19 +1,33 @@ use std::{f32::INFINITY, time::{Duration, Instant}}; -use chessnost::board::Board; +use chessnost::board::{Board, Color}; fn main() { - let mut board = Board::new(); + let fen = String::from("5k2/p2Q4/2p5/4q3/8/2P2Pp1/PP4P1/1K3N2 w - - 1 29"); + let mut board = Board::from_FEN(fen); + + board.print(); loop { + let mov = match board.read_move() { + Ok(m) => m, + Err(e) => { + println!("Error: {}", e); + continue; + } + }; + print!("{:?}", mov); + board.make_move(mov); + board.print(); + let start = Instant::now(); - let (score, pv) = board.iterative_deepening(Duration::from_secs(4)); + let (score, pv) = board.iterative_deepening(10, Duration::from_secs(10)); println!("Finished in {:?}: score={:?}", start.elapsed(), score); let mov = pv[0]; println!("{:?}", mov); board.make_move(mov); board.print(); - println!("Score for {:?} is now: {} (material advantage={})", board.color(), board.quiscence(-INFINITY, INFINITY), board.material_advantage()); + println!("Score for {:?} is now: {}", board.color(), board.quiscence(-INFINITY, INFINITY)); } } |