2017-04-11 52 views
0

キーが押されている間に画像を移動しようとしていますが、常に1ピクセルだけ移動します。これに似た質問で私はこれが正しいことを見たが、それは私のために働いていない。Pygame:キーが押されている間に画像を移動

import pygame, sys 

x = 0 
y = 0 


class Ship: 
    def __init__(self, image): 
     self.image = pygame.image.load(image) 

    def Play(self, screen, x, y): 
     self.screen = screen 
     self.screen.blit(self.image, [x, y]) 


if __name__ == "__main__": 
    ship = Ship('Lod.png') 
    while True: 
     window = pygame.display.set_mode([1000, 1000]) 
     window.fill([0, 105, 148]) 

     Key = pygame.key.get_pressed() 
     if Key[pygame.K_LEFT]: 
      x -= 1 
     if Key[pygame.K_RIGHT]: 
      x += 1 

     ship.Play(window, x, y) 

     for event in pygame.event.get(): 
      if event.type == pygame.QUIT: 
       sys.exit() 
     pygame.display.flip() 
+0

[pump](http://stackoverflow.com/questions/17938170/pygame-key-get-pressed-is-not-working#17940879)は役に立ちますか? – Prune

+1

'event.get'の呼び出しがあります –

+1

フレームごとにウィンドウのサイズを変更しています。それが問題になる可能性がありますので、ループの前に 'pygame.display.set_mode'を移動してください。私は、ウィンドウ上の画像は、サイズを変更するたびにリセット/クリアされると信じていますが、それはまだ試していない推測です。 –

答えて

0

移動中pygame.display.set_modeが有効です。ありがとう!

関連する問題