【发布时间】:2012-08-08 08:14:55
【问题描述】:
我是 python 的初学者,我正在尝试制作一个圆形游戏。到目前为止,当您单击时,它会在您的鼠标上绘制一个具有随机颜色和半径的圆圈。
接下来,我希望圆圈以随机方向飞出屏幕。我该怎么做呢?到目前为止,这是我代码的主要部分:
check1 = None
check2 = None
while True:
for event in pygame.event.get():
if event.type == QUIT:
pygame.quit()
sys.exit
if event.type == MOUSEBUTTONDOWN:
last_mouse_pos = pygame.mouse.get_pos()
if last_mouse_pos:
global check
color1 = random.randint(0,255)
color2 = random.randint(0,255)
color3 = random.randint(0,255)
color = (color1,color2,color3)
radius = random.randint (5,40)
posx,posy = last_mouse_pos
if posx != check1 and posy != check2:
global check1, check2
screen.lock()
pygame.draw.circle(screen, color, (posx,posy), radius)
screen.unlock()
check1,check2 = posx,posy
pygame.display.update()
再次,我希望圆圈以随机方向飞出屏幕。 我做了一些尝试,但还没有成功。 另外,感谢 jdi 帮助我
【问题讨论】:
-
您必须编写一个函数,每帧将圆的位置改变一点点。
-
我有一个使用 HTML5 和 JavaScript 开发的演示,它可以在随机方向上为许多球设置动画。球在改变方向时也会随机改变大小和颜色。您可以在 codentronix.com/2012/01/24/html5-canvas-crazy-balls 看到演示。我可以帮助你用 pygame 做同样的事情。如果你想要的话,请检查并告诉我。
标签: python animation random pygame game-loop