【发布时间】:2022-07-22 22:08:49
【问题描述】:
while game_is_on:
time.sleep(0.1)
screen.update()
ball.move()
# Detect collision with wall
if ball.ycor() > 280 or ball.ycor() < -280:
ball.bounce_y()
# Detect collision with r_paddle
if ball.xcor() > 320 and ball.distance(r_paddle) < 50 or ball.xcor() < -320 and ball.distance(l_paddle) < 50:
ball.bounce_x()
这里是桨和球之间碰撞检测的代码。我进行了一些测试,出于某种原因,尽管移动到投影屏幕的右侧,但桨的坐标实际上并没有改变。屏幕宽 800 像素,高 600 像素。知道为什么坐标在初始化后保留为 (0,0),而不是 (350,0),并且随着桨的移动而不断变化?
球拍仅沿 y 轴移动,在 x 轴上的像素 350 处是静止的。球沿 x 和 y 轴以 10 为增量移动,而 line ball.bounce_x() 或 ball.bounce_y () 反转行进方向。
【问题讨论】: