Advertisement
Comm4nd0

21 Card Game 2.0

Oct 17th, 2015
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 4.87 KB | None | 0 0
  1. import random
  2.  
  3. cards = ['A_Spades','2_Spades','3_Spades','4_Spades','5_Spades','6_Spades','7_Spades','8_Spades','9_Spades','10_Spades','J_Spades','Q_Spades','K_Spades',
  4.           'A_Clubs','2_Clubs','3_Clubs','4_Clubs','5_Clubs','6_Clubs','7_Clubs','8_Clubs','9_Clubs','10_Clubs','J_Clubs','Q_Clubs','K_Clubs',
  5.           'A_Harts','2_Harts','3_Harts','4_Harts','5_Harts','6_Harts','7_Harts','8_Harts','9_Harts','10_Harts','J_Harts','Q_Harts','K_Harts',
  6.           'A_Diamonds','2_Diamonds','3_Diamonds','4_Diamonds','5_Diamonds','6_Diamonds','7_Diamonds','8_Diamonds','9_Diamonds','10_Diamonds','J_Diamonds','Q_Diamonds','K_Diamonds',]
  7.  
  8. def welcome():
  9.     print"Welccome to the game '21'\n"
  10.  
  11. def menu():
  12.     print"Make your selection."
  13.     print "[1] - Single Player"
  14.     print "[2] - Multi player"
  15.     print "[3] - EXIT"
  16.  
  17.     choice = raw_input(": ")
  18.  
  19.     if choice == "1":
  20.         multi = 0
  21.         user1Name = raw_input("What is player 1's username?\n")
  22.         user2Name = ""
  23.         deal(multi,user1Name,user2Name)
  24.     elif choice == "2":
  25.         multi = 0
  26.         multi += 1
  27.         user1Name = raw_input("What is player 1's username?\n")
  28.         user2Name = raw_input("What is player 2's username?\n")
  29.         deal(multi,user1Name,user2Name)
  30.  
  31. def deal(multi,user1Name,user2Name):
  32.     user1 = []
  33.     user2 = []
  34.     comp1 = []
  35.     comp2 = []
  36.     changeOpt = "y"
  37.     user1 = userDeal(changeOpt,user1Name)
  38.  
  39.     if multi == 1:
  40.         changeOpt = "y"
  41.         user2 = userDeal(changeOpt,user2Name)
  42.  
  43.     comp1Name = "CPU1"
  44.     comp2Name = "CPU2"
  45.     changeOpt = "n"
  46.     comp1 = userDeal(changeOpt,comp1Name)
  47.  
  48.     if multi == 1:
  49.         changeOpt = "n"
  50.         comp2 = userDeal(changeOpt,comp2Name)
  51.  
  52.     winner(multi,user1,user2,comp1,comp2,user1Name,user2Name,comp1Name,comp2Name)
  53.  
  54. def userDeal(changeOpt,name):
  55.     hand = []
  56.     card1 = 0
  57.     card2 = 0
  58.     cardCount = 52
  59.     card1 = random.randrange(0,cardCount)
  60.     del cards[card1]
  61.     cardCount -= 1
  62.     card2 = random.randrange(0,cardCount)
  63.     del cards[card2]
  64.     cardCount -= 1
  65.     hand.append(cards[card1])
  66.     hand.append(cards[card2])
  67.     print "\n" + name + ", your cards are: "
  68.     print hand
  69.     change = raw_input("Change card? y/N:")
  70.     if changeOpt == "y":
  71.         if change.lower() == "y":
  72.             hand = changeCard(hand,name)
  73.  
  74.  
  75.     return hand
  76.  
  77. def changeCard(hand,name):
  78.     print "\nWhich card would you like to change?"
  79.     print hand
  80.     print "Card (A)____Card (B)"
  81.     choice = raw_input("A or B: ")
  82.     if choice.lower() == "a":
  83.         card = 0
  84.         card = random.randrange(0,51)
  85.         del hand[0]
  86.         hand.append(cards[card])
  87.         print "\n" + name + ", your cards are: "
  88.         print hand
  89.     if choice.lower() == "b":
  90.         card = 0
  91.         card = random.randrange(0,51)
  92.         del hand[1]
  93.         hand.append(cards[card])
  94.         print "\n" + name + ", your cards are: "
  95.         print hand
  96.     return hand
  97.  
  98. def winner(multi,user1,user2,comp1,comp2,user1Name,user2Name,comp1Name,comp2Name):
  99.     user1 = cardVal(user1)
  100.     print"\n%s your score is: %s" % (user1Name ,user1)
  101.     if multi == 1:
  102.         user2 = cardVal(user2)
  103.         print"%s your score is: %s" % (user2Name ,user2)
  104.     comp1 = cardVal(comp1)
  105.     print "CPU1's score is %s" % (comp1)
  106.     if multi == 1:
  107.         comp2 = cardVal(comp2)
  108.         print "CPU2's score is %s" % (comp2)
  109.         print "\nWINNER"
  110.         winner = max(user1,user2,comp1,comp2)
  111.         if winner == user1:
  112.             print "The winner is %s with %s!" % (user1Name,winner)
  113.         if winner == comp1:
  114.             print "The winner is %s with %s!" % (comp1Name,winner)
  115.         if winner == user2:
  116.             print "The winner is %s with %s!" % (user2Name,winner)
  117.         if winner == comp2:
  118.             print "The winner is %s with %s!" % (comp2Name,winner)
  119.     #option to change card here!!
  120.     if multi <1:
  121.         print "\nWINNER"
  122.         winner = max(user1,comp1)
  123.         if winner == user1:
  124.             print "The winner is %s with %s!" % (user1Name,winner)
  125.         if winner == comp1:
  126.             print "The winner is %s with %s!" % (comp1Name,winner)
  127.  
  128. def cardVal(user):
  129.     cardVal = 0
  130.     cardsTotal = 0
  131.     cardNo = 0
  132.     while cardNo < 2:
  133.         card = user[cardNo][0]
  134.         if card == "A":
  135.             cardVal = 11
  136.         elif card == "2":
  137.             cardVal = 2
  138.         elif card == "3":
  139.             cardVal = 3
  140.         elif card == "4":
  141.             cardVal = 4
  142.         elif card == "5":
  143.             cardVal = 5
  144.         elif card == "6":
  145.             cardVal = 6
  146.         elif card == "7":
  147.             cardVal = 7
  148.         elif card == "8":
  149.             cardVal = 8
  150.         elif card == "9":
  151.             cardVal = 9
  152.         else:
  153.             cardVal = 10
  154.  
  155.         cardNo += 1
  156.         cardsTotal = cardsTotal + cardVal
  157.  
  158.     return cardsTotal
  159.  
  160. welcome()
  161. menu()
  162.  
  163. print"END!"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement