Я только что получил спрайт, перемещающийся по окну, используя "w, a, s, d", и я хочу, чтобы этот спрайт "стрелял", нажимая клавишу пробела.Получается, что спрайт появляется, но не двигается, пока я не отпущу пробел, и я хочу, чтобы выстрел спрайта шел вперед до конца окна, просто нажимая пробел, а не отпуская его.
Это мой основной цикл:
while pygame.event.poll().type != QUIT:
screen.blit(background, (0, 0))
#"player" is the sprite moving around the window
player.move(width,height)
screen.blit(player.image, player.rect)
key = pygame.key.get_pressed()
if key[K_SPACE]:
xpos = player.rect.right
ypos = player.rect.top
shot_on_screen = True
if shot_on_screen:
xpos += 1
#"kame" is the sprite i want to move forward
screen.blit(shot.kame, (xpos, ypos))
else:
shot.x = player.rect.right
shot.y = player.rect.top
shot_on_screen = False
pygame.display.update()
Я новичок в этом мире python-pygame, я проверил много руководств и документации, прежде чем спросить, надеюсь, вы поможете, спасибо.