pub fn play(mut self) {
        let players = self.players.clone();
        loop {
            if self.players.iter().filter(|p| p.active()).count() == 1 {
                self.callback.callback(Message::GameOver).ok();
                self.players = players.clone();
            }
            if let Err(e) = self.play_round() {
                self.callback.callback(Message::Error(e)).ok();
                break;
            }
        }
    }
/// Play indefinitely. Only break on errors
Play indefinitely. Only break on errors
Play indefinitely . Only break on errors
pub fn play(mut self) {
        let players = self.players.clone();
        loop {
            if self.players.iter().filter(|p| p.active()).count() == 1 {
                self.callback.callback(Message::GameOver).ok();
                self.players = players.clone();
            }
            if let Err(e) = self.play_round() {
                self.callback.callback(Message::Error(e)).ok();
                break;
            }
        }
    }
pub fn play ( mut self ) { let players = self . players . clone ( ) ; loop { if self . players . iter ( ) . filter ( | p | p . active ( ) ) . count ( ) == 1 { self . callback . callback ( Message :: GameOver ) . ok ( ) ; self . players = players . clone ( ) ; } if let Err ( e ) = self . play_round ( ) { self . callback . callback ( Message :: Error ( e ) ) . ok ( ) ; break ; } } }
Play indefinitely.
Play indefinitely .
mut self
mut self