Le déplacement d'un personnage est une des bases de l'interactivité dans un jeu.
Chaque mouvement modifie la position du personnage en ajustant ses coordonnées (x, y) sur l'écran.
Mouvements horizontaux
x le fait avancer vers la droite (+)x le fait reculer vers la gauche (-)Mouvements verticaux
y le déplace vers le bas (+)y le fait monter (-)C'est une bonne pratique de stocker la vitesse dans une variable. Ainsi, tu pourras changer la vitesse à laquelle le personnage se déplace à l'écran en changeant le nombre de pixels de chaque déplacement.
vitesse = 5
Voici comment gérer ces déplacements en PyGame avec les touches du clavier.
On utilise pygame.key.get_pressed() pour détecter les touches enfoncée :
# Touches pressées en continu
keys = pygame.key.get_pressed()
if keys[pygame.K_LEFT]:
player_x -= vitesse
if keys[pygame.K_RIGHT]:
player_x += vitesse
if keys[pygame.K_UP]:
player_y -= vitesse
if keys[pygame.K_DOWN]:
player_y += vitesse
import pygame
pygame.init()
# Initialisation de la fenêtre
largeur_ecran = 800
hauteur_ecran = 600
screen = pygame.display.set_mode((largeur_ecran, hauteur_ecran))
pygame.display.set_caption("Déplacement du personnage")
# Charger le personnage
player = pygame.image.load('player.png')
player_x = 100
player_y = 100
vitesse = 5
# Boucle de jeu
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# Touches pressées en continu
keys = pygame.key.get_pressed()
if keys[pygame.K_LEFT]:
player_x -= vitesse
if keys[pygame.K_RIGHT]:
player_x += vitesse
if keys[pygame.K_UP]:
player_y -= vitesse
if keys[pygame.K_DOWN]:
player_y += vitesse
screen.fill((0, 0, 0)) # Effacer l'écran
screen.blit(player, (player_x, player_y)) # Afficher le personnage
pygame.display.flip() # Rafraîchir l'écran
pygame.quit()
pygame.key.get_pressed() permet un mouvement fluide.vitesse pour accélérer ou ralentir le déplacement.Avec ces bases, ton personnage peut se déplacer librement à l’écran !