Browse Source

Fix world_draw_black_tile not taking buffer borders in to account

Thanks to @imperialsecond for providing a test case for
world_draw_black_tile
pull/634/head
Anders Jenbo 6 years ago
parent
commit
67d7655544
  1. 8
      Source/render.cpp

8
Source/render.cpp

@ -255,14 +255,18 @@ void RenderTile(BYTE *pBuff)
/**
* @brief Render a black tile
* @param pBuff pointer where to render the tile
* @param sx Back buffer coordinate
* @param sy Back buffer coordinate
*/
void world_draw_black_tile(int sx, int sy)
{
int i, j, k;
BYTE *dst;
if (sx >= SCREEN_WIDTH - 64 || sy >= SCREEN_HEIGHT - 32)
if (sx >= SCREEN_X + SCREEN_WIDTH || sy >= SCREEN_Y + VIEWPORT_HEIGHT + 32)
return;
if (sx < SCREEN_X - 60 || sy < SCREEN_Y)
return;
dst = &gpBuffer[sx + BUFFER_WIDTH * sy] + 30;

Loading…
Cancel
Save