Quelqu'un POUR m'aider dans MON CODE pygame ?
EnormeEtronDu92
2023-01-13 15:24:09
#code python
while True:
pygame.time.wait(500)
mem = 0
for event in pygame.event.get():
if event == pygame.QUIT:
sys.exit
if event == pygame.KEYDOWN:
match event:
case pygame.K_UP:
if mem == 0:
head_direction = (0,1)
mem = 1
case pygame.K_DOWN:
if mem == 0:
head_direction = (0,-1)
mem = 1
case pygame.K_RIGHT:
if mem == 0:
head_direction = (1,0)
mem = 1
case pygame.K_LEFT:
if mem == 0:
head_direction = (-1,0)
mem = 1
if move() == 0:
break
print("score = ",len(snake)+1)
sys.exit
j'ai mis juste la partie ou j'ai un probleme le reste je pense pas qu'il y ai de soucis
voila j'ai un petit probleme et c'est a la partie pygame.QUIT qui fonctionne pas, quand je lance le programme et que je clique sur la croix pour quitter, rien ne se passe...
si quelqu'un s'y connait en pygame je voudrais bien savoir pourquoi
EnormeEtronDu92
2023-01-13 15:27:31
uphttps://image.noelshack.com/fichiers/2018/29/6/1532128784-risitas33.png
EnormeEtronDu92
2023-01-13 15:28:47
bidehttps://image.noelshack.com/fichiers/2022/38/4/1663852709-golemabasourdi.png
EnormeEtronDu92
2023-01-13 15:30:55
personne ?https://image.noelshack.com/fichiers/2022/38/4/1663852709-golemabasourdi.png
MainLillia
2023-01-13 15:34:43
Il ne faut pas ajouter des parenthèses sur "sys.exit()" ?
EnormeEtronDu92
2023-01-13 15:35:49
Le 13 janvier 2023 à 15:34:43 :
Il ne faut pas ajouter des parenthèses sur "sys.exit()" ?
oui peut etre mais c'est pas ça le probleme
MainLillia
2023-01-13 15:36:36
Le 13 janvier 2023 à 15:35:49 :
Le 13 janvier 2023 à 15:34:43 :
Il ne faut pas ajouter des parenthèses sur "sys.exit()" ?
oui peut etre mais c'est pas ça le probleme
Eh bien je sais pas, bon couragehttps://image.noelshack.com/fichiers/2022/38/4/1663852709-golemabasourdi.png
EnormeEtronDu92
2023-01-13 15:37:48
Le 13 janvier 2023 à 15:36:36 :
Le 13 janvier 2023 à 15:35:49 :
Le 13 janvier 2023 à 15:34:43 :
Il ne faut pas ajouter des parenthèses sur "sys.exit()" ?
oui peut etre mais c'est pas ça le probleme
Eh bien je sais pas, bon couragehttps://image.noelshack.com/fichiers/2022/38/4/1663852709-golemabasourdi.png
merci quille je me demande pourquoi ça marche pas comme un if vivant cette partie
MainLillia
2023-01-13 15:37:53
Tu peux essayer exit() sinon
EnormeEtronDu92
2023-01-13 15:39:34
j'ai testé toujours pareil, faut que le if fonctionne deja et c'est pas le cas
Rapasteque
2023-01-13 15:39:43
Il semble que le problème vienne de la ligne "sys.exit" qui ne contient pas de parenthèses. En effet, sys.exit est une fonction qui arrête le programme, mais si vous ne l'appelez pas en mettant des parenthèses, elle ne sera pas exécutée.
Il faut donc remplacer la ligne "sys.exit" par "sys.exit()" pour que la fonction soit appelée et le programme s'arrête.
Aussi, dans la ligne "if event == pygame.QUIT:", il faut ajouter "break" pour quitter de la boucle while True.
Ainsi, le code devrait ressembler à ceci:
while True:
pygame.time.wait(500)
mem = 0
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
if event.type == pygame.KEYDOWN:
match event:
case pygame.K_UP:
if mem == 0:
head_direction = (0,1)
mem = 1
case pygame.K_DOWN:
if mem == 0:
head_direction = (0,-1)
mem = 1
case pygame.K_RIGHT:
if mem == 0:
head_direction = (1,0)
mem = 1
case pygame.K_LEFT:
if mem == 0:
head_direction = (-1,0)
mem = 1
if move() == 0:
break
print("score = ",len(snake)+1)
coinadaire
2023-01-13 15:40:47
Sa depend surement de ton ordi, sous mac os pygame quit buguait pour moi
EnormeEtronDu92
2023-01-13 15:45:33
Le 13 janvier 2023 à 15:39:43 :
Il semble que le problème vienne de la ligne "sys.exit" qui ne contient pas de parenthèses. En effet, sys.exit est une fonction qui arrête le programme, mais si vous ne l'appelez pas en mettant des parenthèses, elle ne sera pas exécutée.
Il faut donc remplacer la ligne "sys.exit" par "sys.exit()" pour que la fonction soit appelée et le programme s'arrête.
Aussi, dans la ligne "if event == pygame.QUIT:", il faut ajouter "break" pour quitter de la boucle while True.
Ainsi, le code devrait ressembler à ceci:
while True:
pygame.time.wait(500)
mem = 0
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
if event.type == pygame.KEYDOWN:
match event:
case pygame.K_UP:
if mem == 0:
head_direction = (0,1)
mem = 1
case pygame.K_DOWN:
if mem == 0:
head_direction = (0,-1)
mem = 1
case pygame.K_RIGHT:
if mem == 0:
head_direction = (1,0)
mem = 1
case pygame.K_LEFT:
if mem == 0:
head_direction = (-1,0)
mem = 1
if move() == 0:
break
print("score = ",len(snake)+1)
ça fonctionne merci
j'ai oublié que fallait mettre event.type au lieu de event, et j'ai mis le pygame.quit
comete-
2023-01-13 15:46:03
demande a chatgpthttps://image.noelshack.com/fichiers/2017/39/3/1506524542-ruth-perplexev2.png
Rapasteque
2023-01-13 15:46:25
Le 13 janvier 2023 à 15:45:33 :
Le 13 janvier 2023 à 15:39:43 :
Il semble que le problème vienne de la ligne "sys.exit" qui ne contient pas de parenthèses. En effet, sys.exit est une fonction qui arrête le programme, mais si vous ne l'appelez pas en mettant des parenthèses, elle ne sera pas exécutée.
Il faut donc remplacer la ligne "sys.exit" par "sys.exit()" pour que la fonction soit appelée et le programme s'arrête.
Aussi, dans la ligne "if event == pygame.QUIT:", il faut ajouter "break" pour quitter de la boucle while True.
Ainsi, le code devrait ressembler à ceci:
while True:
pygame.time.wait(500)
mem = 0
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
if event.type == pygame.KEYDOWN:
match event:
case pygame.K_UP:
if mem == 0:
head_direction = (0,1)
mem = 1
case pygame.K_DOWN:
if mem == 0:
head_direction = (0,-1)
mem = 1
case pygame.K_RIGHT:
if mem == 0:
head_direction = (1,0)
mem = 1
case pygame.K_LEFT:
if mem == 0:
head_direction = (-1,0)
mem = 1
if move() == 0:
break
print("score = ",len(snake)+1)
ça fonctionne merci
j'ai oublié que fallait mettre event.type au lieu de event, et j'ai mis le pygame.quit
Merci ChatGPT si ça a vraiment fonctionné.
EnormeEtronDu92
2023-01-13 15:50:13
serieux c'est une IA qui a fait le travail ?https://image.noelshack.com/fichiers/2017/30/4/1501186981-risimixbestreup.png
je dois vraiment faire du python niveau bébé pour que chatgpt puisse resoudre mes soucishttps://image.noelshack.com/fichiers/2017/30/4/1501186981-risimixbestreup.png
comete-
2023-01-13 15:53:41
Le 13 janvier 2023 à 15:50:13 :
serieux c'est une IA qui a fait le travail ?https://image.noelshack.com/fichiers/2017/30/4/1501186981-risimixbestreup.png
je dois vraiment faire du python niveau bébé pour que chatgpt puisse resoudre mes soucishttps://image.noelshack.com/fichiers/2017/30/4/1501186981-risimixbestreup.png
non chatgpt a un lvl plutot élevé il me semblehttps://image.noelshack.com/fichiers/2017/39/3/1506524542-ruth-perplexev2.png
__EnvieDeCASH
2023-01-13 15:55:31
Essie d'abord pygame.quit()
Puis fais un exit(0) pas besoin du module sys