source/client/Controller.py
def automaticallyPrepareCards(self, selected_cards):
        """HandAndFoot specific: Prepare selected cards to be played.  Called from HandAndFootButtons.py.
        
        Assumes all groups are sets
        Fully prepares natural cards
        Returns options for where to play wild cards
        Returns message that you can't play 3s
        """
        if self._state.turn_phase == Turn_Phases[2]:
            self.note = "You can't change prepared cards while waiting to finish picking up the pile"
            return
        user_input_cards = []
        for wrappedcard in selected_cards:
            card = wrappedcard.card
            key_opts = []
            try:
                key_opts = self._state.getValidKeys(card)
            except Exception as err:
                #This note will probably be overwritten before the user sees it, unless they try to prepare only 3s
                self.note = "Did not prepare card: {0}".format(err) 
            else:
                if len(key_opts) == 1:
                    self.prepareCard(key_opts[0], card) #Automatically prepare as much as possible
                else:
                    user_input_cards.append([card, key_opts])
        return user_input_cards
HandAndFoot specific: Prepare selected cards to be played.  Called from HandAndFootButtons.py.
        
        Assumes all groups are sets
        Fully prepares natural cards
        Returns options for where to play wild cards
        Returns message that you can't play 3s
        
HandAndFoot specific: Prepare selected cards to be played.
HandAndFoot specific : Prepare selected cards to be played .
def automaticallyPrepareCards(self, selected_cards):
        if self._state.turn_phase == Turn_Phases[2]:
            self.note = "You can't change prepared cards while waiting to finish picking up the pile"
            return
        user_input_cards = []
        for wrappedcard in selected_cards:
            card = wrappedcard.card
            key_opts = []
            try:
                key_opts = self._state.getValidKeys(card)
            except Exception as err:
                self.note = "Did not prepare card: {0}".format(err) 
            else:
                if len(key_opts) == 1:
                    self.prepareCard(key_opts[0], card) 
                else:
                    user_input_cards.append([card, key_opts])
        return user_input_cards
def automaticallyPrepareCards ( self , selected_cards ) : if self . _state . turn_phase == Turn_Phases [ 2 ] : self . note = "You can't change prepared cards while waiting to finish picking up the pile" return user_input_cards = [ ] for wrappedcard in selected_cards : card = wrappedcard . card key_opts = [ ] try : key_opts = self . _state . getValidKeys ( card ) except Exception as err : self . note = "Did not prepare card: {0}" . format ( err ) else : if len ( key_opts ) == 1 : self . prepareCard ( key_opts [ 0 ] , card ) else : user_input_cards . append ( [ card , key_opts ] ) return user_input_cards
HandAndFoot specific: Prepare selected cards to be played.
HandAndFoot specific : Prepare selected cards to be played .
"""HandAndFoot specific: Prepare selected cards to be played.  Called from HandAndFootButtons.py.
        
        Assumes all groups are sets
        Fully prepares natural cards
        Returns options for where to play wild cards
        Returns message that you can't play 3s
        """ #This note will probably be overwritten before the user sees it, unless they try to prepare only 3s #Automatically prepare as much as possible
self
selected_cards