Bonjour tout le monde,
Je réalise un jeu, et une partie de mon programme a besoin d'une fonction qui déplace les termes d'une liste vers une autre liste avec un indice différent. Je m'explique, en fait je fais ou en tout cas j'essaye de réaliser un 2048 (http://gabrielecirulli.github.io/2048/), j'ai modéliser les cases par les termes d'un tableau a deux dimensions. J'essaye de faire l'algorithme qui déplace les nombres vers la droite. Voici mon code :
J'obtiens le résultat :Code:
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 def DeplacementDroite(): Tableau=[[2,2,2,2],[0,0,0,0],[0,0,0,0],[0,8,0,0]] x=3 NouveauTableau=[[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]] for i in range (0,3): for n in range (0,3): if Tableau[x][n]!=0: if x>0: x-=1 elif Tableau[x][n]==0: if x<3 and i==0: x+=1 NouveauTableau[x][n]=Tableau[i][n] return(NouveauTableau) print(DeplacementDroite())
[[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 2, 0]]
au lieu de :
[[0, 0, 0, 0], [0, 0, 0, 0], [0, 2, 0, 0], [2, 8, 2, 2]]
Je n'arrive pas a faire fonctionner correctement la condition. Est-ce que quelqu'un peut m'aider ? Merci d'avance.