02-08-2011, 10:42 AM
(Modification du message : 03-08-2011, 02:28 PM par Angelblade.)
Bonjour à tous, je suis ce forum depuis quelques temps sans m'être présenté ou avoir posté de message et puis ca y je me lance
Je m'adresse à vous, connaisseur, dans l'espoir que vous puissiez m'aider sur un point technique.
Actuellement je sauvegarde mes cartes en json selon cette structure:
Il faut comprendre la structure des cellules comme ceci:
La première dimensions du tableau correspond à la couche, il y a donc ici 2 couches
Ensuite le tableau contient des valeurs les unes à la suite des autres.
Ma carte est donc représenté en couche 0 par une ligne de 2, puis 0, puis 1. (la carte fait 3x3 donc toutes les 3 valeurs on a une ligne)
L'avantage de cette structure est qu'elle peut s'écrire:
Et avec une fonction simple on récupère le tableau original, ce qui diminue la taille du fichier.
De plus lorsqu'on dessine la carte il est très utile de récupérer toutes les cellules d'une couche.
Cependant une autre structure très sympathique s'écrit:
Permet d'accéder à une cellule particulière d'une manière très logique
Cette structure est visuellement parlante, plus pratique à manipuler et évite des calculs pour retrouver les coordonnées.
Cependant pour dessiner la carte couche par couche ca augmente le temps de traitement et la compression des données est moins facile.
Si vous avez pu me suivre jusque ici, auriez vous encore le courage de me dire ce que vous en pensez?
Amicalement, Angelblade.
Je m'adresse à vous, connaisseur, dans l'espoir que vous puissiez m'aider sur un point technique.
Actuellement je sauvegarde mes cartes en json selon cette structure:
Code :
{
nom:'Carte',
largeur:3,
hauteur:3,
cellules:[
[2,2,2,0,0,0,1,1,1], // couche0
[3,3,3,3,3,3,3,3,3] // couche1
]
}
Il faut comprendre la structure des cellules comme ceci:
La première dimensions du tableau correspond à la couche, il y a donc ici 2 couches
Ensuite le tableau contient des valeurs les unes à la suite des autres.
Ma carte est donc représenté en couche 0 par une ligne de 2, puis 0, puis 1. (la carte fait 3x3 donc toutes les 3 valeurs on a une ligne)
L'avantage de cette structure est qu'elle peut s'écrire:
Code :
cellules:[
[2x3,0x3,1x3],
[3x9]
];
Et avec une fonction simple on récupère le tableau original, ce qui diminue la taille du fichier.
De plus lorsqu'on dessine la carte il est très utile de récupérer toutes les cellules d'une couche.
Cependant une autre structure très sympathique s'écrit:
Code :
cellules:[
[[2,3], [2,3], [2,3]], // ligne0
[[0,3], [0,3], [0,3]], // ligne1
[[1,3], [1,3], [1,3]], // ligne2
]
Permet d'accéder à une cellule particulière d'une manière très logique
Code :
funtion getCell(x,y,z){
return cellules[x][y][z];
}
Cette structure est visuellement parlante, plus pratique à manipuler et évite des calculs pour retrouver les coordonnées.
Cependant pour dessiner la carte couche par couche ca augmente le temps de traitement et la compression des données est moins facile.
Si vous avez pu me suivre jusque ici, auriez vous encore le courage de me dire ce que vous en pensez?
Amicalement, Angelblade.