use crate::{deck::Deck, player::Player}; use petname::Generator; pub struct Lobby { pub id: String, pub players: Vec, pub deck: Deck, } impl Lobby { pub fn new() -> Lobby { let players: Vec = Vec::new(); let deck = Deck::new().shuffle(); let petname = petname::Petnames::default().generate_one(2, "-").expect("no words provided"); Lobby { id: petname, players, deck, } } pub fn join_lobby(mut self, player: Player) { self.players.push(player); } pub fn get_players(self) -> Vec { self.players } pub fn get_deck(self) -> Deck { self.deck } }