Menu
CoddyTech

Les touches fléchées

Leçon 5 sur 41 du cours Créer des jeux avec Pygame de Coddy.

Pour déplacer le carré, stocke sa position dans des variables et dessine-le à cet endroit à chaque image. Modifie les variables et, à l’image suivante, le carré apparaît ailleurs.

pygame.key.get_pressed() t’indique quelles touches sont actuellement enfoncées. Accède à une touche à l’aide d’une constante, comme pygame.K_RIGHT : le résultat est True tant que cette touche est enfoncée.

x = 100

while running:
    # événements
    keys = pygame.key.get_pressed()
    if keys[pygame.K_RIGHT]:
        x += 4
    # remplir, puis dessiner à x

Maintiens la touche Flèche droite enfoncée et le carré se déplace de 4 pixels à chaque image, soit 240 pixels par seconde à 60 images par seconde. Les touches fléchées sont K_LEFT, K_RIGHT, K_UP et K_DOWN. Vers le haut signifie une valeur de y plus petite.

Déclare les variables avant la boucle. Une variable définie à l’intérieur de la boucle repart de zéro à chaque image. x, y = 100, 50 définit deux noms sur une seule ligne : x reçoit 100 et y reçoit 50.

challenge icon

Défi

Facile

Déplace le carré avec les touches fléchées.

  1. Avant la boucle, définis x, y = 220, 160 et speed = 4.
  2. Dans la boucle, après les événements, lis pygame.key.get_pressed(). Chaque touche fléchée maintenue modifie x ou y de speed.
  3. Dessine le carré à (x, y, 40, 40).

Appuie sur « Jouer » et maintiens les touches fléchées enfoncées : le carré se déplace. Puis clique sur « Vérifier ».

Essayez vous-même

import pygame

pygame.init()
screen = pygame.display.set_mode((480, 360))
pygame.display.set_caption("Move the Square")
clock = pygame.time.Clock()

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

    screen.fill((30, 30, 46))
    pygame.draw.rect(screen, (255, 196, 0), (220, 160, 40, 40))
    pygame.display.flip()
    clock.tick(60)

pygame.quit()

Toutes les leçons de Créer des jeux avec Pygame

Entraînez-vous par vous-même : Playground Pygame