我正在嘗試做一個簡單的遊戲,但移動不能正常工作 我希望它在按鈕被按下時不斷移動,但是尊重屏幕的邊界當前按鈕將總體工作但它使矩形口吃,這裏是我的代碼,pygame不斷移動與if語句
import pygame
pygame.init()
SD = pygame.display.set_mode((640,480))
x = 16
y = 16
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
quit()
keys = pygame.key.get_pressed()
if keys[pygame.K_w]:
if y > 0:
y -= 8
if keys[pygame.K_a]:
if x > 0:
x -= 8
if keys[pygame.K_s]:
if y < 448:
y += 8
if keys[pygame.K_d]:
if x < 608:
x += 8
SD.fill((255,255,255))
pygame.draw.rect(SD, (255,0,0), (x,y, 30, 30))
pygame.display.update()
是的,不要在遊戲循環中使用sleep()。 Pygame有一個內置的時鐘。使用'clock = pygame.time.Clock()'創建它,然後在遊戲循環中使用'clock.tick(30)' - 這將確保您的循環以30 fps運行。 – Chris