X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fimage.h;fp=src%2Flibgame%2Fimage.h;h=cf95a106b44c21f09c7cf263a9d7efb99b6fa184;hb=4afa1876ca64ce2b3084c64ea0c60ea42be92127;hp=3d2421934465f4e1790628538607925667b65add;hpb=1c9e305ffcb3dd5fd571817d1a50b276703b621c;p=rocksndiamonds.git diff --git a/src/libgame/image.h b/src/libgame/image.h index 3d242193..cf95a106 100644 --- a/src/libgame/image.h +++ b/src/libgame/image.h @@ -15,7 +15,20 @@ #include "system.h" -// these bitmap pointers either point to allocated bitmaps or are NULL +// bitmap array positions for various element sizes, if available +// +// for any loaded image, the "standard" size (which represents the 32x32 pixel +// size for game elements) is always defined; other bitmap sizes may be NULL +// +// formats from 32x32 down to 1x1 are standard bitmap sizes for game elements +// (used in the game, in the level editor, in the level preview etc.) +// +// "CUSTOM" sizes for game elements (like 64x64) may be additionally created; +// all "OTHER" image sizes are stored if different from all other bitmap sizes, +// which may be used "as is" by global animations (as the "standard" size used +// normally may be wrong due to being scaled up or down to a different size if +// the same image contains game elements in a non-standard size) + #define IMG_BITMAP_32x32 0 #define IMG_BITMAP_16x16 1 #define IMG_BITMAP_8x8 2 @@ -23,13 +36,15 @@ #define IMG_BITMAP_2x2 4 #define IMG_BITMAP_1x1 5 #define IMG_BITMAP_CUSTOM 6 +#define IMG_BITMAP_OTHER 7 -#define NUM_IMG_BITMAPS 7 +#define NUM_IMG_BITMAPS 8 -// this bitmap pointer points to one of the above bitmaps (do not free it) -#define IMG_BITMAP_PTR_GAME 7 +// these bitmap pointers point to one of the above bitmaps (do not free them) +#define IMG_BITMAP_PTR_GAME 8 +#define IMG_BITMAP_PTR_ORIGINAL 9 -#define NUM_IMG_BITMAP_POINTERS 8 +#define NUM_IMG_BITMAP_POINTERS 10 // this bitmap pointer points to the bitmap with default image size #define IMG_BITMAP_STANDARD IMG_BITMAP_32x32