J'ai deux tableaux 2D, contenant chacun des informations qui affiche une couche:Stockage des tableaux 2D dans un tableau 2D - Python
layer0 = [[info], [info]]
layer1 = [[info], [info]]
je voudrais contenir ces deux tableaux 2D, dans un autre tableau:
map = [[layer0], [layer1]]
Cependant, mon programme n'affichera pas les tuiles correctement. Ma question est: Est-il possible de stocker des tableaux 2D, dans un autre tableau 2D? Merci.
J'ai une certaine boucle système pour itérer à travers lesdits réseaux et l'affichage des tuiles correspondant au contenu du tableau:
for array in maplayer:
for tile in array:
if tile == 0:
screen.blit(self.tile_dict[0], (self.tileX, self.tileY))
self.tileX = self.tileX+16
if tile == 1:
screen.blit(self.tile_dict[1], (self.tileX, self.tileY))
self.tileX = self.tileX+16
self.tileX = self.cameraX
self.tileY += 16
J'ai essayé d'ajouter un autre simple boucle, à parcourir le tableau de carte réelle, mais PyGame affiche un écran vide:
for maplayer in map:
for array in maplayer:
for tile in array:
if tile == 0:
screen.blit(self.tile_dict[0], (self.tileX, self.tileY))
self.tileX = self.tileX+16
if tile == 1:
screen.blit(self.tile_dict[1], (self.tileX, self.tileY))
self.tileX = self.tileX+16
self.tileX = self.cameraX
self.tileY += 16
Voici la méthode complète:
def LoadMap(self, map):
self.tileX = self.cameraX
self.tileY = self.cameraY
for maplayer in map:
for array in maplayer:
for tile in array:
if tile == 0:
screen.blit(self.tile_dict[0], (self.tileX, self.tileY))
self.tileX = self.tileX+16
if tile == 1:
screen.blit(self.tile_dict[1], (self.tileX, self.tileY))
self.tileX = self.tileX+16
self.tileX = self.cameraX
self.tileY += 16
Merci.
À quels carreaux faites-vous référence? Comment essayez-vous d'afficher ces choses? Qu'est-ce qui se passe, et en quoi est-ce différent de ce que vous attendez? Mais réponse rapide, oui il est possible de stocker des tableaux 2D dans des tableaux 2D. Exemple: [[[[1,2] [3,4]]]] – FrobberOfBits
Hey FrobberOfBits, j'ai édité la question pour être plus précis. :) – FrigidDev