import random
from tkinter import *
phrase_list = []
phrase = ""
window = Tk()
window.title("stuff")
canvas = Canvas(window, width = 1000, height = 800)
canvas.pack()
phrase = "jojojojojo"
test_string = ""
legal_char = "abcdefghijklmnopqrstuvwxyz"
part_number = 0
game_over = False
def dead():
#resets the game when it's over
global game_over, part_number
game_over = True
for x in range(len(phrase)):
canvas.create_text(500 - 5*len(phrase)+(x*10), 647, text = phrase[x], tag = "text", fill = "red")
print("oh, too bad, you lose try again!!!")
part_number = -1
def drawbodypart():
#draws the person
global part_number
if(part_number == 0):
canvas.create_oval(650, 200, 750, 300, tag = "person")
if(part_number == 1):
canvas.create_oval(675, 220, 690, 235, tag = "person")
if(part_number == 2):
canvas.create_oval(710, 220, 725, 235, tag = "person")
if(part_number == 3):
canvas.create_line(675, 265, 725, 265, tag = "person")
if(part_number == 4):
canvas.create_line(700, 300, 700, 500, tag = "person")
if(part_number == 5):
canvas.create_line(650, 400, 750, 400, tag = "person")
if(part_number == 6):
canvas.create_line(700, 500, 650, 570, tag = "person")
if(part_number == 7):
canvas.create_line(700, 500, 750, 570, tag = "person")
dead()
part_number += 1
def test_letter(character):
#checks the letter inputted
global legal_char, game_over, test_string
y = 0
if game_over:
initialize()
else:
if(character.char in legal_char):
for x in range(len(phrase)):
if(character.char == phrase[x]):
canvas.create_text(500 - 5*len(phrase)+(x*10), 647, text = character.char, tag = "text")
test_string += character.char
y = 1
legal_char = legal_char.replace(character.char, "")
canvas.create_text((ord(character.char)-97) * 10 + 300, 750, text = "X", fill = "red", tag = "text")
if(y == 0):
drawbodypart()
else:
y = 0
if(len(test_string) == len(phrase.replace(" ",""))):
print("yey, u win. press a letter to keep playing")
game_over = True
def initialize():
#initializes the game
canvas.delete("person", "text")
global legal_char, game_over, test_string, phrase, part_number
part_number = 0
game_over = False
legal_char = "abcdefghijklmnopqrstuvwxyz"
phrase = input("Hangman phrase (hide this from the player): ").lower()
if(phrase.lower() == "random"):
phrase = phrase_list[random.randrange(len(phrase_list))].lower()
else:
for x in range(len(phrase.replace(" ",""))):
if(phrase.replace(" ","")[x] not in legal_char):
print("That phrase has an illegal character in it!!! (press a letter to try again)")
game_over = True
canvas.create_line(400, 600, 600, 600)
canvas.create_line(500, 600, 500, 100, 700, 100, 700, 200)
canvas.bind("<Key>", test_letter)
canvas.focus_set()
test_string = ""
for x in range(len(phrase)):
if(" " != phrase[x]):
canvas.create_text(500 - 5*len(phrase)+(x*10), 650,text = "_", tag = "text")
else:
canvas.create_text(500 - 5*len(phrase)+(x*10), 650,text = " ", tag = "text")
for x in range(26):
canvas.create_text(x * 10 + 300, 750, text = chr(x+65), tag = "text")
def main():
#just main
with open("/Users/burts/Desktop/Kappa/CopyPathnameHere.txt", 'r') as file:
for line in file:
phrase_list.append(line[:-1])
initialize()
mainloop()
main()