当玩家在 Pygame 中按下某个键时图像会重复

Image duplicates when player presses a key in Pygame

我正在尝试制作一个 Pygame 游戏,当我转到玩家移动时,玩家重复了。

代码如下:

#import libraries
import pygame
import sys

#variables
width = 850
height = 850
player_movement = 425

pygame.init()
screen = pygame.display.set_mode((width, height))
clock = pygame.time.Clock()

pygame.display.set_caption("Prokect!")

player = pygame.transform.scale2x(pygame.image.load("player.png"))

#main loop
while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            pygame.quit()
            sys.exit()
        if event.type == pygame.KEYDOWN:
            if event.key == pygame.K_UP:
                player_movement -= 5
            if event.key == pygame.K_DOWN:
                player_movement += 5

                
    screen.blit(player, (10, player_movement))
    pygame.display.update()
    clock.tick(60)

问题来了,为什么精灵(玩家)在移动的时候,玩家会复制?

用一种颜色填充屏幕以清除屏幕。

screen.fill(#Your chosen colour)

使用 screen.fill(color) 清除屏幕,然后重新绘制所有应该可见的图像(例如具有新位置的玩家)。
color 可以是元组或包含 3 或 4 个元素的列表或 pygame.Color 对象。