def update_dir(name,make,MW_dir): main='../../../' os.system("cp ./ident_mw_card.dat "+main+"/Cards/") os.system("cp transfer_card.dat "+main+"/Cards/") os.system("cp data/transfer_card_"+name+".dat "+main+"/Cards/transfer_card.dat &>/dev/null") os.system("cp data/transfer_card_"+name+".dat "+main+"/Cards/transfer_card_default.dat &>/dev/null") if make: os.chdir(main+"/Source/") os.system("make") for directory in MW_dir: os.chdir(main+"/SubProcesses/"+directory) os.system("ln -s ../../Source/MadWeight/transfer_function/TF_param.inc TF_param.inc") os.system("make") os.chdir('../../') else: os.system("make ") # always compile libTF ... os.chdir(main) for directory in MW_dir: os.chdir("SubProcesses/"+directory) os.system("ln -s ../../Source/MadWeight/transfer_function/TF_param.inc TF_param.inc") os.chdir('../../') #charge card ident=Cards.Card('./Cards/ident_mw_card.dat') madweight=Cards.Card('./Cards/MadWeight_card.dat') transfer=Cards.Card('./Cards/transfer_card.dat') #create output madweight.create_include_file(ident,'./Source/madweight_card.inc') transfer.create_include_file(ident,'./Source/MadWeight/transfer_function/transfer_card.inc') os.chdir('./Source/MadWeight/transfer_function')
def set_bowers(self): self.right_bower = Cards.Card(self.trump, 'Jack', 11) if self.trump == 'Hearts': self.left_bower = Cards.Card('Diamonds', 'Jack', 11) elif self.trump == 'Diamonds': self.left_bower = Cards.Card('Hearts', 'Jack', 11) elif self.trump == 'Spades': self.left_bower = Cards.Card('Clubs', 'Jack', 11) else: self.left_bower = Cards.Card('Spades', 'Jack', 11)
def __init__(self): self.cards = [] self.current_play = [] self.previous_play = [] self.discards = [] for suit in ["Clubs", "Diamonds", "Hearts", "Spades"]: for rank in [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]: self.cards.append(Cards.Card(rank, suit)) self.cards.append(Cards.Card(0, '')) self.cards.append(Cards.Card(0, '')) self.shuffle()
def play(self, names): # Remove Queen of Clubs self.deck.remove(Cards.Card(0, 12)) # Make a hand for each player self.hands = [] for name in names: self.hands.append(OldMaidHand(name)) # Deal the cards self.deck.deal(self.hands) print("---------- Cards have been dealt") self.print_hands() # Remove initial matches matches = self.remove_all_matches() print("---------- Matches discarded, play begins") self.print_hands() # Play until all 50 cards are matched turn = 0 num_hands = len(self.hands) while matches < 25: matches += self.play_one_turn(turn) turn = (turn + 1) % num_hands print("---------- Game is Over") self.print_hands()
def __init__(self, card_name): """ init all the param for the run """ self.mw_card = Cards.Card(card_name) self.info = self.mw_card.info for key, value in self.info.items(): self[key] = value dict.__init__(self.info) self.check_info() #assign special value self.nb_event = self.info['mw_run']['2'] self.nb_card = self.number_of_P_run() self.check_condor() try: self.name = self.info['mw_run']['name'] except: self.name = self.take_run_name() self.P_listdir, self.MW_listdir = self.detect_SubProcess() self.nb_event_MW = {} for MW in self.MW_listdir: self.nb_event_MW[MW] = self.nb_event self.init_run_opt() self.def_actif_param() self.Pinupdate = [] self.Minpudate = [] self.startevent = 0 self.n_join = self.info['mw_run']['packet']
def __init__(self): suits = ['Hearts', 'Diamonds', 'Spades', 'Clubs'] ranks = [ 'Ace', '2', '3', '4', '5', '6', '7', '8', '9', '10', 'Jack', 'Queen', 'King' ] self.deck = [ Cards.Card(rank, suit) for rank in ranks for suit in suits ]
def remove_matches(self): count = 0 original_cards = self.cards[:] for card in original_cards: match = Cards.Card(3 - card.suit, card.rank) if match in self.cards: self.cards.remove(card) self.cards.remove(match) print((("Hand {0}: {1} matches {2}").format( self.name, card, match))) count += 1 return count
def create_deck(self): suits = ["Hearts", "Clubs", "Diamonds", "Spades"] values = [ "Ace", "Two", "Three", "Four", "Five", "Six", "Seven", "Eight", "Nine", "Ten", "Jack", "Queen", "King" ] deck = [] #create deck for suit in suits: for value in values: card = Cards.Card(suit, value) deck.append(card) return deck
def __init__(self, card_name): """ init all the param for the run """ self.mw_card = Cards.Card(card_name) self.info = self.mw_card.info for key, value in self.info.items(): self[key] = value dict.__init__(self.info) self.check_info() #assign special value self.nb_event = int(self.info['mw_run']['2']) self.nb_card = self.number_of_P_run() self.check_condor() self.name = self.take_run_name() self.P_listdir, self.MW_listdir = self.detect_SubProcess() self.init_run_opt() self.def_actif_param()
def create_cards(cardstr_arr): cards_out = [] faces = ['J', 'Q', 'K', 'A'] # suits = ['C', 'D', 'S', 'H'] fmaps = {'J': 11, 'Q': 12, 'K': 13, 'A': 14} for card in cardstr_arr.replace('\n', '').split(' '): try: r = list(card).pop(0) s = list(card).pop() if r in faces: r = fmaps[r] elif card: r = int(r) cards_out.append(Cards.Card(r, s)) except Exception: pass return cards_out
def read_card(name_card): """put all card information in a dictionary""" card = Cards.Card(name_card) return card.info
def __init__(self): for i in kind: for j in range(1, 13 + 1): self.deck.append(Cards.Card(i, j)) self.shuffle()
import Cards print("Press Enter to proceed through the demo.") input() print("It could be useful to follow along in the code.") print("Let's make a deck...") l = [] for i in range(52): l.append(Cards.Card(i)) deck = Cards.Deck(l) input() print("Lets look at this deck using all of the different display types!") input() print("Here's the first:") deck.reveal1() input() print("It only displays the first 8 cards for laziness reasons.") input() print("Here's the second:") deck.reveal2() input() print("This one should probably only be used for smaller decks...") input() print("aaaand the third:")
def __init__(self): for card_v in card_values: for suit in suit_list: card_created = C.Card(card_v, suit) self.cards_list.append(card_created)
def __init__(self): self.deck = [] for suit in suits: for rank in ranks: card = Cards.Card(suit, rank) self.deck.append(card)
# Cards.Card(3, 7), Cards.Card(2, 6)] # game.Stacks[2].cards = [Cards.Card(2, 9), Cards.Card(3, 4), Cards.Card(1, 3), Cards.Card(2, 7), Cards.Card(3, 9),\ # Cards.Card(2, 4), Cards.Card(0, 3)] # game.Stacks[3].cards = [Cards.Card(3, 6), Cards.Card(3, 5), Cards.Card(3, 11), Cards.Card(2, 5), Cards.Card(0, 7),\ # Cards.Card(0, 5), Cards.Card(0, 1)] # game.Stacks[4].cards = [Cards.Card(2, 2), Cards.Card(1, 8), Cards.Card(2, 11), Cards.Card(1, 13), Cards.Card(1, 2),\ # Cards.Card(3, 1)] # game.Stacks[5].cards = [Cards.Card(3, 12), Cards.Card(0, 9), Cards.Card(3, 13), Cards.Card(1, 7), Cards.Card(2, 13),\ # Cards.Card(3, 8)] # game.Stacks[6].cards = [Cards.Card(0, 11), Cards.Card(2, 10), Cards.Card(0, 10), Cards.Card(1, 4), Cards.Card(0, 6),\ # Cards.Card(0, 8)] # game.Stacks[7].cards = [Cards.Card(3, 10), Cards.Card(3, 3), Cards.Card(0, 12), Cards.Card(1, 1), Cards.Card(1, 5),\ # Cards.Card(2, 1)] game = Freecell.Game() #3983135 game.Stacks[0].cards = [Cards.Card(2, 2), Cards.Card(2, 1), Cards.Card(1, 5), Cards.Card(1, 13), Cards.Card(3, 9),\ Cards.Card(1, 9), Cards.Card(2, 4)] game.Stacks[1].cards = [Cards.Card(2, 13), Cards.Card(0, 4), Cards.Card(0, 6), Cards.Card(3, 5), Cards.Card(2, 9),\ Cards.Card(1, 3), Cards.Card(2, 12)] game.Stacks[2].cards = [Cards.Card(1, 1), Cards.Card(0, 1), Cards.Card(1, 4), Cards.Card(3, 12), Cards.Card(2, 7),\ Cards.Card(1, 11), Cards.Card(3, 1)] game.Stacks[3].cards = [Cards.Card(2, 5), Cards.Card(3, 7), Cards.Card(0, 10), Cards.Card(1, 7), Cards.Card(2, 6),\ Cards.Card(3, 4), Cards.Card(1, 12)] game.Stacks[4].cards = [Cards.Card(0, 3), Cards.Card(0, 8), Cards.Card(3, 6), Cards.Card(0, 12), Cards.Card(3, 8),\ Cards.Card(2, 11)] game.Stacks[5].cards = [Cards.Card(0, 11), Cards.Card(3, 3), Cards.Card(0, 7), Cards.Card(3, 11), Cards.Card(0, 2),\ Cards.Card(0, 13)] game.Stacks[6].cards = [Cards.Card(3, 10), Cards.Card(2, 3), Cards.Card(3, 13), Cards.Card(1, 6), Cards.Card(0, 9),\ Cards.Card(2, 10)] game.Stacks[7].cards = [Cards.Card(1, 10), Cards.Card(3, 2), Cards.Card(0, 5), Cards.Card(2, 8), Cards.Card(1, 8),\ Cards.Card(1, 2)]