X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fimage.h;h=12754ea9f2f9468fe3d5fa4727caa503d2fa4de5;hb=b7282fd678d6f5c7ebf6a12062eb391129a800a7;hp=716ba0f56c7d0ad59b3178789d677aed14188980;hpb=3d07b68a314ce189f207e42d95f786979662410d;p=rocksndiamonds.git diff --git a/src/libgame/image.h b/src/libgame/image.h index 716ba0f5..12754ea9 100644 --- a/src/libgame/image.h +++ b/src/libgame/image.h @@ -1,14 +1,14 @@ /*********************************************************** -* Rocks'n'Diamonds -- McDuffin Strikes Back! * +* Artsoft Retro-Game Library * *----------------------------------------------------------* -* (c) 1995-98 Artsoft Entertainment * -* Holger Schemel * -* Oststrasse 11a * -* 33604 Bielefeld * -* phone: ++49 +521 290471 * -* email: aeglos@valinor.owl.de * +* (c) 1994-2006 Artsoft Entertainment * +* Holger Schemel * +* Detmolder Strasse 189 * +* 33604 Bielefeld * +* Germany * +* e-mail: info@artsoft.org * *----------------------------------------------------------* -* image.h * +* image.h * ***********************************************************/ #ifndef IMAGE_H @@ -17,46 +17,23 @@ #include "system.h" -#if defined(TARGET_X11) - -#define MAX_COLORS 256 /* maximal number of colors for each image */ - -typedef unsigned short Intensity; /* RGB intensity for X11 */ - -typedef struct -{ - Display *display; /* destination display */ - int depth; /* depth of destination drawable */ - Pixel index[MAX_COLORS]; /* array of pixel values */ - int no; /* number of pixels in the array */ - Colormap cmap; /* colormap used for image */ - Pixmap pixmap; /* final pixmap */ - Pixmap pixmap_mask; /* final pixmap of mask */ -} XImageInfo; - -struct RGBMap -{ - unsigned int used; /* number of colors used in RGB map */ - Intensity red[MAX_COLORS]; /* color values in X style */ - Intensity green[MAX_COLORS]; - Intensity blue[MAX_COLORS]; - boolean color_used[MAX_COLORS]; /* flag if color cell is used */ -}; - -typedef struct -{ - struct RGBMap rgb; /* RGB map of image if IRGB type */ - unsigned int width; /* width of image in pixels */ - unsigned int height; /* height of image in pixels */ - unsigned int depth; /* depth of image in bits if IRGB type */ - byte *data; /* image data */ -} Image; - -Image *newImage(unsigned int, unsigned int, unsigned int); -void freeImage(Image *); -void freeXImage(Image *, XImageInfo *); -int Read_PCX_to_Pixmap(Display *, Window, GC, char *, Pixmap *, Pixmap *); - -#endif /* TARGET_X11 */ +int getImageListSize(); +struct FileInfo *getImageListEntryFromImageID(int); +Bitmap *getBitmapFromImageID(int); +int getOriginalImageWidthFromImageID(int); +int getOriginalImageHeightFromImageID(int); +char *getTokenFromImageID(int); +int getImageIDFromToken(char *); +char *getImageConfigFilename(); +int getImageListPropertyMappingSize(); +struct PropertyMapping *getImageListPropertyMapping(); +void InitImageList(struct ConfigInfo *, int, struct ConfigTypeInfo *, + char **, char **, char **, char **, char **); + +void ReloadCustomImages(); +void CreateImageWithSmallImages(int, int, int); +void ScaleImage(int, int); + +void FreeAllImages(); #endif /* IMAGE_H */