}
// get board state
- let board = board_from_string(board_string);
+ let board = board_from_string(&board_string);
// find placement position or return "illegal move" if unable to
let mut final_pos = pos;
};
let is_cyan = status == 0;
- let board = board_from_string(board_string);
+ let board = board_from_string(&board_string);
let mut ai_choice_pos: usize = get_ai_choice(
AIDifficulty::Hard,
if is_cyan {
&mut self,
shared: &SharedState,
document: &Document,
- board_string: String,
+ board_string: &str,
) {
- let board = board_from_string(board_string.clone());
+ let board = board_from_string(board_string);
for (idx, slot) in board.iter().enumerate() {
let was_open =
element_has_class(document, &format!("slot{}", idx), "open").unwrap_or(false);
if self.board_updated_time != updated_time {
if let Some(updated_time) = updated_time {
self.board_updated_time.replace(updated_time);
- if let Some(board_string) = board_string {
+ if let Some(board_string) = board_string.as_ref() {
self.update_board_from_string(&shared, &document, board_string);
}
}
}
}
NetworkedGameState::CyanWon => {
+ if let Some(board_string) = board_string.as_ref() {
+ self.update_board_from_string(&shared, &document, board_string);
+ }
append_to_info_text(
&document,
"info_text1",
self.do_backend_tick = false;
}
NetworkedGameState::MagentaWon => {
+ if let Some(board_string) = board_string.as_ref() {
+ self.update_board_from_string(&shared, &document, board_string);
+ }
append_to_info_text(
&document,
"info_text1",
self.do_backend_tick = false;
}
NetworkedGameState::Draw => {
+ if let Some(board_string) = board_string.as_ref() {
+ self.update_board_from_string(&shared, &document, board_string);
+ }
append_to_info_text(
&document,
"info_text1",
}
}
BREnum::GotPlaced(placed_status, board_string) => {
- self.update_board_from_string(&shared, &document, board_string);
+ self.update_board_from_string(&shared, &document, &board_string);
match placed_status {
PlacedEnum::Accepted => {