int getFontWidth(int font_size, int font_type)
{
return (font_size == FS_BIG ? FONT1_XSIZE :
+ font_size == FS_MEDIUM ? FONT6_XSIZE :
font_type == FC_SPECIAL1 ? FONT3_XSIZE :
font_type == FC_SPECIAL2 ? FONT4_XSIZE :
font_type == FC_SPECIAL3 ? FONT5_XSIZE :
int getFontHeight(int font_size, int font_type)
{
return (font_size == FS_BIG ? FONT1_YSIZE :
+ font_size == FS_MEDIUM ? FONT6_YSIZE :
font_type == FC_SPECIAL1 ? FONT3_YSIZE :
font_type == FC_SPECIAL2 ? FONT4_YSIZE :
font_type == FC_SPECIAL3 ? FONT5_YSIZE :
int font_pixmap;
boolean print_inverse = FALSE;
- if (font_size != FS_SMALL && font_size != FS_BIG)
+ if (font_size != FS_SMALL && font_size != FS_BIG && font_size != FS_MEDIUM)
font_size = FS_SMALL;
if (font_type < FC_RED || font_type > FC_SPECIAL3)
font_type = FC_RED;
font_width = getFontWidth(font_size, font_type);
font_height = getFontHeight(font_size, font_type);
- font_pixmap = (font_size == FS_BIG ? PIX_BIGFONT : PIX_SMALLFONT);
- font_start = (font_type * (font_size == FS_BIG ? FONT1_YSIZE : FONT2_YSIZE) *
+ font_pixmap = (font_size == FS_BIG ? PIX_BIGFONT :
+ font_size == FS_MEDIUM ? PIX_MEDIUMFONT :
+ PIX_SMALLFONT);
+ font_start = (font_type * (font_size == FS_BIG ? FONT1_YSIZE :
+ font_size == FS_MEDIUM ? FONT6_YSIZE :
+ FONT2_YSIZE) *
FONT_LINES_PER_FONT);
if (font_type == FC_SPECIAL3)
*x = (graphic % DC_PER_LINE) * TILEX;
*y = (graphic / DC_PER_LINE) * TILEY;
}
+ else if (graphic >= GFX_START_ROCKSMORE && graphic <= GFX_END_ROCKSMORE)
+ {
+ graphic -= GFX_START_ROCKSMORE;
+ *pixmap_nr = PIX_MORE;
+ *x = (graphic % MORE_PER_LINE) * TILEX;
+ *y = (graphic / MORE_PER_LINE) * TILEY;
+ }
else if (graphic >= GFX_START_ROCKSFONT && graphic <= GFX_END_ROCKSFONT)
{
graphic -= GFX_START_ROCKSFONT;
{
graphic += !phase2;
}
+ else if (element == EL_BALLOON)
+ {
+ graphic += phase4;
+ }
else if ((element == EL_FELSBROCKEN || element == EL_SP_ZONK ||
IS_GEM(element)) && !cut_mode)
{