# TICTACTOE V 1.0 import time # Variables5 global bd bd = [[0, 0, 0], [0, 0, 0], [0, 0, 0]] global filled_fields filled_fields = 0 global player global playershow playershow = 1 player = 1 global play play = 1 # FUNCTIONS # -------------------- def inputs(): global playershow global bd print("It's the turn of player", playershow) m = input("Where do you want to put your mark? ") if len(m) > 1: sp = m[0] zl = m[1] z = int(zl) - 1 s = ord(sp) - 65 if bd[z][s] > 0: print( """ THAT FIELD IS ALREADY TAKEN, CHOOSE DIFFERENT ONE! """ ) else: inputremap(z, s) else: print( """ PLEASE TYPE IN A LEGIT COORDINATE: FORM: Coordinate Y Coordinate X --> Ex. A1/A2 """ ) def inputremap(z, s): global player global playershow global bd bd[z][s] = player if playershow == 1: playershow = 2 player = 7 else: playershow = 1 player = 1 global filled_fields filled_fields += 1 full(filled_fields) def winning(): global play global bd x = 0 y = 0 global go go = 1 count = 0 print( """ checking for winner """ ) while go == 1: if sum(bd[x]) == 3: go = 0 play = 0 print("The Winner is player 1") elif sum(bd[x]) == 21: go = 0 play = 0 print("The Winner is player 2") elif bd[0][y] + bd[1][y] + bd[2][y] == 3: go = 0 play = 0 print("The Winner is player 1") elif bd[0][y] + bd[1][y] + bd[2][y] == 21: go = 0 play = 0 print("The Winner is player 2") else: x += 1 y += 1 if count >= 2: go = 0 print( """no winner yet """ ) else: count += 1 def full(filled_field): global bd if filled_field == 9: print("draw") global play play = 0 else: winning() # BOARD DRAWING def board_draw(): print("\n") xx = 0 yy = 0 global bd while yy < 3: while xx < 3: if bd[xx][yy] == 0: print(" ", end=" ") elif bd[xx][yy] == 1: print(" X ", end=" ") elif bd[xx][yy] == 7: print(" O ", end=" ") else: print(""" CRITICAL ERROR""") if xx < 2: print("|", end=" ") else: print(" ", end=" ") xx += 1 print(" ") xx = 0 if yy < 2: print("----------------------") else: print(" ") yy += 1 # MAIN CYCLE print(50 * ("\n")) print( """ ------------------------------------------------------ TIC TAC TOE =========== V 1.0 V 2021.06.18 by Janis Hutz """ ) time.sleep(2) print("starting...") time.sleep(3) print("\n\n\n") goahead = 1 print( """ | | ---------------- | | ---------------- | | """ ) while goahead == 1: while play == 1: inputs() board_draw() time.sleep(2) print( """ REPLAY? """ ) i = input("""Choose: (y/n)""") if i == "y": goahead = 1 play = 1 else: goahead = 0 print( """ GOOD BYE! """ )