X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Ftext.c;h=84996db221fe529899a5c36ff463eb00ff9b4823;hb=9b9fc7c5d5990aae8f7c1b403c3ab1ed338018da;hp=4de7319a7e131a6bf4a996cac727f5caaa506e40;hpb=311a3f217666744c8ce72093c37c58acf952c115;p=rocksndiamonds.git diff --git a/src/libgame/text.c b/src/libgame/text.c index 4de7319a..84996db2 100644 --- a/src/libgame/text.c +++ b/src/libgame/text.c @@ -16,18 +16,37 @@ #include "misc.h" +// ============================================================================ +// static font variables +// ============================================================================ + +boolean text_drawing_enabled = TRUE; + + // ============================================================================ // font functions // ============================================================================ +void EnableDrawingText(void) +{ + text_drawing_enabled = TRUE; +} + +void DisableDrawingText(void) +{ + text_drawing_enabled = FALSE; +} + void InitFontInfo(struct FontBitmapInfo *font_bitmap_info, int num_fonts, int (*select_font_function)(int), - int (*get_font_from_token_function)(char *)) + int (*get_font_from_token_function)(char *), + char * (*get_token_from_font_function)(int)) { gfx.num_fonts = num_fonts; gfx.font_bitmap_info = font_bitmap_info; gfx.select_font_function = select_font_function; gfx.get_font_from_token_function = get_font_from_token_function; + gfx.get_token_from_font_function = get_token_from_font_function; } void FreeFontInfo(struct FontBitmapInfo *font_bitmap_info) @@ -142,6 +161,9 @@ static void DrawInitTextExt(char *text, int ypos, int font_nr, boolean update) UPDATE_BUSY_STATE(); + if (!text_drawing_enabled) + return; + if (window != NULL && gfx.draw_init_text && gfx.num_fonts > 0 && @@ -254,6 +276,14 @@ void DrawTextExt(DrawBuffer *dst_bitmap, int dst_x, int dst_y, char *text, int src_x, src_y; char *text_ptr = text; + if (!text_drawing_enabled) + return; + +#if DEBUG + Debug("font:token", "'%s' / '%s'", + gfx.get_token_from_font_function(font_nr), text); +#endif + if (font->bitmap == NULL) return;