python-小游戏-飞点
代码game-flappy.py
from random import *
from turtle import *
from freegames import vector
bird = vector(0, 0)
balls = []
time_elapsed = 0 # Initialize the time elapsed
def tap(x, y):
"""Move bird up in response to screen tap."""
up = vector(0, 30)
bird.move(up)
def inside(point):
"""Return True if point on screen."""
return -200 < point.x < 200 and -200 < point.y < 200
def draw(alive):
"""Draw screen objects."""
clear()
goto(bird.x, bird.y)
if alive:
dot(10, 'green')
else:
dot(10, 'red')
for ball in balls:
goto(ball.x, ball.y)
dot(20, 'black')
# Display the elapsed time
goto(0, 180)
color('black')
write(f'Time: {time_elapsed}', align='center', font=('Arial', 16, 'normal'))
update()
def move():
"""Update object positions."""
global time_elapsed
bird.y -= 5
for ball in balls:
ball.x -= 3
if randrange(10) == 0:
y = randrange(-199, 199)
ball = vector(199, y)
balls.append(ball)
while len(balls) > 0 and not inside(balls[0]):
balls.pop(0)
if not inside(bird):
draw(False)
return
for ball in balls:
if abs(ball - bird) < 15:
draw(False)
return
time_elapsed += 1 # Increment the time elapsed
draw(True)
ontimer(move, 50)
setup(420, 420, 370, 0)
hideturtle()
up()
tracer(False)
onscreenclick(tap)
move()
done()
运行代码