Python 如何在Pygame中使对象移动到屏幕的末尾?

Python 如何在Pygame中使对象移动到屏幕的末尾?,python,pygame,pong,Python,Pygame,Pong,总的来说,我对Python和编程相当陌生。我正在Pygame上制作一个乒乓球游戏,但在乒乓球(条形)离开屏幕时遇到了问题。代码如下: if Move_Down: pong1_posY += 10 if Move_Up: pong1_posY -= 10 if Move_Down2: pong2_posY += 10 if Move_Up2: pong2_posY -= 10 if pong1

总的来说,我对Python和编程相当陌生。我正在Pygame上制作一个乒乓球游戏,但在乒乓球(条形)离开屏幕时遇到了问题。代码如下:

    if Move_Down:
        pong1_posY += 10
    if Move_Up:
        pong1_posY -= 10
    if Move_Down2:
        pong2_posY += 10
    if Move_Up2:
        pong2_posY -= 10

    if pong1_posY + pong_size[1] >= ScreenH:
        pong1_posY -= 10
    elif pong1_posY <= 0:
        pong1_posY += 10
    if pong2_posY + pong_size[1] >= ScreenH:
        pong2_posY -= 10
    elif pong2_posY <= 0:
        pong2_posY += 10
如果向下移动:
pong1_posY+=10
如果向上移动(u):
pong1_posY-=10
如果将_向下移动2:
pong2_posY+=10
如果将_向上移动2:
pong2_posY-=10
如果pong1\u posY+pong\u大小[1]>=屏幕H:
pong1_posY-=10
elif pong1_posY=屏幕H:
pong2_posY-=10

elif pong2_posY我对一款太空入侵者类型的游戏也有类似的问题。看起来你跳过了屏幕边缘的像素,因为你一次改变了10个像素的挡板位置。尝试:

if pong1_posY + pong_size[1] >= ScreenH:
   pong1_posY = ScreenH - pong_size[1]
elif pong1_posY <= 0:
   pong1_posY = 0
if pong2_posY + pong_size[1] >= ScreenH:
   pong2_posY = ScreenH - pong_size[1]
elif pong2_posY <= 0:
   pong2_posY = 0
如果pong1\u posY+pong\u size[1]>=ScreenH:
pong1_posY=屏幕H-pong_大小[1]
elif pong1_posY=屏幕H:
pong2_posY=屏幕H-pong_大小[1]

elif pong2_posY我对一款太空入侵者类型的游戏也有类似的问题。看起来你跳过了屏幕边缘的像素,因为你一次改变了10个像素的挡板位置。尝试:

if pong1_posY + pong_size[1] >= ScreenH:
   pong1_posY = ScreenH - pong_size[1]
elif pong1_posY <= 0:
   pong1_posY = 0
if pong2_posY + pong_size[1] >= ScreenH:
   pong2_posY = ScreenH - pong_size[1]
elif pong2_posY <= 0:
   pong2_posY = 0
如果pong1\u posY+pong\u size[1]>=ScreenH:
pong1_posY=屏幕H-pong_大小[1]
elif pong1_posY=屏幕H:
pong2_posY=屏幕H-pong_大小[1]
elif pong2_posY使用和将位置限制在边界内

def钳位(值、vmin、vmax): 返回最大值(vmin,最小值(vmax,值))
movePong(posY、moveDown、moveUp):
如果向下移动:
posY+=10
如果向上移动:
posY-=10
回程票
使用和将位置限制在边界内

def钳位(值、vmin、vmax): 返回最大值(vmin,最小值(vmax,值))
movePong(posY、moveDown、moveUp):
如果向下移动:
posY+=10
如果向上移动:
posY-=10
回程票