Upload code
This commit is contained in:
187
RandomTurtle/TicTacToe.py
Executable file
187
RandomTurtle/TicTacToe.py
Executable file
@@ -0,0 +1,187 @@
|
||||
#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!
|
||||
|
||||
""")
|
||||
Reference in New Issue
Block a user