diff --git a/src/common/game_state/cards/deck.cpp b/src/common/game_state/cards/deck.cpp index b00e371c35f7578b95c742ae14c99adc11a16b48..70f40b7eaa6e9be515ec9b18be83491d59c6996d 100644 --- a/src/common/game_state/cards/deck.cpp +++ b/src/common/game_state/cards/deck.cpp @@ -89,7 +89,12 @@ unsigned int deck::get_number_of_remaining_cards() const noexcept // state update functions void deck::setup_round() { - _remaining_cards = _all_cards; + // make a copy of _all_cards + _remaining_cards = std::vector<card*>(); + for (card* & c : _all_cards) + { + _remaining_cards.push_back(new card(*c)); + } } bool deck::draw_cards(const player* player, const int round_number, std::string& err)