Pour mon projet final, avec ma partenaire nous avons décidé de créer un jeu de type liner runner sur Python (avec Pygame et Tkinter). On a déjà fait notre propre fond, personnage et obstacle, cependant on bute sur une partie importante du programme.
En effet, pour donner l'illusion que notre personnage avance au fur et à mesure du jeu (alors qu'en fait il reste au même endroit, même quand il saute), nous avons pensé à faire défiler le fond de notre jeu (car on ne voit pas d'autre solution de toute manière). Cependant, on ne parvient pas à faire ce qu'on veut, car on ne trouve pas la bonne boucle, le bon événement ou module sans que ça ne bug. Par exemple, on a essayé de coller 2 fois le même fond à la suite, mais une fois que les 2 passent, ça reste bloquer sur la fin de la dernière image.
Alors un peu d'aide serait la bienvenue, merci :).
Peut-on avoir un petit code si possible ? Et c'est assez logique quand tu y penses, tu mets 2 fonds, tu les fais défiler, il y en a plus.. Il vaudrait mieux en faire défiler n et ceux qui ne sont plus à l'écran tu les effaces de la mémoire.
- Edité par InhumanRampage 22 mars 2015 à 21:11:15
Oui c'est vrai que même si on colle 10000 fois la même image à la suite, ça ne résoudrait pas le problème. Donc n serait une bonne solution, mais je ne vois pas comment l'utiliser...
Et voici notre petit code !
#Chargement et collage du fond
x1=0
x2=999
fond1 = pygame.image.load("Fond1.jpg").convert()
fenetre.blit(fond1, (x1,0))
fond2 = pygame.image.load("Fond2.jpg").convert()
fenetre.blit(fond2, (x2,0))
#Défilement du fond
for i in range(0, 1000):
x1 = x1-3*i
x2 = x2-3*i
fenetre.blit(fond1, (x1,0))
fenetre.blit(fond2, (x2,0))
time.sleep(0.15)
pygame.display.flip()
Faire défiler le fond d'un jeu
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.