/* We dont rendomly return cards, we return in a whole. * Return all cards either in use or used * Time is when Deck run out of cards or needs to reset/reshuffle */ void Player::put_card_back(Deck& deck) { Card *c; if (!cards_in_use_.empty()) { vector<Card*>::iterator i = cards_in_use_.begin(); while (i != cards_in_use_.end()) { c = *i; c->remove_owner(); deck.card_back(c); i = cards_in_use_.erase(i); } } if (!cards_used_.empty()) { vector<Card*>::iterator i = cards_used_.begin(); while (i != cards_used_.end()) { c = *i; c->remove_owner(); deck.card_back(c); i = cards_used_.erase(i); } } }