aboutsummaryrefslogtreecommitdiffstats
path: root/Jack/board2.py
diff options
context:
space:
mode:
authorRossTheRoss <mstrapp@protonmail.com>2021-04-13 17:22:52 -0500
committerRossTheRoss <mstrapp@protonmail.com>2021-04-13 17:22:52 -0500
commit77a99164bb53b207ba8efec1a37238379f595f44 (patch)
tree47f95873e3f005749853efb5d9e2c6f986c077a8 /Jack/board2.py
parentRearrange things more I guess (diff)
downloadcsci4511w-77a99164bb53b207ba8efec1a37238379f595f44.tar
csci4511w-77a99164bb53b207ba8efec1a37238379f595f44.tar.gz
csci4511w-77a99164bb53b207ba8efec1a37238379f595f44.tar.bz2
csci4511w-77a99164bb53b207ba8efec1a37238379f595f44.tar.lz
csci4511w-77a99164bb53b207ba8efec1a37238379f595f44.tar.xz
csci4511w-77a99164bb53b207ba8efec1a37238379f595f44.tar.zst
csci4511w-77a99164bb53b207ba8efec1a37238379f595f44.zip
Rearrange and add more
Diffstat (limited to 'Jack/board2.py')
-rw-r--r--Jack/board2.py73
1 files changed, 73 insertions, 0 deletions
diff --git a/Jack/board2.py b/Jack/board2.py
new file mode 100644
index 0000000..3aecaa5
--- /dev/null
+++ b/Jack/board2.py
@@ -0,0 +1,73 @@
+from random import *
+
+class Board: #A class for managing different situations and states happening in the game and on the board
+ def __init__(self, board):
+ self.board=board
+ def get_board(self):
+ return self.board
+ def print_board(self):
+ for i in self.board:
+ for j in i:
+ print(j,end="")
+ print()
+ def play_move(self,v1,v2): #v1 and v2 correlate to the first and second vertex that you would draw to on the board vertex 1 is always smaller than vertex 2
+ if((v2-v1)==1):
+ if(v1<5):
+ c=0
+ elif(v1<9):
+ c=2
+ v1=v1-4
+ v2=v2-4
+ elif(v1<13):
+ c=4
+ v1=v1-8
+ v2=v2-8
+ else:
+ c=6
+ v1=v1-12
+ v2=v2-12
+
+ x1=v1+3*(v1-1)
+ x2=v2+3*(v2-1)
+ for i in range (x1,x2-1):
+ self.board[c][i]="-"
+ else:
+ if(v2<9):
+ c=1
+ elif(v2<13):
+ c=3
+ else:
+ c=5
+ if(v2%4==1):
+ self.board[c][0]="|"
+ elif(v2%4==2):
+ self.board[c][4]="|"
+ elif(v2%4==3):
+ self.board[c][8]="|"
+ else:
+ self.board[c][12]="|"
+ if(self.check_fill()):
+ return 1
+ else:
+ return 0
+ def check_fill(self):
+ x=0
+ while(x<=4):
+ y=0
+ while(y<=8):
+ if(self.board[x][y+2]=='-' and self.board[x+1][y]=='|' and self.board[x+1][y+4]=='|' and self.board[x+2][y+2]=='-'):
+ if(self.board[x+1][y+2]!='X'):
+ self.board[x+1][y+2]='X'
+ return True
+
+ y=y+4
+ x=x+2
+
+ return False
+ def is_legal(self,v1,v2): # we might not need this
+ if(v1<v2 and (v2-v1==4 or ((v2%4 != 1) and (v2-v1==1))):
+ return True
+ else:
+ return False
+
+