From 10f615418ebc5cf4a12b82bbcb95a74cbde8c339 Mon Sep 17 00:00:00 2001 From: tslil clingman <> Date: Thu, 30 Jan 2020 21:45:44 -0800 Subject: Some minor bugs --- src/game.rs | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'src/game.rs') diff --git a/src/game.rs b/src/game.rs index 4a80ce7..8716111 100644 --- a/src/game.rs +++ b/src/game.rs @@ -110,6 +110,7 @@ pub struct Piece { pub stone: Stone, } +#[derive(Clone, Copy)] pub enum WinType { RoadWin(Player), FlatWin(Player), @@ -675,6 +676,7 @@ pub struct Game { white_player_name: String, black_player_name: String, date_string: String, + win_type: Option, } impl Game { @@ -701,6 +703,7 @@ impl Game { white_player_name: white_player_name.to_string(), black_player_name: black_player_name.to_string(), date_string: date_str.to_string(), + win_type: None, }, warning, ) @@ -766,6 +769,9 @@ impl Game { result.push(line); } } + if self.win_type.is_some() { + result.push(self.win_type.unwrap().to_string()); + } result } @@ -835,7 +841,8 @@ impl Game { TurnOrder::BlackPlacesWhite => TurnOrder::Normal, TurnOrder::Normal => TurnOrder::Normal, }; - return Ok((pos_vec, self.last_state().check_win())); + self.win_type = self.last_state().check_win(); + return Ok((pos_vec, self.win_type)); } } } @@ -877,7 +884,7 @@ impl fmt::Display for Game { self.white_player_name, self.black_player_name, self.size, - self.query_action_lines().join("\n") + self.query_action_lines().join("\n"), ) } } -- cgit v1.3.1