bonjour je possède un fichier texte avec des 0, 1 et 2 :
du genre:
0 1 0 0 2
0 2 1 2 0
je rentre ce code, afin d´afficher un labyrinthe à partir du contenu du fichier texte :
ifstream lvl1("lab.txt");
t=0;
for(y=0; y<48; y++)
{
for(x=0; x<64; x++)
{
lvl1.seekg(t, ios::beg);
lvl1 > > level[y][x];
t+=2;
}
}
for ( x=0; x<65; x++) / / dessine le labyrinthe
{
for ( y=0; y<49; y++) / / idem
{
/ /taille et contenu des cases
rect1.x = level[y][x]*16;
rect1.y = 0;
rect1.w = 16;
rect1.h = 16;
rect2.x = x*16;
rect2.y = y*16;
SDL_BlitSurface(labytiles,&1,screen,&2);
if(((x+1)%64)==0 && x!=0)
{
}
}
}
SDL_Flip(screen); / / affiche screen à l´écran
}
le problème c´est que tout est décalé.
pour deux lignes, j´ai un décalage d´une case sur l´axe x.
ce qui fait que mon labyrinthe à cette forme :
0 1 0 2 1 2 1 2
0 1 2 1 2 0 0 1
0 1 0 1 0 1 2 1
2 1 2 1 1 1 0 0
au lieu de :
0 0 0 0 1 1 2 2
2 1 2 1 2 1 2 0
0 1 2 0 0 0 0 1
1 1 2 2 2 1 0 0