当玩家在 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
对象。
我正在尝试制作一个 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
对象。