ISN Labyrinthe interface python et pygame
vaxx
-
critou -
critou -
Bonjour,
Pour le Baccalauréat dans la spécialité ISN, je dois faire un programme pour la fin de l'année et c'est moi qui m'occupe de l'interface graphique à l'aide des logiciels Python et Pygame, dont ici je fais un labyrinthe.
Ici, je veux (à l'aide de mon niveau sur un autre programme : 0=fond et 1=mur) construire le labyrinthe en remplaçant les 0 et 1 par les images carrées du fond et du mur. J'ai donc le programme suivant :
(longueur_fen, etc sont des constantes d'un autre programme dont j'ai importé au début du programme-ci.
Mais malheureusement, la page pygame s'affiche avec un fond noir avec comme texte (le logiciel ne répond pas). Savez-vous où est le problème? Aidez moi s'il vous plaît je ne comprends vraiment pas.
Merci
Pour le Baccalauréat dans la spécialité ISN, je dois faire un programme pour la fin de l'année et c'est moi qui m'occupe de l'interface graphique à l'aide des logiciels Python et Pygame, dont ici je fais un labyrinthe.
Ici, je veux (à l'aide de mon niveau sur un autre programme : 0=fond et 1=mur) construire le labyrinthe en remplaçant les 0 et 1 par les images carrées du fond et du mur. J'ai donc le programme suivant :
import pygame from pygame.locals import * from constantes import * from niveau import * pygame.init() #Ouverture de la fenêtre Pygame fenetre = pygame.display.set_mode((longueur_fen, largeur_fen)) #Chargement et collage du fond fond = pygame.image.load("images/fond.jpg").convert() mur = pygame.image.load("images/mur.png") def afficher_niveau(): for i in range (0,nb_cases_largeur+1): for j in range(0,nb_cases_longueur+1): if niveau [i][j]==1: fenetre.blit(mur, (taille_cases*j, taille_cases*i)) else : fenetre.blit(fond, (taille_cases*j, taille_cases*i)) #Rafraîchissement de l'écran pygame.display.flip() #BOUCLE INFINIE continuer = 1 while continuer: continuer = int(input())
(longueur_fen, etc sont des constantes d'un autre programme dont j'ai importé au début du programme-ci.
Mais malheureusement, la page pygame s'affiche avec un fond noir avec comme texte (le logiciel ne répond pas). Savez-vous où est le problème? Aidez moi s'il vous plaît je ne comprends vraiment pas.
Merci
A voir également:
- ISN Labyrinthe interface python et pygame
- Citizen code python avis - Accueil - Outils
- Common interface 5v only - Forum TNT / Satellite / Réception
- Interface netflix - Accueil - Streaming
- Python est introuvable. exúcutez sans argument pour procúder ó l - Forum Python
- Interface gmail - Guide
1 réponse
Bonjour.
Il est là ton problème, un input n'a rien à faire dans la boucle événementielle de pygame.
Si tu veux détruire la fenêtre avec un appui sur une touche clavier ou kill de la fenêtre, cela se gère avec les events de pygame.
Et ne pas oublier d'utiliser un appel à
while continuer: continuer = int(input())
Il est là ton problème, un input n'a rien à faire dans la boucle événementielle de pygame.
Si tu veux détruire la fenêtre avec un appui sur une touche clavier ou kill de la fenêtre, cela se gère avec les events de pygame.
Et ne pas oublier d'utiliser un appel à
pygame.quitaprès ta boucle pour que pygame ferme bien la fenêtre.
C'est comme tu veux, mais déjà utiliser un event pour que la fenêtre se ferme lorsqu'on la détruit est un bon début.
Et pour plus d'informations comment se gère les evénements pygame, il faut lire la documentation, et suivre un bon tutoriel, il y a déjà ce qu'il faut sur le site officiel de pygame, c'est en anglais, mais ça impossible d'y échapper.