まめ - たんたんめん

備忘録 C# / WPF 多め

(python)pygame触ってみた

こんにちは、今日はpythonの勉強がてらゲームっぽいものを作ろうとおもっていろいろ触っていました。
結果50行足らずでキー入力に合わせて動くキャラクターっぽいのが作れました、感激。
簡単なデモやミニゲーム程度ならちゃちゃっと作れそうですね。3Dに関してはまだ調べていません。

f:id:at12k313:20180427190544g:plain

以下、ソース全文乗せておきます。

import sys,pygame

class GameObject:
    Pos = x,y = 0,0
    Size = width , height = 32,32
    Color = 255,0,0
    def Draw(self,screen):
        rect = self.x ,self.y , self.width,self.height
        screen.fill(self.Color ,rect)
    def Move(self,x,y):
        self.x+=x
        self.y+=y

#! エントリポイント
def main():
    pygame.init()
    displaySize  = width , height = 800 ,480
    white = 255,255,255 
    screen = pygame.display.set_mode(displaySize)
    obj = GameObject()
    pygame.key.set_repeat(64,32)
    while 1:
        for event in pygame.event.get():
            if event.type == pygame.QUIT: 
                sys.exit()
            if event.type == pygame.KEYDOWN:
                MOVE_OFFSET = 10 
                if event.key == pygame.K_ESCAPE:
                    sys.exit()
                if event.key == pygame.K_LEFT:
                    obj.Move(-MOVE_OFFSET,0)
                if event.key == pygame.K_RIGHT:
                    obj.Move(MOVE_OFFSET,0)
                if event.key == pygame.K_UP:
                    obj.Move(0,-MOVE_OFFSET)
                if event.key == pygame.K_DOWN:
                    obj.Move(0,MOVE_OFFSET)
        screen.fill(white)
        obj.Draw(screen)
        pygame.display.flip()
        pygame.display.update()
if __name__ == "__main__":
    main()