diff options
| author | tslil clingman <> | 2020-01-30 21:36:14 -0800 |
|---|---|---|
| committer | tslil clingman <> | 2020-01-30 21:36:14 -0800 |
| commit | 5f2bdc5c15cb5fcd12bff1787a4862c9ab553d95 (patch) | |
| tree | d859e2a7b43cc9bad20d3710017971bac61570f0 /src/main.rs | |
| parent | cdfddde23c856f1dce37fa4bc3876fd4d77033de (diff) | |
Oversight on modal stuff
Diffstat (limited to 'src/main.rs')
| -rw-r--r-- | src/main.rs | 68 |
1 files changed, 21 insertions, 47 deletions
diff --git a/src/main.rs b/src/main.rs index e5ba074..1c9a29a 100644 --- a/src/main.rs +++ b/src/main.rs @@ -180,58 +180,32 @@ impl GUI { } Ok(gui_result) => match gui_result { GUIResult::Quit => { - if engine_turn { - self.message_log.log_error(String::from( - "Internal error: engine passed quit message somehow. Press any key to quit.", - )); - } else { - self.message_log - .log_message(String::from("Press any key to quit.")); - } + self.message_log + .log_message(String::from("Press any key to quit.")); self.screen.getch(); return false; } - GUIResult::SwitchElement => { - if engine_turn { - self.message_log.log_error(String::from( - "Internal error: engine passed switch-element message somehow. Press any key to quit.", - )); - self.screen.getch(); - return false; - } else { - match self.input_source { - InputSource::Player => { - self.input_source = InputSource::Log; - self.write_header(LOG_HEADER); - } - InputSource::Log => { - self.input_source = InputSource::Player; - self.write_header(ACTION_HEADER); - } - } + GUIResult::SwitchElement => match self.input_source { + InputSource::Player => { + self.input_source = InputSource::Log; + self.write_header(LOG_HEADER); } - } - GUIResult::Undo => { - if engine_turn { - self.message_log.log_error(String::from( - "Internal error: engine passed undo message somehow. Press any key to quit.", - )); - self.screen.getch(); - return false; - } else { - match game.undo() { - Ok(pos_vec) => { - self.message_log - .log_message(String::from("Game undone by one turn.")); - self.board_gui.update(&game, pos_vec); - self.game_log.update(&game); - } - Err(err) => { - self.message_log.log_error(err); - } - } + InputSource::Log => { + self.input_source = InputSource::Player; + self.write_header(ACTION_HEADER); } - } + }, + GUIResult::Undo => match game.undo() { + Ok(pos_vec) => { + self.message_log + .log_message(String::from("Game undone by one turn.")); + self.board_gui.update(&game, pos_vec); + self.game_log.update(&game); + } + Err(err) => { + self.message_log.log_error(err); + } + }, GUIResult::Raw(raw) => { let stone_owner = game.query_stone_owner(); let act = parse_action(stone_owner, &raw); |
