Advertisement
Guest User

Untitled

a guest
Jun 29th, 2017
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 8.45 KB | None | 0 0
  1. #imports random library
  2. import random
  3. messages=[]
  4. playerPositions=[]
  5. player1PositionsValue=[]
  6. player2PositionsValue=[]
  7. creation=False
  8. win=False
  9. positions=[]
  10. for k in range(9):
  11.     positions.append(str(k+1).zfill(2))
  12. for j in range(40):
  13.     positions.append(j+10)
  14. #this function will roll 2 dice and add them together
  15. def diceRoll(messages):
  16.     dice1=random.randint(1,6)
  17.     dice2=random.randint(1,6)
  18.     if dice1 == dice2:
  19.         totalDice=((dice1+dice2)-(2*(dice1+dice2)))
  20.     else:
  21.         totalDice=dice1+dice2
  22.     print(messages[0],dice1,messages[1],dice2,messages[13],totalDice)
  23.     return totalDice
  24.  
  25. #this function reads in the messages from an external file called messages.txt
  26. def messagesReading():
  27.     global messages
  28.     file=open("messages.txt","r")
  29.     for line in file:
  30.         messages.append(line.strip("\n"))
  31.     file.close()
  32.     return messages
  33.  
  34. #this function creates and displays the grid system
  35. def gridStorage(messages,playerPositions,player1PositionsValue,player2PositionsValue,positions):
  36.     global creation
  37.     if creation == False:
  38.         for k in range(9):
  39.             playerPositions.append("    ")
  40.         for j in range(40):
  41.             playerPositions.append("    ")
  42.         for i in range(49):
  43.             player1PositionsValue.append("")
  44.             player2PositionsValue.append("")
  45.         player1PositionsValue[0]=1
  46.         player2PositionsValue[0]=1
  47.         creation=True
  48.         playerPositions[0]=" % &"
  49.         print(positions[42],playerPositions[42],positions[43],playerPositions[43],positions[44],playerPositions[44],positions[45],playerPositions[45],positions[46],playerPositions[46],positions[47],playerPositions[47],positions[48],playerPositions[48])
  50.         print(positions[35],playerPositions[35],positions[36],playerPositions[36],positions[37],playerPositions[37],positions[38],playerPositions[38],positions[39],playerPositions[39],positions[40],playerPositions[40],positions[41],playerPositions[41])
  51.         print(positions[28],playerPositions[28],positions[29],playerPositions[29],positions[30],playerPositions[30],positions[31],playerPositions[31],positions[32],playerPositions[32],positions[33],playerPositions[33],positions[34],playerPositions[34])
  52.         print(positions[21],playerPositions[21],positions[22],playerPositions[22],positions[23],playerPositions[23],positions[24],playerPositions[24],positions[25],playerPositions[25],positions[26],playerPositions[26],positions[27],playerPositions[27])
  53.         print(positions[14],playerPositions[14],positions[15],playerPositions[15],positions[16],playerPositions[16],positions[17],playerPositions[17],positions[18],playerPositions[18],positions[19],playerPositions[19],positions[20],playerPositions[20])
  54.         print(positions[7],playerPositions[7],positions[8],playerPositions[8],positions[9],playerPositions[9],positions[10],playerPositions[10],positions[11],playerPositions[11],positions[12],playerPositions[12],positions[13],playerPositions[13])
  55.         print(positions[0],playerPositions[0],positions[1],playerPositions[1],positions[2],playerPositions[2],positions[3],playerPositions[3],positions[4],playerPositions[4],positions[5],playerPositions[5],positions[6],playerPositions[6])
  56.     else:
  57.         print(positions[42],playerPositions[42],positions[43],playerPositions[43],positions[44],playerPositions[44],positions[45],playerPositions[45],positions[46],playerPositions[46],positions[47],playerPositions[47],positions[48],playerPositions[48])
  58.         print(positions[35],playerPositions[35],positions[36],playerPositions[36],positions[37],playerPositions[37],positions[38],playerPositions[38],positions[39],playerPositions[39],positions[40],playerPositions[40],positions[41],playerPositions[41])
  59.         print(positions[28],playerPositions[28],positions[29],playerPositions[29],positions[30],playerPositions[30],positions[31],playerPositions[31],positions[32],playerPositions[32],positions[33],playerPositions[33],positions[34],playerPositions[34])
  60.         print(positions[21],playerPositions[21],positions[22],playerPositions[22],positions[23],playerPositions[23],positions[24],playerPositions[24],positions[25],playerPositions[25],positions[26],playerPositions[26],positions[27],playerPositions[27])
  61.         print(positions[14],playerPositions[14],positions[15],playerPositions[15],positions[16],playerPositions[16],positions[17],playerPositions[17],positions[18],playerPositions[18],positions[19],playerPositions[19],positions[20],playerPositions[20])
  62.         print(positions[7],playerPositions[7],positions[8],playerPositions[8],positions[9],playerPositions[9],positions[10],playerPositions[10],positions[11],playerPositions[11],positions[12],playerPositions[12],positions[13],playerPositions[13])
  63.         print(positions[0],playerPositions[0],positions[1],playerPositions[1],positions[2],playerPositions[2],positions[3],playerPositions[3],positions[4],playerPositions[4],positions[5],playerPositions[5],positions[6],playerPositions[6])
  64.     return playerPositions
  65.  
  66. #this function updates player 1's position and sends it to the grid to be displayed graphically
  67. def moveP1(messages,playerPositions,player1PositionsValue,player2PositionsValue,positions):
  68.     global creation
  69.     temp12=input(messages[11])
  70.     totalDice=diceRoll(messages)
  71.     p1Position=player1PositionsValue.index(1)
  72.     p2Position=player2PositionsValue.index(1)
  73.     if p1Position+totalDice > 49:
  74.         print(messages[14])
  75.         win=True
  76.         print(messages[16])
  77.         ans=input(str("").lower())
  78.         if ans == "yes" or ans == "y" or ans == "1":
  79.             creation=False
  80.             playerPositions=[]
  81.             alternatingTurn(messages,playerPositions,player1PositionsValue,player2PositionsValue,positions)
  82.         else:
  83.             print(messages[17])
  84.     else:
  85.         player1PositionsValue[p1Position]=""
  86.         player1PositionsValue[p1Position+totalDice+1]=1
  87.         if p1Position == p2Position:
  88.             playerPositions[p1Position]="   &"
  89.             playerPositions[p1Position+totalDice+1]=" %  "
  90.         else:
  91.             playerPositions[p1Position]="    "
  92.             playerPositions[p1Position+totalDice+1]=" %  "
  93.         gridStorage(messages,playerPositions,player1PositionsValue,player2PositionsValue,positions)
  94.    
  95. #this function updates player 2's position and sends it to the grid to be displayed graphically
  96. def moveP2(messages,playerPositions,player1PositionsValue,player2PositionsValue,positions):
  97.     global creation
  98.     temp11=input(messages[12])
  99.     totalDice=diceRoll(messages)
  100.     p1Position=player1PositionsValue.index(1)
  101.     p2Position=player2PositionsValue.index(1)
  102.     if p2Position+totalDice > 49:
  103.         print(messages[15])
  104.         win=True
  105.         print(messages[16])
  106.         ans=input(str("").lower())
  107.         if ans == "yes" or ans == "y" or ans == "1":
  108.             creation=False
  109.             playerPositions=[]
  110.             alternatingTurn(messages,playerPositions,player1PositionsValue,player2PositionsValue,positions)
  111.         else:
  112.             print(messages[17])
  113.     else:
  114.         player2PositionsValue[p2Position]=""
  115.         player2PositionsValue[p2Position+totalDice+1]=1
  116.         if p1Position == p2Position:
  117.             playerPositions[p2Position]=" % &"
  118.             playerPositions[p2Position+totalDice+1]="   &"
  119.         else:
  120.             playerPositions[p2Position]="    "
  121.             playerPositions[p2Position+totalDice+1]="   &"
  122.         gridStorage(messages,playerPositions,player1PositionsValue,player2PositionsValue,positions)
  123.  
  124. #this function welcomes the user to the program by printing messages in order
  125. def welcome(messages):
  126.     print(messages[2])
  127.     print(messages[3])
  128.     print(messages[4])
  129.     print(messages[5])
  130.     temp1=input()
  131.     print(messages[6])
  132.     temp1=input()
  133.     print(messages[7])
  134.     print(messages[8])
  135.     print(messages[9])
  136.     print(messages[10])
  137.  
  138. #this function runs through player 1 and 2's turns alternately
  139. def alternatingTurn(messages,playerPositions,player1PositionsValue,player2PositionsValue,positions):
  140.     global win
  141.     messages=messagesReading()
  142.     welcome(messages)
  143.     playerPositions=gridStorage(messages,playerPositions,player1PositionsValue,player2PositionsValue,positions)
  144.     while win == False:
  145.         moveP1(messages,playerPositions,player1PositionsValue,player2PositionsValue,positions)
  146.         moveP2(messages,playerPositions,player1PositionsValue,player2PositionsValue,positions)
  147.    
  148. #starts the program
  149. alternatingTurn(messages,playerPositions,player1PositionsValue,player2PositionsValue,positions)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement