aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ft_draw_sprite.c26
1 files changed, 13 insertions, 13 deletions
diff --git a/src/ft_draw_sprite.c b/src/ft_draw_sprite.c
index 45f9217..d99e1be 100644
--- a/src/ft_draw_sprite.c
+++ b/src/ft_draw_sprite.c
@@ -24,10 +24,6 @@ void
printf("start x : %d\nstart y : %d\nend x : %d\nend y : %d\n", sprite->drawstartx, sprite->drawstarty, sprite->drawendy, sprite->drawendy);
sprite->x = sprite->drawstartx;
- /* sprite->drawstartx = 1000; */
- /* sprite->drawstarty = 200; */
- /* sprite->drawendx = 700; */
- /* sprite->drawendy = 1000; */
while (sprite->x < sprite->drawendx)
{
sprite->tex_x = (int32_t)((sprite->x - (-sprite->spritewidth / 2 +
@@ -37,20 +33,24 @@ void
sprite->x < (int32_t)cl->wlist->x_size)
while (sprite->y < sprite->drawendy)
{
- d = (sprite->y) * 256 - cl->wlist->y_size * 128 +
+ d = sprite->y * 256 - cl->wlist->y_size * 128 +
sprite->spriteheight * 128;
sprite->tex_y = ((d * cl->tlist[4].img_h) /
sprite->spriteheight) / 128;
- if (*(cl->tlist[4].ptr + sprite->tex_x + sprite->tex_y *
- cl->tlist[4].sizeline / 4))
+ if (cl->tlist[4].ptr[sprite->tex_x * 4 + 4 * cl->tlist[4].img_h * sprite->tex_y] != 0)
{
- cl->img.ptr[sprite->x + sprite->y *
- cl->img.sizeline] =
- *(cl->tlist[4].ptr + sprite->tex_x + sprite->tex_y * cl->tlist[4].sizeline / 4);
-
+ cl->img.ptr[sprite->x * 4 + (sprite->y *
+ cl->img.sizeline)] =
+ cl->tlist[4].ptr[sprite->tex_x * 4 + 4 * cl->tlist[4].img_h * sprite->tex_y];
+ cl->img.ptr[sprite->x * 4 + (sprite->y *
+ cl->img.sizeline) + 1] =
+ cl->tlist[4].ptr[sprite->tex_x * 4 + 4 * cl->tlist[4].img_h * sprite->tex_y + 1];
+ cl->img.ptr[sprite->x * 4 + (sprite->y *
+ cl->img.sizeline) + 2] =
+ cl->tlist[4].ptr[sprite->tex_x * 4 + 4 * cl->tlist[4].img_h * sprite->tex_y + 2];
}
sprite->y++;
}
- sprite->x++;
- }
+ sprite->x++;
+ }
}