rnd-20021211-1-src
authorHolger Schemel <info@artsoft.org>
Wed, 11 Dec 2002 00:03:04 +0000 (01:03 +0100)
committerHolger Schemel <info@artsoft.org>
Sat, 30 Aug 2014 08:39:11 +0000 (10:39 +0200)
15 files changed:
Makefile
src/Makefile
src/conf_chr.c
src/conf_e2g.c
src/conf_gen.c [new file with mode: 0644]
src/conf_gfx.c
src/conf_gfx.h
src/conftime.h
src/editor.c
src/init.c
src/libgame/gadgets.c
src/libgame/misc.c
src/libgame/text.c
src/main.c
src/main.h

index 6fb23c4a98d4898409fcf963ba7768edac7e2f4d..8e6fad25f32326daa7a3444794d2ff795d757e86 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -91,6 +91,7 @@ auto-conf:
        ./Scripts/create_element_defs.pl --graphics > src/conf_gfx.h
        ./Scripts/create_element_defs.pl --sounds   > src/conf_snd.h
        ./Scripts/create_element_defs.pl --chars    > src/conf_chr.c
+       ./Scripts/create_element_defs.pl --generic  > src/conf_gen.c
        ./Scripts/create_element_defs.pl --el2gfx   > src/conf_e2g.c
 
 run:
index 7c897097c3e0d525657834d0daaf69224d575b91..16d13cf4912c08df081f3e66df912f6b3a05a506 100644 (file)
@@ -179,6 +179,7 @@ conf_gfx.h: conf_gfx.c
        ../Scripts/create_element_defs.pl --graphics > conf_gfx.h
        ../Scripts/create_element_defs.pl --el2gfx   > conf_e2g.c
        ../Scripts/create_element_defs.pl --chars    > conf_chr.c
+       ../Scripts/create_element_defs.pl --generic  > conf_gen.c
 
 conf_snd.h: conf_snd.c
        ../Scripts/create_element_defs.pl --sounds   > conf_snd.h
index 3f2923d0f91e0cc6901f82604cb04aadf3696a9c..52940986bed096965d2742259e186ad443be765b 100644 (file)
@@ -16,7 +16,7 @@
 #ifndef CONF_CHR_C
 #define CONF_CHR_C
 
-/* values for character graphics configuration */
+/* values for graphics configuration (character elements) */
 
   { "char_space",                              "RocksFontEM.pcx"       },
   { "char_space.xpos",                         "0"                     },
index b7ba1638c8787bedf8909e6230e960c324cc22b4..6972e8439cc4c6acf6971287bfd759fb0957a213 100644 (file)
@@ -16,7 +16,7 @@
 #ifndef CONF_E2G_C
 #define CONF_E2G_C
 
-/* values for element/graphics configuration */
+/* values for element/graphics mapping configuration */
 
 static struct
 {
diff --git a/src/conf_gen.c b/src/conf_gen.c
new file mode 100644 (file)
index 0000000..2634c6a
--- /dev/null
@@ -0,0 +1,182 @@
+/***********************************************************
+* Rocks'n'Diamonds -- McDuffin Strikes Back!               *
+*----------------------------------------------------------*
+* (c) 1995-2002 Artsoft Entertainment                      *
+*               Holger Schemel                             *
+*               Detmolder Strasse 189                      *
+*               33604 Bielefeld                            *
+*               Germany                                    *
+*               e-mail: info@artsoft.org                   *
+*----------------------------------------------------------*
+* conf_gen.c                                               *
+***********************************************************/
+
+/* ----- this file was automatically generated -- do not edit by hand ----- */
+
+#ifndef CONF_GEN_C
+#define CONF_GEN_C
+
+/* values for graphics configuration (generic elements) */
+
+  { "generic_0",                               "RocksElements.pcx"     },
+  { "generic_0.xpos",                          "4"                     },
+  { "generic_0.ypos",                          "0"                     },
+  { "generic_0.frames",                                "1"                     },
+
+  { "generic_1",                               "RocksElements.pcx"     },
+  { "generic_1.xpos",                          "4"                     },
+  { "generic_1.ypos",                          "0"                     },
+  { "generic_1.frames",                                "1"                     },
+
+  { "generic_2",                               "RocksElements.pcx"     },
+  { "generic_2.xpos",                          "4"                     },
+  { "generic_2.ypos",                          "0"                     },
+  { "generic_2.frames",                                "1"                     },
+
+  { "generic_3",                               "RocksElements.pcx"     },
+  { "generic_3.xpos",                          "4"                     },
+  { "generic_3.ypos",                          "0"                     },
+  { "generic_3.frames",                                "1"                     },
+
+  { "generic_4",                               "RocksElements.pcx"     },
+  { "generic_4.xpos",                          "4"                     },
+  { "generic_4.ypos",                          "0"                     },
+  { "generic_4.frames",                                "1"                     },
+
+  { "generic_5",                               "RocksElements.pcx"     },
+  { "generic_5.xpos",                          "4"                     },
+  { "generic_5.ypos",                          "0"                     },
+  { "generic_5.frames",                                "1"                     },
+
+  { "generic_6",                               "RocksElements.pcx"     },
+  { "generic_6.xpos",                          "4"                     },
+  { "generic_6.ypos",                          "0"                     },
+  { "generic_6.frames",                                "1"                     },
+
+  { "generic_7",                               "RocksElements.pcx"     },
+  { "generic_7.xpos",                          "4"                     },
+  { "generic_7.ypos",                          "0"                     },
+  { "generic_7.frames",                                "1"                     },
+
+  { "generic_8",                               "RocksElements.pcx"     },
+  { "generic_8.xpos",                          "4"                     },
+  { "generic_8.ypos",                          "0"                     },
+  { "generic_8.frames",                                "1"                     },
+
+  { "generic_9",                               "RocksElements.pcx"     },
+  { "generic_9.xpos",                          "4"                     },
+  { "generic_9.ypos",                          "0"                     },
+  { "generic_9.frames",                                "1"                     },
+
+  { "generic_10",                              "RocksElements.pcx"     },
+  { "generic_10.xpos",                         "4"                     },
+  { "generic_10.ypos",                         "0"                     },
+  { "generic_10.frames",                       "1"                     },
+
+  { "generic_11",                              "RocksElements.pcx"     },
+  { "generic_11.xpos",                         "4"                     },
+  { "generic_11.ypos",                         "0"                     },
+  { "generic_11.frames",                       "1"                     },
+
+  { "generic_12",                              "RocksElements.pcx"     },
+  { "generic_12.xpos",                         "4"                     },
+  { "generic_12.ypos",                         "0"                     },
+  { "generic_12.frames",                       "1"                     },
+
+  { "generic_13",                              "RocksElements.pcx"     },
+  { "generic_13.xpos",                         "4"                     },
+  { "generic_13.ypos",                         "0"                     },
+  { "generic_13.frames",                       "1"                     },
+
+  { "generic_14",                              "RocksElements.pcx"     },
+  { "generic_14.xpos",                         "4"                     },
+  { "generic_14.ypos",                         "0"                     },
+  { "generic_14.frames",                       "1"                     },
+
+  { "generic_15",                              "RocksElements.pcx"     },
+  { "generic_15.xpos",                         "4"                     },
+  { "generic_15.ypos",                         "0"                     },
+  { "generic_15.frames",                       "1"                     },
+
+  { "generic_16",                              "RocksElements.pcx"     },
+  { "generic_16.xpos",                         "4"                     },
+  { "generic_16.ypos",                         "0"                     },
+  { "generic_16.frames",                       "1"                     },
+
+  { "generic_17",                              "RocksElements.pcx"     },
+  { "generic_17.xpos",                         "4"                     },
+  { "generic_17.ypos",                         "0"                     },
+  { "generic_17.frames",                       "1"                     },
+
+  { "generic_18",                              "RocksElements.pcx"     },
+  { "generic_18.xpos",                         "4"                     },
+  { "generic_18.ypos",                         "0"                     },
+  { "generic_18.frames",                       "1"                     },
+
+  { "generic_19",                              "RocksElements.pcx"     },
+  { "generic_19.xpos",                         "4"                     },
+  { "generic_19.ypos",                         "0"                     },
+  { "generic_19.frames",                       "1"                     },
+
+  { "generic_20",                              "RocksElements.pcx"     },
+  { "generic_20.xpos",                         "4"                     },
+  { "generic_20.ypos",                         "0"                     },
+  { "generic_20.frames",                       "1"                     },
+
+  { "generic_21",                              "RocksElements.pcx"     },
+  { "generic_21.xpos",                         "4"                     },
+  { "generic_21.ypos",                         "0"                     },
+  { "generic_21.frames",                       "1"                     },
+
+  { "generic_22",                              "RocksElements.pcx"     },
+  { "generic_22.xpos",                         "4"                     },
+  { "generic_22.ypos",                         "0"                     },
+  { "generic_22.frames",                       "1"                     },
+
+  { "generic_23",                              "RocksElements.pcx"     },
+  { "generic_23.xpos",                         "4"                     },
+  { "generic_23.ypos",                         "0"                     },
+  { "generic_23.frames",                       "1"                     },
+
+  { "generic_24",                              "RocksElements.pcx"     },
+  { "generic_24.xpos",                         "4"                     },
+  { "generic_24.ypos",                         "0"                     },
+  { "generic_24.frames",                       "1"                     },
+
+  { "generic_25",                              "RocksElements.pcx"     },
+  { "generic_25.xpos",                         "4"                     },
+  { "generic_25.ypos",                         "0"                     },
+  { "generic_25.frames",                       "1"                     },
+
+  { "generic_26",                              "RocksElements.pcx"     },
+  { "generic_26.xpos",                         "4"                     },
+  { "generic_26.ypos",                         "0"                     },
+  { "generic_26.frames",                       "1"                     },
+
+  { "generic_27",                              "RocksElements.pcx"     },
+  { "generic_27.xpos",                         "4"                     },
+  { "generic_27.ypos",                         "0"                     },
+  { "generic_27.frames",                       "1"                     },
+
+  { "generic_28",                              "RocksElements.pcx"     },
+  { "generic_28.xpos",                         "4"                     },
+  { "generic_28.ypos",                         "0"                     },
+  { "generic_28.frames",                       "1"                     },
+
+  { "generic_29",                              "RocksElements.pcx"     },
+  { "generic_29.xpos",                         "4"                     },
+  { "generic_29.ypos",                         "0"                     },
+  { "generic_29.frames",                       "1"                     },
+
+  { "generic_30",                              "RocksElements.pcx"     },
+  { "generic_30.xpos",                         "4"                     },
+  { "generic_30.ypos",                         "0"                     },
+  { "generic_30.frames",                       "1"                     },
+
+  { "generic_31",                              "RocksElements.pcx"     },
+  { "generic_31.xpos",                         "4"                     },
+  { "generic_31.ypos",                         "0"                     },
+  { "generic_31.frames",                       "1"                     },
+
+
+#endif /* CONF_GEN_C */
index cf209544f863062f6eb8236ebf128403095e446c..5fedea5a08b5ea570facf924e3420598ac1e8bdb 100644 (file)
@@ -2537,6 +2537,7 @@ struct ConfigInfo image_config[] =
   { "scrollbar_yellow.frames",                 "1"                     },
 
 #include "conf_chr.c"  /* include auto-generated data structure definitions */
+#include "conf_gen.c"  /* include auto-generated data structure definitions */
 
   /* images not associated to game elements (used for menu screens etc.) */
   /* keyword to stop parser: "NO_MORE_ELEMENT_IMAGES" <-- do not change! */
index 344f57435c8aaad37c1aa90703cf04bcde1c3306..b2fe3673cc2b317a5f279933515ccaf23e440c18 100644 (file)
@@ -16,7 +16,7 @@
 #ifndef CONF_GFX_H
 #define CONF_GFX_H
 
-/* values for graphics configuration */
+/* values for graphics configuration (normal elements) */
 
 #define IMG_BD_WALL                            0
 #define IMG_BD_ROCK                            1
 #define IMG_CHAR_DEGREE                                599
 #define IMG_CHAR_TM                            600
 #define IMG_CHAR_CURSOR                                601
-#define IMG_MENU_BACK                          602
-#define IMG_MENU_DOOR                          603
-#define IMG_MENU_TOONS                         604
-#define IMG_MENU_FONT_BIG                      605
-#define IMG_MENU_FONT_SMALL                    606
-#define IMG_MENU_FONT_MEDIUM                   607
-#define IMG_MENU_FONT_EM                       608
-#define IMG_OLD_PIX_ELEMENTS                   609
-#define IMG_OLD_PIX_HEROES                     610
-#define IMG_OLD_PIX_SP                         611
-#define IMG_OLD_PIX_DC                         612
-#define IMG_OLD_PIX_MORE                       613
-#define IMG_OLD_PIX_FONT_EM                    614
+#define IMG_GENERIC_0                          602
+#define IMG_GENERIC_1                          603
+#define IMG_GENERIC_2                          604
+#define IMG_GENERIC_3                          605
+#define IMG_GENERIC_4                          606
+#define IMG_GENERIC_5                          607
+#define IMG_GENERIC_6                          608
+#define IMG_GENERIC_7                          609
+#define IMG_GENERIC_8                          610
+#define IMG_GENERIC_9                          611
+#define IMG_GENERIC_10                         612
+#define IMG_GENERIC_11                         613
+#define IMG_GENERIC_12                         614
+#define IMG_GENERIC_13                         615
+#define IMG_GENERIC_14                         616
+#define IMG_GENERIC_15                         617
+#define IMG_GENERIC_16                         618
+#define IMG_GENERIC_17                         619
+#define IMG_GENERIC_18                         620
+#define IMG_GENERIC_19                         621
+#define IMG_GENERIC_20                         622
+#define IMG_GENERIC_21                         623
+#define IMG_GENERIC_22                         624
+#define IMG_GENERIC_23                         625
+#define IMG_GENERIC_24                         626
+#define IMG_GENERIC_25                         627
+#define IMG_GENERIC_26                         628
+#define IMG_GENERIC_27                         629
+#define IMG_GENERIC_28                         630
+#define IMG_GENERIC_29                         631
+#define IMG_GENERIC_30                         632
+#define IMG_GENERIC_31                         633
+#define IMG_MENU_BACK                          634
+#define IMG_MENU_DOOR                          635
+#define IMG_MENU_TOONS                         636
+#define IMG_MENU_FONT_BIG                      637
+#define IMG_MENU_FONT_SMALL                    638
+#define IMG_MENU_FONT_MEDIUM                   639
+#define IMG_MENU_FONT_EM                       640
+#define IMG_OLD_PIX_ELEMENTS                   641
+#define IMG_OLD_PIX_HEROES                     642
+#define IMG_OLD_PIX_SP                         643
+#define IMG_OLD_PIX_DC                         644
+#define IMG_OLD_PIX_MORE                       645
+#define IMG_OLD_PIX_FONT_EM                    646
 
-#define NUM_IMAGE_FILES                                615
+#define NUM_IMAGE_FILES                                647
 
 #endif /* CONF_GFX_H */
index ed69c66515be0c7454305bd39387d8639dee1cdf..0b60fc5af3f6c47dd91204500d298c2cede99276 100644 (file)
@@ -1 +1 @@
-#define COMPILE_DATE_STRING "[2002-12-10 02:39]"
+#define COMPILE_DATE_STRING "[2002-12-11 00:49]"
index 35d7021ed97eb0a27cb663e6222d8623ff041592..cbf6de4a301ec590eb650d28202043c40e689c26 100644 (file)
@@ -1182,10 +1182,70 @@ int editor_element[] =
   EL_CHAR('R'),
   */
 
-  EL_EMPTY,
-  EL_EMPTY,
-  EL_EMPTY,
-  EL_EMPTY,
+  EL_CHAR('C'),
+  EL_CHAR('U'),
+  EL_CHAR('S'),
+  EL_CHAR('-'),
+
+  EL_CHAR('T'),
+  EL_CHAR('O'),
+  EL_CHAR('M'),
+  EL_CHAR(' '),
+
+  EL_CHAR('E'),
+  EL_CHAR('L'),
+  EL_CHAR('E'),
+  EL_CHAR('M'),
+
+  EL_CHAR('E'),
+  EL_CHAR('N'),
+  EL_CHAR('T'),
+  EL_CHAR('S'),
+
+  EL_GENERIC_START + 0,
+  EL_GENERIC_START + 1,
+  EL_GENERIC_START + 2,
+  EL_GENERIC_START + 3,
+
+  EL_GENERIC_START + 4,
+  EL_GENERIC_START + 5,
+  EL_GENERIC_START + 6,
+  EL_GENERIC_START + 7,
+
+  EL_GENERIC_START + 8,
+  EL_GENERIC_START + 9,
+  EL_GENERIC_START + 10,
+  EL_GENERIC_START + 11,
+
+  EL_GENERIC_START + 12,
+  EL_GENERIC_START + 13,
+  EL_GENERIC_START + 14,
+  EL_GENERIC_START + 15,
+
+  EL_GENERIC_START + 16,
+  EL_GENERIC_START + 17,
+  EL_GENERIC_START + 18,
+  EL_GENERIC_START + 19,
+
+  EL_GENERIC_START + 20,
+  EL_GENERIC_START + 21,
+  EL_GENERIC_START + 22,
+  EL_GENERIC_START + 23,
+
+  EL_GENERIC_START + 24,
+  EL_GENERIC_START + 25,
+  EL_GENERIC_START + 26,
+  EL_GENERIC_START + 27,
+
+  EL_GENERIC_START + 28,
+  EL_GENERIC_START + 29,
+  EL_GENERIC_START + 30,
+  EL_GENERIC_START + 31,
+
+  EL_CHAR('T'),
+  EL_CHAR('E'),
+  EL_CHAR('X'),
+  EL_CHAR('T'),
 
   EL_CHAR(' '),
   EL_CHAR('!'),
@@ -1265,7 +1325,12 @@ int editor_element[] =
   EL_CHAR('Ö'),
   EL_CHAR('Ü'),
   EL_CHAR('^'),
-  EL_CHAR(' ')
+  EL_CHAR('_'),
+
+  EL_CHAR(' '),
+  EL_CHAR('°'),
+  EL_CHAR('´'),
+  EL_CHAR('|')
 };
 int elements_in_list = sizeof(editor_element)/sizeof(int);
 
@@ -1273,7 +1338,8 @@ static char *getElementInfoText(int element)
 {
   char *info_text = "unknown";
 
-  if (element < NUM_FILE_ELEMENTS)
+  if (element < NUM_FILE_ELEMENTS &&
+      element_info[element].editor_description != NULL)
     info_text = element_info[element].editor_description;
   else
     Error(ERR_WARN, "no element description for element %d", element);
index 42e502dcd94996ea0212e08d9c2bd7d77b4d6e7f..f682a3fcec5abe21a75bf79885c08acf7cbdd42b 100644 (file)
@@ -1037,6 +1037,10 @@ void InitElementInfo()
       IMG_CHAR_START + (i - EL_CHAR_START);
 #endif
 
+  for (i=EL_GENERIC_START; i<=EL_GENERIC_END; i++)
+    element_info[i].graphic[GFX_ACTION_DEFAULT] =
+      IMG_GENERIC_START + (i - EL_GENERIC_START);
+
 #if 0
   for (i=EL_SP_START; i<=EL_SP_END; i++)
   {
index 77eb4718d0c7f049a5be0ea1f372627820fc91d3..e34c245ba802847743eb2edaf6615625d045f059 100644 (file)
@@ -288,8 +288,13 @@ static void HandleGadgetTags(struct GadgetInfo *gi, int first_tag, va_list ap)
       case GDI_INFO_TEXT:
        {
          int max_textsize = MAX_INFO_TEXTSIZE - 1;
+         char *text = va_arg(ap, char *);
+
+         if (text != NULL)
+           strncpy(gi->info_text, text, max_textsize);
+         else
+           max_textsize = 0;
 
-         strncpy(gi->info_text, va_arg(ap, char *), max_textsize);
          gi->info_text[max_textsize] = '\0';
        }
        break;
index 910a7e95ef1d18a725549daad837bbf26a3c9ded..f6ea818788ea12d34855155862f717cae33209c7 100644 (file)
@@ -1550,7 +1550,13 @@ static void replaceArtworkListEntry(struct ArtworkListInfo *artwork_info,
 
   if (filename == NULL)
   {
-    Error(ERR_WARN, "cannot find artwork file '%s'", basename);
+    int error_mode = ERR_WARN;
+
+    /* we can get away without sounds and music, but not without graphics */
+    if (*listnode == NULL && artwork_info->type == ARTWORK_TYPE_GRAPHICS)
+      error_mode = ERR_EXIT;
+
+    Error(error_mode, "cannot find artwork file '%s'", basename);
     return;
   }
 
@@ -1597,6 +1603,17 @@ static void replaceArtworkListEntry(struct ArtworkListInfo *artwork_info,
     addNodeToList(&artwork_info->content_list, (*listnode)->source_filename,
                  *listnode);
   }
+  else
+  {
+    int error_mode = ERR_WARN;
+
+    /* we can get away without sounds and music, but not without graphics */
+    if (artwork_info->type == ARTWORK_TYPE_GRAPHICS)
+      error_mode = ERR_EXIT;
+
+    Error(error_mode, "cannot load artwork file '%s'", basename);
+    return;
+  }
 }
 
 static void LoadCustomArtwork(struct ArtworkListInfo *artwork_info,
index 231fab1968c8c3488b36003f1003422f585e7c70..414c187716422ecf8150a5be6e0a2a9a029991d2 100644 (file)
@@ -167,23 +167,23 @@ void DrawTextExt(DrawBuffer *bitmap, int x, int y, char *text,
     else if (c == '\\')                        /* bad luck ... */
       c = '/';
 
-    if ((c >= 32 && c <= 95) || c == '°' || c == '´')
+    if ((c >= 32 && c <= 95) || c == '°' || c == '´' || c == '|')
     {
       int src_x = ((c - 32) % FONT_CHARS_PER_LINE) * font_width;
       int src_y = ((c - 32) / FONT_CHARS_PER_LINE) * font_height + font_starty;
       int dest_x = x, dest_y = y;
 
-      if (c == '°' || c == '´')                /* map '°' and 'TM' signs */
+      if (c == '°' || c == '´' || c == '|')    /* map '°' and 'TM' signs */
       {
        if (font_type == FC_SPECIAL2)
        {
-         src_x = (c == '°' ? 1 : 2) * font_width;
+         src_x = (c == '°' ? 1 : c == '´' ? 2 : 3) * font_width;
          src_y = 4 * font_height;
        }
        else
        {
          src_x = FONT_CHARS_PER_LINE * font_width;
-         src_y = (c == '°' ? 1 : 2) * font_height + font_starty;
+         src_y = (c == '°' ? 1 : c == '´' ? 2 : 3) * font_height +font_starty;
        }
       }
 
index 958888e0c9e55cea03d324caffd8208bf1dd73dc..034fa77b96864b3cc983d96187a25ffb0c235863 100644 (file)
@@ -533,6 +533,41 @@ struct ElementInfo element_info[MAX_ELEMENTS] =
   { "spring",                  "spring"                        },
   { "trap",                    "trap"                          },
   { "dx_bomb",                 "stable bomb (DX style)"        },
+  { NULL,                      "-"                             },
+  { NULL,                      "-"                             },
+  { "generic",                 "generic element 0"             },
+  { "generic",                 "generic element 1"             },
+  { "generic",                 "generic element 2"             },
+  { "generic",                 "generic element 3"             },
+  { "generic",                 "generic element 4"             },
+  { "generic",                 "generic element 5"             },
+  { "generic",                 "generic element 6"             },
+  { "generic",                 "generic element 7"             },
+  { "generic",                 "generic element 8"             },
+  { "generic",                 "generic element 9"             },
+  { "generic",                 "generic element 10"            },
+  { "generic",                 "generic element 11"            },
+  { "generic",                 "generic element 12"            },
+  { "generic",                 "generic element 13"            },
+  { "generic",                 "generic element 14"            },
+  { "generic",                 "generic element 15"            },
+  { "generic",                 "generic element 16"            },
+  { "generic",                 "generic element 17"            },
+  { "generic",                 "generic element 18"            },
+  { "generic",                 "generic element 19"            },
+  { "generic",                 "generic element 20"            },
+  { "generic",                 "generic element 21"            },
+  { "generic",                 "generic element 22"            },
+  { "generic",                 "generic element 23"            },
+  { "generic",                 "generic element 24"            },
+  { "generic",                 "generic element 25"            },
+  { "generic",                 "generic element 26"            },
+  { "generic",                 "generic element 27"            },
+  { "generic",                 "generic element 28"            },
+  { "generic",                 "generic element 29"            },
+  { "generic",                 "generic element 30"            },
+  { "generic",                 "generic element 31"            },
+
   { NULL,                      "-"                             }
 
   /*
index 4889094c0ee6521af635e08634133c4a9dd8e5b9..b24799a61fcceadf7081f4b6aa17367e64780cfe 100644 (file)
 #include "conf_gfx.h"
 #include "conf_snd.h"
 
-#define IMG_EMPTY      IMG_EMPTY_SPACE
-#define IMG_SP_EMPTY   IMG_SP_EMPTY_SPACE
-#define IMG_CHAR_START IMG_CHAR_SPACE
+#define IMG_EMPTY              IMG_EMPTY_SPACE
+#define IMG_SP_EMPTY           IMG_SP_EMPTY_SPACE
+#define IMG_CHAR_START         IMG_CHAR_SPACE
+#define IMG_GENERIC_START      IMG_GENERIC_0
 
 #define WIN_XSIZE      672
 #define WIN_YSIZE      560
 
 #define EL_CHAR_START                  120
 #define EL_CHAR_ASCII0                 (EL_CHAR_START  - 32)
+#define EL_CHAR_ASCII0_START           (EL_CHAR_ASCII0 + 32)
 #define EL_CHAR_EXCLAM                 (EL_CHAR_ASCII0 + 33)
 #define EL_CHAR_QUOTEDBL               (EL_CHAR_ASCII0 + 34)
 #define EL_CHAR_NUMBERSIGN             (EL_CHAR_ASCII0 + 35)
 #define EL_CHAR_OE                     (EL_CHAR_ASCII0 + 92)
 #define EL_CHAR_UE                     (EL_CHAR_ASCII0 + 93)
 #define EL_CHAR_COPYRIGHT              (EL_CHAR_ASCII0 + 94)
+#define EL_CHAR_UNDERSCORE             (EL_CHAR_ASCII0 + 95)
+#define EL_CHAR_EMPTY                  (EL_CHAR_ASCII0 + 96)
+#define EL_CHAR_DEGREE                 (EL_CHAR_ASCII0 + 97)
+#define EL_CHAR_TM                     (EL_CHAR_ASCII0 + 98)
+#define EL_CHAR_CURSOR                 (EL_CHAR_ASCII0 + 99)
+#define EL_CHAR_ASCII0_END             (EL_CHAR_ASCII0 + 111)
 #define EL_CHAR_END                    (EL_CHAR_START  + 79)
 
-#define EL_CHAR(x)                     ((x) == 'Ä' ? EL_CHAR_AE : \
-                                        (x) == 'Ö' ? EL_CHAR_OE : \
-                                        (x) == 'Ü' ? EL_CHAR_UE : \
+#define EL_CHAR(x)                     ((x) == 'Ä' ? EL_CHAR_AE         : \
+                                        (x) == 'Ö' ? EL_CHAR_OE         : \
+                                        (x) == 'Ü' ? EL_CHAR_UE         : \
+                                        (x) == '^' ? EL_CHAR_COPYRIGHT  : \
+                                        (x) == '_' ? EL_CHAR_UNDERSCORE : \
+                                        (x) == '°' ? EL_CHAR_DEGREE     : \
+                                        (x) == '´' ? EL_CHAR_TM         : \
+                                        (x) == '|' ? EL_CHAR_CURSOR     : \
                                         EL_CHAR_A + (x) - 'A')
 
 #define EL_WALL_GROWING_X              200
 #define EL_TRAP                                356
 #define EL_DX_SUPABOMB                 357
 
-#define NUM_FILE_ELEMENTS              358
+#define EL_UNUSED_358                  358
+#define EL_UNUSED_359                  359
+
+#define EL_GENERIC_START               360
+#define EL_GENERIC_0                   (EL_GENERIC_START + 0)
+#define EL_GENERIC_31                  (EL_GENERIC_START + 31)
+#define EL_GENERIC_END                 (EL_GENERIC_START + 31)
+
+#define NUM_FILE_ELEMENTS              392
 
 
 /* "real" (and therefore drawable) runtime elements */