% FILE: player.pl % LINE: Defines all components related to a player: name, melds, hand, score, % DATE: February 20, 2021 % loading prolog files :- consult("/home/matt/Documents/CSC466/Project/player.pl"). % discard pile representation discard_pile([]). % Deck representation deck([card(ace, hearts, 1),card(two, hearts, 2),card(three, hearts, 3),card(four, hearts, 4),card(five, hearts, 5),card(six, hearts, 6), card(seven, hearts, 7),card(eight, hearts, 8),card(nine, hearts, 9),card(ten, hearts, 10),card(jack, hearts, 11),card(queen, hearts, 12), card(king, hearts, 13),card(ace, clubs, 1),card(two, clubs, 2),card(three, clubs, 3),card(four, clubs, 4),card(five, clubs, 5), card(six, clubs, 6),card(seven, clubs, 7),card(eight, clubs, 8),card(nine, clubs, 9),card(ten, clubs, 10),card(jack, clubs, 11), card(queen, clubs, 12),card(king, clubs, 13),card(ace, hearts, 1),card(two, diamonds, 2),card(three, diamonds, 3),card(four, diamonds, 4), card(five, diamonds, 5),card(six, diamonds, 6),card(seven, diamonds, 7),card(eight, diamonds, 8),card(nine, diamonds, 9),card(ten, diamonds, 10), card(jack, diamonds, 11),card(queen, diamonds, 12),card(king, diamonds, 13),card(ace, spades, 1),card(two, spades, 2),card(three, spades, 3), card(four, spades, 4),card(five, spades, 5),card(six, spades, 6),card(seven, spades, 7),card(eight, spades, 8),card(nine, spades, 9),card(ten, spades, 10), card(jack, spades, 11),card(queen, spades, 12),card(king, spades, 13)]). % shuffles the deck shuffle(Deck, NewDeck) :- random_permutation(Deck, NewDeck). % deals a card onto the discard pile deal_discard([First|Rest], Rest, [First]). % draws a card off the top of the deck and binds it to a variable draw([First|_], First).