2017-06-12 6 views
0

Ich versuche im Grunde zu tun, was die Frage sagt, aber es passiert nicht. Kann mir jemand erklären warum?Wie mache ich es so, dass, wenn ich eine Taste drücke, ein Bild erscheint und dort bleibt, bis ich loslasse?

if event.type == pygame.KEYDOWN: 
    keys = pygame.key.get_pressed() 
    if keys[pygame.K_w]: 
     screen.blit(player_1, [170, 333]) 
    if keys[pygame.K_d]: 
     screen.blit(player_1, [331, 500]) 
    if keys[pygame.K_s]: 
     screen.blit(player_1, [170, 665]) 
    if keys[pygame.K_a]: 
     screen.blit(player_1, [10, 500]) 
    if keys[pygame.K_UP]: 
     screen.blit(player_2, [195, 333]) 
    if keys[pygame.K_RIGHT]: 
     screen.blit(player_2, [356, 500]) 
    if keys[pygame.K_DOWN]: 
     screen.blit(player_2, [196, 665]) 
    if keys[pygame.K_LEFT]: 
     screen.blit(player_2, [35, 500]) 
+0

Ihre Einrücken ist Aus für Python: Code innerhalb einer 'if'-Anweisung muss eingerückt sein, und die oberste Ebene' if' ist nicht in Ihrer Beispieldatei enthalten. – ifconfig

Antwort

0

Statt den Schlüssel gedrückt zu halten. Verwenden Sie eine boolesche Anweisung, die an den Schlüssel gebunden ist, mit dem Sie ein Bild öffnen möchten. aussehen würde etwas ähnliches zu diesem Keys [pygame.K_UP] = false Wenn Tasten [pygame.K_UP] == true: Print "(Bild einfügen url hier)" Else (nichts)

+0

Ich entschuldige mich für die Grobheit der Antwort Post, wie ich von meinem Handy aus posten. Wenn Sie mir etwas Zeit erlauben, kann ich auf meinen Computer gehen und Ihnen ausführlichere und persönlichere Syntax für Ihr Programm geben –

+0

Scheint auch Ihre erste if-Anweisung hängt davon ab, dass die Abwärtstaste gedrückt wird. Daher werden Sie Ihre anderen if-Schleifen nicht eingeben, ohne zuerst diesen Initialschlüssel zu haben, um nach der Deklaration Ihrer Schlüsselvariablen zu iterieren –

Verwandte Themen