Menu
CoddyTech

Sprinter

Fait partie de la section La boucle de jeu du Journey Pygame de Coddy. Leçon 6 sur 32.

Une variable peut changer à chaque image, selon ce que fait le joueur. Ici, la vitesse dépend du fait que la barre d’espace soit maintenue enfoncée.

keys = pygame.key.get_pressed()
speed = 4
if keys[pygame.K_SPACE]:
    speed = 8

Chaque image commence à la vitesse normale, 4. Seule une image où la barre d’espace est enfoncée fait passer la vitesse à 8. Relâche la barre d’espace et l’image suivante revient à 4.

Définis d’abord la valeur normale, puis la valeur spéciale. Dans l’ordre inverse, la deuxième ligne l’emporte toujours et la barre d’espace ne fait rien.

challenge icon

Défi

Facile

Permets au joueur de sprinter :

  1. Supprime speed = 4 au-dessus de la boucle.
  2. Dans la boucle, juste après keys = pygame.key.get_pressed(), définis speed = 4, puis définis sa valeur sur 8 si la barre d’espace est maintenue enfoncée.

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()

x, y = 220, 160
speed = 4

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

    keys = pygame.key.get_pressed()
    if keys[pygame.K_LEFT]:
        x -= speed
    if keys[pygame.K_RIGHT]:
        x += speed
    if keys[pygame.K_UP]:
        y -= speed
    if keys[pygame.K_DOWN]:
        y += speed

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

pygame.quit()

Toutes les leçons de La boucle de jeu

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