有没有办法在得分时将球的位置更改为中心?
Is there a way to change the position of the ball to the centre when scored?
if fireBall.rect.x>=690:
score_1+=1
fireBall.ballspeed[0] = -fireBall.ballspeed[0]
if fireBall.rect.x<=0:
score_2+=1
fireBall.ballspeed[0] = -fireBall.ballspeed[0]
if fireBall.rect.y>490:
fireBall.ballspeed[1] = -fireBall.ballspeed[1]
if fireBall.rect.y<0:
fireBall.ballspeed[1] = -fireBall.ballspeed[1]
我正在做一个乒乓球游戏,我希望球在玩家得分时从中心重新开始,但我的代码允许球在他们得分后继续移动。
你可以用pygame.display.get_surface().get_rect().center
得到window的中心。例如:
if fireBall.rect.x>=690:
score_1+=1
fireBall.ballspeed[0] = -fireBall.ballspeed[0]
fireBall.rect.center = pygame.display.get_surface().get_rect().center
if fireBall.rect.x<=0:
score_2+=1
fireBall.ballspeed[0] = -fireBall.ballspeed[0]
fireBall.rect.center = pygame.display.get_surface().get_rect().center
if fireBall.rect.x>=690:
score_1+=1
fireBall.ballspeed[0] = -fireBall.ballspeed[0]
if fireBall.rect.x<=0:
score_2+=1
fireBall.ballspeed[0] = -fireBall.ballspeed[0]
if fireBall.rect.y>490:
fireBall.ballspeed[1] = -fireBall.ballspeed[1]
if fireBall.rect.y<0:
fireBall.ballspeed[1] = -fireBall.ballspeed[1]
我正在做一个乒乓球游戏,我希望球在玩家得分时从中心重新开始,但我的代码允许球在他们得分后继续移动。
你可以用pygame.display.get_surface().get_rect().center
得到window的中心。例如:
if fireBall.rect.x>=690:
score_1+=1
fireBall.ballspeed[0] = -fireBall.ballspeed[0]
fireBall.rect.center = pygame.display.get_surface().get_rect().center
if fireBall.rect.x<=0:
score_2+=1
fireBall.ballspeed[0] = -fireBall.ballspeed[0]
fireBall.rect.center = pygame.display.get_surface().get_rect().center