aboutsummaryrefslogtreecommitdiffstats
path: root/src/ft_draw_hud.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/ft_draw_hud.c')
-rw-r--r--src/ft_draw_hud.c88
1 files changed, 31 insertions, 57 deletions
diff --git a/src/ft_draw_hud.c b/src/ft_draw_hud.c
index 9cb5b1c..4ae497a 100644
--- a/src/ft_draw_hud.c
+++ b/src/ft_draw_hud.c
@@ -15,48 +15,19 @@
#include <stdint.h>
static void
- ft_draw_hud_back(t_win *wl, t_cub *cl)
+ ft_draw_minimap_back(size_t map_h, size_t map_w, t_win *wl, t_cub *cl)
{
- const uint16_t scl = cl->mlist->scale;
+ const uint16_t scl = cl->mlist.scale;
uint32_t x;
uint32_t y;
int32_t col;
- col = 0x00404040;
- x = 0;
- y = wl->y_size - ((cl->mlist->map_h * scl));
- while (x < wl->x_size)
- {
- while (y < wl->y_size)
- {
- *(int*)(cl->img.ptr + (x * 4 + (y * cl->img.sizeline))) = col;
- if (!(y % 3))
- {
- if (col < 0x00909090)
- col += 0x00010101;
- }
- y++;
- }
- col = 0x00404040;
- y = wl->y_size - ((cl->mlist->map_h * scl));
- x++;
- }
-}
-
-static void
- ft_draw_hud_back_top_l(size_t map_h, size_t map_w, t_win *wl, t_cub *cl)
-{
- const uint16_t scl = cl->mlist->scale;
- uint32_t x;
- uint32_t y;
- int32_t col;
-
- col = 0x00373737;
+ col = 0x00353535;
x = 0;
y = wl->y_size - (map_h * scl) - 20;
while (x < (map_w * scl) + 20)
{
- while (y < wl->y_size - (map_h * scl))
+ while (y < wl->y_size)
{
*(int*)(cl->img.ptr + (x * 4 + (y * cl->img.sizeline))) = col;
if (!(y % 3))
@@ -73,41 +44,44 @@ static void
}
static void
- ft_draw_hud_back_top_r(size_t map_h, size_t map_w, t_win *wl, t_cub *cl)
+ ft_draw_stage_back(t_cub *clist)
{
- const uint16_t scl = cl->mlist->scale;
- uint32_t x;
+ float x;
uint32_t y;
int32_t col;
+ uint16_t x_dest;
+ const uint16_t scl = clist->mlist.scale;
- col = 0x00373737;
- x = wl->x_size - (map_w * scl) + 20;
- y = wl->y_size - (map_h * scl) - 20;
- while (x < wl->x_size)
+ col = 0x00353535;
+ x = 0;
+ y = clist->wlist.y_size - (clist->mlist.map_h * scl) - 45;
+ x_dest = 1.5 * clist->mlist.scale + 70;
+ while (x_dest > (clist->mlist.map_w * scl) + 20)
+ {
+ x_dest--;
+ }
+ while (x < x_dest)
{
- while (y < wl->y_size - (map_h * scl))
+ while (y < clist->wlist.y_size - (clist->mlist.map_h * scl) - 20)
{
- *(int*)(cl->img.ptr + (x * 4 + (y * cl->img.sizeline))) = col;
- if (!(y % 2))
- {
- if (col < 0x00aaaaaa)
- col += 0x00010101;
- }
+ *(int*)(clist->img.ptr +
+ ((uint8_t)x * 4 + (y * clist->img.sizeline))) = col;
y++;
}
- col = 0x00353535;
- y = wl->y_size - (map_h * scl) - 20;
- x++;
+ y = clist->wlist.y_size - (clist->mlist.map_h * scl) - 45;
+ x += 1.0;
}
}
-void
+int8_t
ft_draw_hud(t_cub *clist)
{
- ft_draw_hud_back(clist->wlist, clist);
- ft_draw_hud_back_top_l(clist->mlist->map_h,
- clist->mlist->map_w, clist->wlist, clist);
- ft_draw_hud_back_top_r(clist->mlist->map_h,
- clist->mlist->map_w, clist->wlist, clist);
- ft_draw_map(clist->mlist->map, clist);
+ ft_draw_minimap_back(clist->mlist.map_h,
+ clist->mlist.map_w, &clist->wlist, clist);
+ ft_draw_map(clist->mlist.map, clist);
+ if (clist->mlist.isnlvl)
+ {
+ ft_draw_stage_back(clist);
+ }
+ return (0);
}