Pygame : Problème de superposition d'images [Résolu/Fermé]

Signaler
-
Messages postés
14
Date d'inscription
jeudi 2 janvier 2014
Statut
Membre
Dernière intervention
14 avril 2014
-
Salut les gens !
Je debute sur Python et bien evidamment je bloque un peu.
Voilà mon problème. J'ai codé grace au tuto du site du Zéro un programme qui bermet de deplacer une image sur un fond d'écran. Jusque là le programe marche très bien. Maintenant dans un souci d'amélioration j'aimerai rajouter une nouvelle image (route.jpg) sur le background. Et les problèmes arrivent. L'image semble apparaitre derière le background et je n'ai aucun moyen de la faire apparaitre.

Voilà mon code :

#Importatinon et initialisation de la bibliothèque Pygame
import pygame
from pygame.locals import *
pygame.init()

#Affichage des images
fenetre = pygame.display.set_mode((640, 480))

fond = pygame.image.load("background.jpg").convert()
fenetre.blit(fond, (0,0))

perso = pygame.image.load("perso.png").convert_alpha()
position_perso = perso.get_rect()
fenetre.blit(perso, position_perso)

pygame.display.flip()

road = pygame.image.load("route.jpg").convert_alpha()
fenetre_road.blit(fond, (100,100))

#Rafraîchissement
pygame.display.flip()

#Pour la fluidité du déplacement
pygame.key.set_repeat(400, 30)

#Boucle Infinie
continuer = 1
while continuer:
    for event in pygame.event.get():
        if event.type == QUIT:
            continuer = 0
        if event.type == KEYDOWN:
            if event.key == K_DOWN:
                position_perso = position_perso.move(0,5)
            if event.key == K_LEFT:
                position_perso = position_perso.move(-5,0)
            if event.key == K_UP:
                position_perso = position_perso.move(0,-5)
            if event.key == K_RIGHT:
                position_perso = position_perso.move(5,0) 
        

#Re-collage
    fenetre.blit(fond, (0,0))
    fenetre.blit(perso, position_perso)

#Rafeaîchissement
    pygame.display.flip()


Merci beaucoup !

1 réponse

Messages postés
102
Date d'inscription
mercredi 20 juin 2012
Statut
Membre
Dernière intervention
5 décembre 2015
26
Bonjour!
Dans ton code source, tu charges 'route.jpg' et tu l'appel road, mais jamais tu ne l'affiche... il faudrait le mettre entre l'affichage du fond et de ton perso! =)
Messages postés
14
Date d'inscription
jeudi 2 janvier 2014
Statut
Membre
Dernière intervention
14 avril 2014

Merci beaucoup pour ta réponse mais le problème persiste.
La commande pour afficher l'image c'est bien ca non ?
fenetre.blit(road, (100,100))


Du coup même placé entre le fond et l'image il n'apparait pas.
Messages postés
14
Date d'inscription
jeudi 2 janvier 2014
Statut
Membre
Dernière intervention
14 avril 2014

Ok c'est bon j'ai compris mon erreur merci beaucoup pour ton aide!