Я хочу создать «иллюзию», так сказать, что мой персонаж идет, используя несколько изображений с листа нескольких позиций спрайтов. Я знаю, как перемещать одиночное изображение с помощью WASD. Вот мой код до сих пор:Как создать персонаж для ходьбы с помощью нескольких изображений из листа спрайтов
room_bg = 'woodf.jpg'#wood floor background
screen = pygame.display.set_mode((640,360),0,32)
background = pygame.image.load(room_bg).convert()#background here
x,y = 290,150
movex, movey = 0,0
while 1:#blitting background to middle of screen, start of main game loop
screen.blit(background, (170,100))
for event in pygame.event.get():
if event.type == QUIT:
pygame.quit()
sys.exit()
if event.type == KEYDOWN:
if event.key == K_a:
movex = -1
pygame.image.load('s_left1.png')
pygame.Surface.blit(mc_left1)
elif event.key == K_d:
movex = +1
elif event.key == K_w:
movey = -1
elif event.key == K_s:
movey = +1
if event.type == KEYUP:
if event.key == K_a:
movex = 0
elif event.key == K_d:
movex = 0
elif event.key == K_w:
movey = 0
elif event.key == K_s:
movey = 0
x+= movex
y+= movey
mc = pygame.image.load('ss.png').convert()
mc.set_colorkey((0,0,0))
screen.blit(mc,(x,y))
pygame.display.update()
Я использую это тоже, но использовать 'Часы = pygame.time.Clock()' ', а затем Clock.tick (25)' вместо 'pygame.time.delay (40)' – fdvfcges