//Pinta diferentes imagenes dependiendo del contenido bool GraficosSDL::DibujarContenidos(Tablero &t, Snake &s){ bool result=false; for(int i=0; i<t.GetDimension(); i++){ for(int j=0; j<t.GetDimension(); j++){ switch(t.GetContenido(i,j)){ case Vacio: apply_surface( j*TILE_WIDTH, i*TILE_HEIGHT, fondo, screen, NULL);//pinta fondo break; case Obstaculo: apply_surface( j*TILE_WIDTH, i*TILE_HEIGHT, pared, screen, NULL );//pinta pared break; case CuerpoS: apply_surface( j*TILE_WIDTH, i*TILE_HEIGHT, cuerpo, screen, NULL );//pinta cuerpo break; case CabezaS: switch(s.GetDireccion()){ //pinta cabezas case Arriba: apply_surface( j*TILE_WIDTH, i*TILE_HEIGHT, cabeza_arriba, screen, NULL); break; case Abajo: apply_surface( j*TILE_WIDTH, i*TILE_HEIGHT, cabeza_abajo, screen, NULL); break; case Derecha: apply_surface( j*TILE_WIDTH, i*TILE_HEIGHT, cabeza_derecha, screen, NULL); break; case Izquierda: apply_surface( j*TILE_WIDTH, i*TILE_HEIGHT, cabeza_izquierda, screen, NULL); break; } break; case Objetivo: apply_surface( j*TILE_WIDTH, i*TILE_HEIGHT, manzana, screen, NULL );//pinta manzana break; } } } if( SDL_Flip(screen) == -1 ){ result=true; } return result; }