rnd-20030126-2-src
[rocksndiamonds.git] / src / libgame / system.h
index 6ba3ff820e9c3f9124b72f564c6e8aabe1540e5e..086b5afad879c989e2370e2922cdc7cdf73f91f9 100644 (file)
@@ -316,6 +316,11 @@ struct FontInfo
   Bitmap *bitmap_tile;
 };
 
+struct AnimInfo
+{
+  int random_frame;
+};
+
 struct JoystickInfo
 {
   int status;
@@ -511,6 +516,15 @@ struct ListNodeInfo
   int num_references;
 };
 
+struct PropertyMapping
+{
+  int base_index;
+  int ext1_index;
+  int ext2_index;
+
+  int artwork_index;
+};
+
 struct ArtworkListInfo
 {
   int type;                                    /* type of artwork */
@@ -518,11 +532,11 @@ struct ArtworkListInfo
   int num_file_list_entries;
   int num_dynamic_file_list_entries;
 
-  int num_suffix_list_entries;
-
   struct FileInfo *file_list;                  /* static artwork file array */
   struct FileInfo *dynamic_file_list;          /* dynamic artwrk file array */
 
+  int num_suffix_list_entries;
+
   struct ConfigInfo *suffix_list;              /* parameter suffixes array */
 
   int num_base_prefixes;
@@ -533,7 +547,14 @@ struct ArtworkListInfo
   char **ext1_suffixes;                                /* property suffixes array 1 */
   char **ext2_suffixes;                                /* property suffixes array 2 */
 
+  int num_property_mapping_entries;
+
+  struct PropertyMapping *property_mapping;    /* mapping token -> artwork */
+
+  int sizeof_artwork_list_entry;
+
   struct ListNodeInfo **artwork_list;          /* static artwork node array */
+  struct ListNodeInfo **dynamic_artwork_list;  /* dynamic artwrk node array */
   struct ListNode *content_list;               /* dynamic artwork node list */
 
   void *(*load_artwork)(char *);               /* constructor function */
@@ -551,6 +572,7 @@ extern struct VideoSystemInfo       video;
 extern struct AudioSystemInfo  audio;
 extern struct GfxInfo          gfx;
 extern struct FontInfo         font;
+extern struct AnimInfo         anim;
 extern struct ArtworkInfo      artwork;
 extern struct JoystickInfo     joystick;
 extern struct SetupInfo                setup;
@@ -629,6 +651,8 @@ Bitmap *LoadImage(char *);
 Bitmap *LoadCustomImage(char *);
 void ReloadCustomImage(Bitmap *, char *);
 
+Bitmap *ZoomBitmap(Bitmap *, int, int);
+
 inline void OpenAudio(void);
 inline void CloseAudio(void);
 inline void SetAudioMode(boolean);