Bonsoir,

voila je doit crée un jeu mais j'ai un probleme pour le menu je voudrais que quand j'appuis sur la fleche ca me mette une autre image en menu, comment faire ? voici mon code j'ai commencé mais j'obtient une erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
#!/usr/bin/python3
# -*- coding: Utf-8 -*
 
"""
Jeu Donkey Kong Labyrinthe
Jeu dans lequel on doit déplacer DK jusqu'aux bananes à travers un labyrinthe.
 
Script Python
Fichiers : dklabyrinthe.py, classes.py, constantes.py, n1, n2 + images
"""
 
import pygame
from pygame.locals import *
 
from classes import *
from constantes import *
 
pygame.init()
 
#Ouverture de la fenêtre Pygame (carré : largeur = hauteur)
fenetre = pygame.display.set_mode((cote_fenetre, cote_fenetre))
#Son
#Tone = pygame.mixer.music.load("mvt.wav")
#pygame.mixer.music.play(-1)
#Icone
icone = pygame.image.load(image_icone)
pygame.display.set_icon(icone)
#Titre
pygame.display.set_caption(titre_fenetre)
#score
points=100
#fond
imf = [image_ac1,
       image_ac2]
imon = [0]
 
#BOUCLE PRINCIPALE
continuer = 1
 
def imfond():
        global continuer, image_selectionner
        for event in pygame.event.get():
                if event.type == KEYDOWN:
                        if event.key == K_RIGHT and imon ==[0]:
                                imon = imf[1]
                        elif pressed[pygame.K_LEFT] and imon ==[1]:
                                imon = imf[0]
 
while continuer:
 
	#Chargement et affichage de l'écran d'accueil
	imfond()
	fenetre.blit(imon, (0,0))
 
	#Rafraichissement
	pygame.display.flip()
 
	#On remet ces variables à 1 à chaque tour de boucle
	continuer_jeu = 1
	continuer_accueil = 1
 
	#BOUCLE D'ACCUEIL
	while continuer_accueil:
 
		#Limitation de vitesse de la boucle
		pygame.time.Clock().tick(30)
 
		for event in pygame.event.get():
 
			#Si l'utilisateur quitte, on met les variables 
			#de boucle à 0 pour n'en parcourir aucune et fermer
			if event.type == QUIT or event.type == KEYDOWN and event.key == K_ESCAPE:
				continuer_accueil = 0
				continuer_jeu = 0
				continuer = 0
				#Variable de choix du niveau
				choix = 0
 
			elif event.type == KEYDOWN:				
				#Lancement du niveau 1
				if event.key == K_F1:
					continuer_accueil = 0	#On quitte l'accueil
					choix = 'n1'		#On définit le niveau à charger
				#Lancement du niveau 2
				elif event.key == K_F2:
					continuer_accueil = 0
					choix = 'n2'
                                #Lancement du niveau 3
				elif event.key == K_F3:
					continuer_accueil = 0
					choix = 'n3'
				#Lancement du niveau 4
				elif event.key == K_F4:
					continuer_accueil = 0
					choix = 'n4'
 
 
	#on vérifie que le joueur a bien fait un choix de niveau
	#pour ne pas charger s'il quitte
	if choix != 0:
		#Chargement du fond
		fond = pygame.image.load(image_fond).convert()
 
		#Génération d'un niveau à partir d'un fichier
		niveau = Niveau(choix)
		niveau.generer()
		niveau.afficher(fenetre)
 
		#Création de Donkey Kong
		dk = Perso("images/dk_droite.png", "images/dk_gauche.png", 
		"images/dk_haut.png", "images/dk_bas.png", niveau)
 
 
	#BOUCLE DE JEU
	while continuer_jeu:
 
		#Limitation de vitesse de la boucle
		pygame.time.Clock().tick(30)
 
		for event in pygame.event.get():
 
			#Si l'utilisateur quitte, on met la variable qui continue le jeu
			#ET la variable générale à 0 pour fermer la fenêtre
			if event.type == QUIT:
				continuer_jeu = 0
				continuer = 0
 
			elif event.type == KEYDOWN:
				#Si l'utilisateur presse Echap ici, on revient seulement au menu
				if event.key == K_ESCAPE:
					continuer_jeu = 0
 
				#Touches de déplacement de Donkey Kong
				elif event.key == K_RIGHT:
					dk.deplacer('droite')
					points = points-1
				elif event.key == K_LEFT:
					dk.deplacer('gauche')
				elif event.key == K_UP:
					dk.deplacer('haut')
				elif event.key == K_DOWN:
					dk.deplacer('bas')			
 
		#Affichages aux nouvelles positions
		fenetre.blit(fond, (0,0))
		niveau.afficher(fenetre)
		fenetre.blit(dk.direction, (dk.x, dk.y)) #dk.direction = l'image dans la bonne direction
		pygame.display.flip()
 
		#Victoire -> Retour à l'accueil
		if niveau.structure[dk.case_y][dk.case_x] == 'a':
			continuer_jeu = 0
mon erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
Traceback (most recent call last):
  File "C:\Users\Megaport\Desktop\Mini projet 3 donkey kong\dklabyrinthe.py", line 53, in <module>
    fenetre.blit(imon, (0,0))
TypeError: argument 1 must be pygame.Surface, not list