day 19 - turtles again T_T
This commit is contained in:
55
019/main.py
Normal file
55
019/main.py
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
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()
|
||||||
33
019/sandbox.py
Normal file
33
019/sandbox.py
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
from turtle import Turtle, Screen
|
||||||
|
|
||||||
|
turtle = Turtle()
|
||||||
|
screen = Screen()
|
||||||
|
|
||||||
|
def move_forward():
|
||||||
|
turtle.forward(10)
|
||||||
|
|
||||||
|
def move_backward():
|
||||||
|
turtle.backward(10)
|
||||||
|
|
||||||
|
def rotate_right():
|
||||||
|
heading = turtle.heading() - 10
|
||||||
|
turtle.setheading(heading)
|
||||||
|
|
||||||
|
def rotate_left():
|
||||||
|
heading = turtle.heading() + 10
|
||||||
|
turtle.setheading(heading)
|
||||||
|
|
||||||
|
def clear():
|
||||||
|
turtle.clear()
|
||||||
|
turtle.pu()
|
||||||
|
turtle.home()
|
||||||
|
turtle.pd()
|
||||||
|
|
||||||
|
|
||||||
|
screen.listen()
|
||||||
|
screen.onkey(move_forward, "Up")
|
||||||
|
screen.onkey(move_backward, "Down")
|
||||||
|
screen.onkey(rotate_left, "Left")
|
||||||
|
screen.onkey(rotate_right, "Right")
|
||||||
|
screen.onkey(clear, "c")
|
||||||
|
screen.exitonclick()
|
||||||
Reference in New Issue
Block a user