printf(" CustomValue: %d\n", CustomValue[x][y]);
printf(" GfxElement: %d\n", GfxElement[x][y]);
printf(" GfxAction: %d\n", GfxAction[x][y]);
- printf(" GfxFrame: %d\n", GfxFrame[x][y]);
+ printf(" GfxFrame: %d [%d]\n", GfxFrame[x][y], FrameCounter);
printf("\n");
}
void DrawMaskedBorder(int redraw_mask)
{
/* never draw masked screen borders on borderless screens */
- if (effectiveGameStatus() == GAME_MODE_LOADING ||
- effectiveGameStatus() == GAME_MODE_TITLE)
+ if (game_status == GAME_MODE_LOADING ||
+ game_status == GAME_MODE_TITLE)
return;
if (redraw_mask & REDRAW_ALL)
if (game_status == game_status_last)
return FALSE;
+ // redraw if last screen was title screen
+ if (game_status_last == GAME_MODE_TITLE)
+ return TRUE;
+
// redraw if global screen border has changed
if (CheckIfGlobalBorderHasChanged())
return TRUE;
int text_width = line_length * font_width;
int width = request.width;
int height = request.height;
- int tile_size = request.step_offset;
+ int tile_size = MAX(request.step_offset, 1);
int x_steps = width / tile_size;
int y_steps = height / tile_size;
int sx_offset = border_size;
if (request.centered)
sx_offset = (request.width - text_width) / 2;
- if (request.wrap_single_words)
+ if (request.wrap_single_words && !request.autowrap)
{
char *src_text_ptr, *dst_text_ptr;
int anim_delay_value = (no_delay ? 0 : delay_value + 500 * 0) / 2;
unsigned int anim_delay = 0;
- int tile_size = request.step_offset;
+ int tile_size = MAX(request.step_offset, 1);
int max_xsize = request.width / tile_size;
int max_ysize = request.height / tile_size;
int max_xsize_inner = max_xsize - 2;