X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsdl.c;h=0b3ec7f623383a26e07efc560938295438ae74dc;hb=HEAD;hp=64d28bdbb6fb5c17243947b6d81899324a2c32d2;hpb=a9e8a4cac51cb2856f339d84bab5e07e8be75037;p=rocksndiamonds.git diff --git a/src/libgame/sdl.c b/src/libgame/sdl.c index 64d28bdb..0b3ec7f6 100644 --- a/src/libgame/sdl.c +++ b/src/libgame/sdl.c @@ -62,14 +62,18 @@ static void FinalizeScreen(int draw_target) if (gfx.draw_global_anim_function != NULL) gfx.draw_global_anim_function(draw_target, DRAW_GLOBAL_ANIM_STAGE_2); - // copy tile selection cursor to render target buffer, if defined (above all) + // copy tile selection cursor to render target buffer, if defined (part 1) if (gfx.draw_tile_cursor_function != NULL) - gfx.draw_tile_cursor_function(draw_target); + gfx.draw_tile_cursor_function(draw_target, TRUE); // copy envelope request to render target buffer, if needed (above all) if (gfx.draw_envelope_request_function != NULL) gfx.draw_envelope_request_function(draw_target); + // copy tile selection cursor to render target buffer, if defined (part 2) + if (gfx.draw_tile_cursor_function != NULL) + gfx.draw_tile_cursor_function(draw_target, FALSE); + // copy global animations to render target buffer, if defined (mouse pointer) if (gfx.draw_global_anim_function != NULL) gfx.draw_global_anim_function(draw_target, DRAW_GLOBAL_ANIM_STAGE_3); @@ -1012,6 +1016,25 @@ void SDLFreeBitmapPointers(Bitmap *bitmap) bitmap->texture_masked = NULL; } +void SDLBlitSurface(SDL_Surface *src_surface, SDL_Surface *dst_surface, + int src_x, int src_y, int width, int height, + int dst_x, int dst_y) +{ + SDL_Rect src_rect, dst_rect; + + src_rect.x = src_x; + src_rect.y = src_y; + src_rect.w = width; + src_rect.h = height; + + dst_rect.x = dst_x; + dst_rect.y = dst_y; + dst_rect.w = width; + dst_rect.h = height; + + SDL_BlitSurface(src_surface, &src_rect, dst_surface, &dst_rect); +} + void SDLCopyArea(Bitmap *src_bitmap, Bitmap *dst_bitmap, int src_x, int src_y, int width, int height, int dst_x, int dst_y, int mask_mode)