bueno, aqui vuelve el pesado de turno :)
bueno, este es el codigo problematico:
Código C:
Ver originalvoid dibuja_pantalla(SDL_Surface *pantalla, SDL_Surface *imagenes[],
SDL_Rect posiciones[][IMAG_Y], char mapa[][IMAG_Y+1]){
for(int i=0; i<=IMAG_X; i++){ //8
for(int j=0; j<=IMAG_Y; j++){ //0
char ch=mapa[i][j];
switch(ch){
case '.':
dibuja_imagen(posiciones[i][j], imagenes[SUELO],
pantalla, 0);
break;
case 'h':
dibuja_imagen(posiciones[i][j], imagenes[PARED_H],
pantalla, 0);
break;
case 'v':
dibuja_imagen(posiciones[i][j], imagenes[PARED_V],
pantalla, 0);
break;
case '[':
dibuja_imagen(posiciones[i][j], imagenes[ESQUINA_AI],
pantalla, 0);
break;
case '(':
dibuja_imagen(posiciones[i][j], imagenes[ESQUINA_DI],
pantalla, 0);
break;
case ']':
dibuja_imagen(posiciones[i][j], imagenes[ESQUINA_AD],
pantalla, 0);
break;
case ')':
dibuja_imagen(posiciones[i][j], imagenes[ESQUINA_DD],
pantalla, 0);
break;
case '@':
dibuja_imagen(posiciones[i][j], imagenes[PERSONAJE],
pantalla, 0);
break;
case 'P':
dibuja_imagen(posiciones[i][j], imagenes[PROFESOR],
pantalla, 0);
break;
case 'B':
dibuja_imagen(posiciones[i][j], imagenes[BORRADOR],
pantalla, 0);
break;
case 'T':
dibuja_imagen(posiciones[i][j], imagenes[TIZA],
pantalla, 0);
break;
case 'C':
dibuja_imagen(posiciones[i][j], imagenes[CONSERJE],
pantalla, 0);
break;
case '+':
dibuja_imagen(posiciones[i][j], imagenes[PUERTA],
pantalla, 0);
break;
}
}
}
}
el problema viene al entrar al switch, algo que solo hace cuando i=8 y j=0, hasta entonces se pasa el tiempo pasando olimpicamente de el.
gracias por adelantado.