From: Holger Schemel Date: Tue, 28 Nov 2023 15:30:41 +0000 (+0100) Subject: added wrapper function to copy SDL surfaces X-Git-Tag: 4.3.8.0~32 X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=commitdiff_plain;h=263833763d867d5c2a329c98416adac0aadc0b8e added wrapper function to copy SDL surfaces --- diff --git a/src/libgame/sdl.c b/src/libgame/sdl.c index 64d28bdb..06805765 100644 --- a/src/libgame/sdl.c +++ b/src/libgame/sdl.c @@ -1012,6 +1012,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) diff --git a/src/libgame/sdl.h b/src/libgame/sdl.h index 31de93da..05f99982 100644 --- a/src/libgame/sdl.h +++ b/src/libgame/sdl.h @@ -422,6 +422,7 @@ void SDLInitVideoBuffer(boolean); boolean SDLSetVideoMode(boolean); void SDLCreateBitmapContent(Bitmap *, int, int, int); void SDLFreeBitmapPointers(Bitmap *); +void SDLBlitSurface(SDL_Surface *, SDL_Surface *, int, int, int, int, int, int); void SDLCopyArea(Bitmap *, Bitmap *, int, int, int, int, int, int, int); void SDLBlitTexture(Bitmap *, int, int, int, int, int, int, int); void SDLFillRectangle(Bitmap *, int, int, int, int, Uint32);