55 lines
1.4 KiB
Python
55 lines
1.4 KiB
Python
from turtle import Turtle, Screen
|
|
import random
|
|
|
|
screen = Screen()
|
|
|
|
screensize = screen.screensize()
|
|
current_top_position = -screen.window_width() / 2 + 20
|
|
ending_point = -current_top_position
|
|
|
|
colors = ["red", "green", "blue", "purple", "orange", "yellow", "black", "pink"]
|
|
turtles = []
|
|
winner = None
|
|
|
|
def init_turtles(turtles):
|
|
for i in range(8):
|
|
t = Turtle()
|
|
t.pu()
|
|
t.color(colors[i])
|
|
t.shape("turtle")
|
|
t.teleport(x=current_top_position, y = i * 50 - 200)
|
|
turtles.append(t)
|
|
return turtles
|
|
|
|
def race(turtles, current_top_position):
|
|
for i in range(8):
|
|
speed = random.randint(1,20)
|
|
turtles[i].forward(speed)
|
|
|
|
if turtles[i].xcor() > current_top_position:
|
|
current_top_position = turtles[i].xcor()
|
|
if turtles[i].xcor() >= ending_point:
|
|
print("finished")
|
|
return current_top_position, i
|
|
|
|
return current_top_position, None
|
|
|
|
|
|
user_bet = screen.textinput("Place your bet", "Which turtle color will you bet on?")
|
|
|
|
init_turtles(turtles)
|
|
while winner == None:
|
|
current_top_position, winner = race(turtles, current_top_position)
|
|
|
|
|
|
|
|
|
|
winning_turtle = turtles[winner].color()[0]
|
|
print(f"Race ended ! Winner is {winning_turtle} !")
|
|
|
|
if winning_turtle == user_bet:
|
|
print("You won your bet!")
|
|
else:
|
|
print("You lost your bet!")
|
|
|
|
screen.exitonclick() |