Fix error display

This commit is contained in:
Artlef 2020-11-29 01:47:13 +01:00
parent 69adc99e19
commit cb6ad49e85
2 changed files with 18 additions and 9 deletions

View File

@ -72,6 +72,7 @@ fn main() {
client.display_sender.send(DisplayMessage::Exit).unwrap();
return;
}
client.display_sender.send(DisplayMessage::Clear).unwrap();
if client.player.role == UserRole::Black {
client.side = Color::Black;
}
@ -104,14 +105,14 @@ fn main() {
}
if is_player_turn_loop || client.player.role == UserRole::Spectator {
let mut message = String::from("");
client
.opponent_name
.clone()
.map(|name| message.push_str(&format!("{} played", name)));
client
.last_move
.clone()
.map(|chessmove| message.push_str(&format!(" {}", chessmove)));
let opponent_name = client.opponent_name.clone();
if opponent_name.is_some() {
message.push_str(&format!("{} played", opponent_name.expect("is some")));
client
.last_move
.clone()
.map(|chessmove| message.push_str(&format!(" {}", chessmove)));
}
if message.len() > 0 {
display_sender
.send(DisplayMessage::Information(message))
@ -149,6 +150,10 @@ fn main() {
Ok(position) => current_position = position,
Err(_) => break,
};
//clear message
display_sender
.send(DisplayMessage::Message(String::default()))
.unwrap();
} else {
match wait_for_next_move(&mut client, &mut stream) {
Ok(position) => current_position = position,

View File

@ -247,7 +247,11 @@ fn play(stream: &mut UnixStream, server: &Server, movestr: String) {
println!("User tried to play {}", movestr.clone());
match clichess::try_to_play_move(&chess, movestr.clone()) {
Ok(played_chess) => *chess = played_chess,
Err(e) => println!("Error: {}", e),
Err(e) => {
println!("Error: {}", e);
send_ko(stream);
return;
}
};
let player_name = player
.expect("current server is in the server list")