2015-12-29 21 views
-3

我正在嘗試構建一個簡單的遊戲項目,但幾個小時後編碼用pygame加載python的圖像?

只是空白白色屏幕的pygame出現?

鍛鍊一些身體幫助我!

這將是吃豆子游戲,但對於測試我編寫這個

import os 
import sys 
import pygame 
from pygame.locals import * 


if not pygame.font: print("Warning, fonts disabled") 
if not pygame.mixer: print("Warning, sound disabled") 


def load_image(file, colorkey=False): 
    #file = os.path.join('data', file) 
    try: 
     image = pygame.image.load(file) 
     colorkey = image.get_at((0, 0)) 
     if colorkey is True: 
      image.set_colorkey(colorkey, pygame.RLEACCEL) 
    except: 
     print("Unable to load: ") 
    return image 


class Main: 
    def __init__(self, width=640, height=480): 
     pygame.init() 
     self.width = width 
     self.height = height 
     self.screen = pygame.display.set_mode((self.width, self.height)) 

    def main_loop(self): 
     self.load_sprites() 

     while 1: 
      for event in pygame.event.get(): 
       if event.type == pygame.QUIT: 
        sys.exit() 
     self.snake_sprites.draw(self.screen) 
     pygame.display.flip() 
     pygame.display.update() 

    def load_sprites(self): 
     self.snake = Snake() 
     self.snake_sprites = pygame.sprite.RenderPlain((self.snake)) 


class Snake(pygame.sprite.Sprite): 
    def __init__(self): 
     pygame.sprite.Sprite.__init__(self) 
     self.image = load_image("snake.png") 
     self.rect = load_image("snake.png") 
     self.pellets = 0 


if __name__ == "__main__": 
    MainWindow = Main() 
    MainWindow.main_loop() 

感謝您的幫助

回答

0

你是不是畫他們永遠。主循環後面有三行永遠不會執行。你也有這條線:

self.rect = load_image("snake.png") 

我不認爲這就是你的意思。 load_image()返回一個圖像,而不是一個矩形。

+0

感謝您的幫助 ,你能說我應該在哪裏添加它們? –

+0

把它們放在while循環中 – Untitled123