X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsystem.c;h=6e3eaaba10804489e8f082a5e8303dcffc87a580;hb=7f77c2e8dcb7ad575fcaf89512f4f616846c8b41;hp=709a35116a6316131501439fd318850f70c3933d;hpb=24101bdeee0ac963cfd48b5220f6d9b0188a6f69;p=rocksndiamonds.git diff --git a/src/libgame/system.c b/src/libgame/system.c index 709a3511..6e3eaaba 100644 --- a/src/libgame/system.c +++ b/src/libgame/system.c @@ -1,7 +1,7 @@ /*********************************************************** * Artsoft Retro-Game Library * *----------------------------------------------------------* -* (c) 1994-2002 Artsoft Entertainment * +* (c) 1994-2006 Artsoft Entertainment * * Holger Schemel * * Detmolder Strasse 189 * * 33604 Bielefeld * @@ -72,7 +72,7 @@ void InitProgramInfo(char *argv0, char *userdata_subdir, char *userdata_subdir_unix, char *program_title, char *window_title, char *icon_title, char *x11_icon_filename, char *x11_iconmask_filename, - char *msdos_cursor_filename, + char *sdl_icon_filename, char *msdos_cursor_filename, char *cookie_prefix, char *filename_prefix, int program_version) { @@ -89,6 +89,7 @@ void InitProgramInfo(char *argv0, program.x11_icon_filename = x11_icon_filename; program.x11_iconmask_filename = x11_iconmask_filename; + program.sdl_icon_filename = sdl_icon_filename; program.msdos_cursor_filename = msdos_cursor_filename; program.cookie_prefix = cookie_prefix; @@ -326,6 +327,7 @@ void InitVideoBuffer(DrawBuffer **backbuffer, DrawWindow **window, video.width = width; video.height = height; video.depth = GetRealDepth(depth); + video.fullscreen_available = FULLSCREEN_STATUS; video.fullscreen_enabled = FALSE; video.fullscreen_modes = NULL; @@ -422,13 +424,16 @@ inline static boolean CheckDrawingArea(int x, int y, int width, int height, if (draw_mask & REDRAW_ALL) return TRUE; - if ((draw_mask & REDRAW_FIELD) && x < gfx.real_sx + gfx.full_sxsize) + if ((draw_mask & REDRAW_FIELD) && + x >= gfx.real_sx && x < gfx.real_sx + gfx.full_sxsize) return TRUE; - if ((draw_mask & REDRAW_DOOR_1) && x >= gfx.dx && y < gfx.dy + gfx.dysize) + if ((draw_mask & REDRAW_DOOR_1) && + x >= gfx.dx && y < gfx.dy + gfx.dysize) return TRUE; - if ((draw_mask & REDRAW_DOOR_2) && x >= gfx.dx && y >= gfx.vy) + if ((draw_mask & REDRAW_DOOR_2) && + x >= gfx.dx && y >= gfx.vy) return TRUE; return FALSE; @@ -456,13 +461,15 @@ void BlitBitmap(Bitmap *src_bitmap, Bitmap *dst_bitmap, dst_x, dst_y, BLIT_OPAQUE); } -void FadeScreen(Bitmap *bitmap_cross, int fade_mode, int fade_delay, - int post_delay) +void FadeRectangle(Bitmap *bitmap_cross, int x, int y, int width, int height, + int fade_mode, int fade_delay, int post_delay) { #if defined(TARGET_SDL) - SDLFadeScreen(bitmap_cross, fade_mode, fade_delay, post_delay); + SDLFadeRectangle(bitmap_cross, x, y, width, height, + fade_mode, fade_delay, post_delay); #else - X11FadeScreen(bitmap_cross, fade_mode, fade_delay, post_delay); + X11FadeRectangle(bitmap_cross, x, y, width, height, + fade_mode, fade_delay, post_delay); #endif }