+void le_drawminimap()
+{
+ if(le_world == NULL)
+ return;
+
+ int mini_tile_width;
+ if(screen->w - 64 > le_world->get_level()->width * 4)
+ mini_tile_width = 4;
+ else if(screen->w - 64 > le_world->get_level()->width * 2)
+ mini_tile_width = 2;
+ else
+ mini_tile_width = 1;
+ int left_offset = (screen->w - 64 - le_world->get_level()->width*mini_tile_width) / 2;
+
+ int mini_tile_height;
+ if(screen->h - 64 > le_world->get_level()->height * 4)
+ mini_tile_height = 4;
+ else if(screen->h - 64 > le_world->get_level()->height * 2)
+ mini_tile_height = 2;
+ else
+ mini_tile_height = 1;
+
+ Level* level = le_world->get_level();
+ for (int y = 0; y < le_world->get_level()->height; ++y)
+ for (int x = 0; x < le_world->get_level()->width; ++x)
+ {
+
+ Tile::draw_stretched(left_offset + mini_tile_width*x, y * 4,
+ mini_tile_width , 4, level->bg_tiles[y * level->width + x]);
+
+ Tile::draw_stretched(left_offset + mini_tile_width*x, y * 4,
+ mini_tile_width , 4, level->ia_tiles[y * level->width + x]);
+
+ Tile::draw_stretched(left_offset + mini_tile_width*x, y * 4,
+ mini_tile_width , 4, level->fg_tiles[y + level->width + x]);
+
+ }
+
+ fillrect(left_offset, 0, le_world->get_level()->width*mini_tile_width, le_world->get_level()->height*mini_tile_height, 200, 200, 200, 128);
+
+ fillrect(left_offset + (pos_x/32)*mini_tile_width, 0, 19*mini_tile_width, 2, 200, 200, 200, 200);
+ fillrect(left_offset + (pos_x/32)*mini_tile_width, 0, 2, le_world->get_level()->height*mini_tile_height, 200, 200, 200, 200);
+ fillrect(left_offset + (pos_x/32)*mini_tile_width + 19*mini_tile_width - 2, 0, 2, le_world->get_level()->height*mini_tile_height, 200, 200, 200, 200);
+ fillrect(left_offset + (pos_x/32)*mini_tile_width, le_world->get_level()->height*mini_tile_height-2, 19*mini_tile_width, 2, 200, 200, 200, 200);
+
+}
+