2017-01-29 9 views
0

ちょっと私には、矢印キーまたはWASDどちらかとpythonで画像を移動しようとしているが、私はあなたのコードがのpython、pygameのイメージの動き

File "1stgame.py", line 43 elif event.key == pygame.K_RIGHT: ^ IndentationError: unindent does not match any outer indentation level

import pygame 

#Start pygame 

pygame.init() 

#Window/Screen/Display 

display_x = 1280 
display_y = 720 
display = pygame.display.set_mode((display_x,display_y)) 
pygame.display.set_caption('Platforms') 

clock = pygame.time.Clock() 

#Colors 

black = (0,0,0) 
green = (1,166,17) 

#Images 
character = pygame.image.load('character.gif') 
def chrctr(x,y): 
    display.blit(character,(x,y)) 
x_c = (display_x/2) 
y_c = (display_y/2) 

floor_1 = pygame.image.load('wood.jpg') 
def floor(x,y): 
    display.blit(floor_1,(x,y)) 
x = (display_x * 0) 
y = (display_y * 0.9) 

not_dead=True 
while not_dead: 
    for event in pygame.event.get(): 
     if (event.type==pygame.QUIT): 
      not_dead=False 

     if event.type == pygame.KEYDOWN: 
      if event.key == pygame.K_LEFT: 
       x_c = -5 
      elif event.key == pygame.K_RIGHT: 
       x_c = 5 
     if event.type == pygame.KEYUP: 
      if event.key == pygame.K_LEFT or event.key == pygame.K_RIGHT: 
       x_c = 0 

    display.fill(green) 
    pygame.draw.rect(display, black, [0, 550, 200, 50]) 
    pygame.draw.rect(display, black, [0, 450, 200, 50]) 
    pygame.draw.rect(display, black, [0, 350, 200, 50]) 
    pygame.draw.rect(display, black, [0, 250, 200, 50]) 
    pygame.draw.rect(display, black, [0, 150, 200, 50]) 
    pygame.draw.rect(display, black, [0, 50, 200, 50]) 
    pygame.draw.rect(display, black, [1080, 550, 200, 50]) 
    pygame.draw.rect(display, black, [1080, 450, 200, 50]) 
    pygame.draw.rect(display, black, [1080, 350, 200, 50]) 
    pygame.draw.rect(display, black, [1080, 250, 200, 50]) 
    pygame.draw.rect(display, black, [1080, 150, 200, 50]) 
    pygame.draw.rect(display, black, [1080, 50, 200, 50]) 

    floor(0,display_y * 0.9) 
    floor(236, display_y * 0.9) 
    floor(472, display_y * 0.9) 
    floor(708, display_y * 0.9) 
    floor(944, display_y * 0.9) 
    floor(1180, display_y * 0.9) 
    chrctr(x_c, y_c) 


    pygame.display.update() 
    clock.tick(60) 
print "Hello" 

pygame.quit() 
+0

Read:http://stackoverflow.com/a/10238788/4927751 –

答えて

0

インデントエラーを取得しておくが正しいか、それがで走りました私のコンピュータは間違いなく。誤ってソースコードに間違ってインデントされている可能性があります。しかしあなたが上に投稿した人は壮大に働いていましたが、あなたが期待したとおりにはうまく動作しません。

また、「hello」の角括弧を印刷に使用して、バージョン互換print("hello")にすることをお勧めします。

+0

ありがとう私はコードがノートパッド++からここに変更されたのはわかりませんが、今は私のために働きます2.ありがとう私は何かprint( "こんにちは) – jmonster555games