示例#1
0
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)]
示例#2
0
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()
示例#3
0
文件: gui.py 项目: realRoc/CSSE7030
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()
示例#4
0
    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()
示例#5
0
print(deck.get_cards())
print('-' * 5)
print('deck.get_amount()')
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())