def main(): # create window for uno root = tk.Tk() root.title("Uno++") # build a list of players for the game players = [ HumanPlayer("Ravi"), HumanPlayer(generate_name()), ComputerPlayer(generate_name()) ] # build a pickup pile pickup_pile = Deck(build_deck(FULL_DECK)) pickup_pile.shuffle() # deal players cards from the pickup pile for player in players: cards = pickup_pile.pick(7) player.get_deck().add_cards(cards) # create and play the game game = UnoGame(pickup_pile, players) app = UnoApp(root, game) app.play() # update window dimensions root.update() root.minsize(root.winfo_width(), root.winfo_height()) root.mainloop()
def main(): # create window for coders root = tk.Tk() root.title("Sleeping Coders") # build a list of players for the game players = [Player(generate_name()), Player(generate_name())] # build a pickup pile pickup_pile = Deck(build_deck(FULL_DECK)) for i in range(5): pickup_pile.copy(pickup_pile) pickup_pile.shuffle() # deal players cards from the pickup pile for player in players: cards = pickup_pile.pick(5) player.get_hand().add_cards(cards) # build a list of sleeping coder cards coders = CODERS[:] # create and play the game game = CodersGame(pickup_pile, coders, players) app = CoderApp(root, game) app.play() # update window dimensions root.update() root.minsize(root.winfo_width(), root.winfo_height()) root.mainloop()
def test_deck(): # Setup card = Card(12, "red") special_card = Pickup2Card(0, "red") blue_card = ReverseCard(0, "blue") cards = [card, special_card, blue_card] deck = Deck(cards) # Testing print("Get Cards:", deck.get_cards( )) #== [Card(12, 'red'), Pickup2Card(0, 'red'), ReverseCard(0, 'blue')]) print("Amount:", deck.get_amount() == 3) print("Top:", deck.top()) #ReverseCard(0, blue) print() new_card = SkipCard(0, "green") deck.add_card(new_card) deck.add_cards([card, special_card, blue_card]) print("new amount:", deck.get_amount() == 7) print( "New Deck:", deck.get_cards() ) # [Card(12, red), Pickup2Card(0, red), ReverseCard(0, blue), SkipCard(0, green), Card(12, red), Pickup2Card(0, red),ReverseCard(0, blue)]) print("Pick:", deck.pick()) # [ReverseCard(0, blue)] print("Pick 2:", deck.pick(amount=2)) # [Pickup2Card(0, red), Card(12, red)] deck.shuffle() print( "New Deck", deck.get_cards() ) #[SkipCard(0, green), Card(12, red), Pickup2Card(0, red),ReverseCard(0, blue)]
def new_game(self): """Start a new game""" # clone the old players players = [] for player in self.game.players: players.append(player.__class__(player.get_name())) # generate a new deck pickup_pile = Deck(build_deck(FULL_DECK)) pickup_pile.shuffle() # make players pickup cards for player in players: cards = pickup_pile.pick(7) player.get_deck().add_cards(cards) self.game = UnoGame(pickup_pile, players) self.render_decks() self.update()
print(deck.get_amount()) print('-' * 5) print('deck.top()') print(deck.top()) print('-' * 5) new_card = SkipCard(0, "green") deck.add_card(new_card) from os import system system('pause') deck.add_cards([card, special_card, blue_card]) print(deck.get_cards()) print(deck.get_amount()) print(deck.pick()) print(deck.get_amount()) print(deck.pick(amount=2)) deck.shuffle() print(deck.get_cards()) print("*" * 40) #Player player = Player("Peter O'Shea") print(player.get_name()) print(player.get_deck()) print(player.get_deck().get_cards()) # player.is_playable() print(player.has_won()) player.get_deck().add_card(Card(32, "red")) print(player.has_won()) print("-" * 5)