static void InitArtworkInfo(void);
static void InitLevelArtworkInfo(void);
static void InitNetworkServer(void);
-static void InitImageConfig();
+static void InitImages(void);
static void InitMixer(void);
static void InitSound(void);
static void InitGfx(void);
InitArtworkInfo(); /* needed before loading gfx, sound & music */
InitCounter();
- InitImageConfig();
InitMixer();
InitJoysticks();
InitRND(NEW_RANDOMIZE);
InitLevelInfo();
InitLevelArtworkInfo();
InitGadgets(); /* needs to know number of level series */
+ InitImages(); /* needs to know current level directory */
InitSound(); /* needs to know current level directory */
InitGfxBackground();
#endif
}
-static void InitImageConfig()
+static void InitImages()
{
InitImageList(image_config, NUM_IMAGE_CONFIG_ENTRIES);
+
+ /* load custom images */
+ ReloadCustomImages();
}
static void InitMixer()
clip_gc_values.graphics_exposures = False;
clip_gc_valuemask = GCGraphicsExposures;
- tile_clip_gc =
- XCreateGC(display, window->drawable, clip_gc_valuemask, &clip_gc_values);
+ tile_clip_gc = XCreateGC(display, window->drawable,
+ clip_gc_valuemask, &clip_gc_values);
for(i=0; i<NUM_BITMAPS; i++)
{
/* create graphic context structures needed for clipping */
clip_gc_values.graphics_exposures = False;
clip_gc_valuemask = GCGraphicsExposures;
- copy_clipmask_gc =
- XCreateGC(display, pix[PIX_BACK]->clip_mask,
- clip_gc_valuemask, &clip_gc_values);
+ copy_clipmask_gc = XCreateGC(display, pix[PIX_BACK]->clip_mask,
+ clip_gc_valuemask, &clip_gc_values);
/* create only those clipping Pixmaps we really need */
for(i=0; tile_needs_clipping[i].start>=0; i++)
int tile = tile_needs_clipping[i].start + j;
int graphic = tile;
int src_x, src_y;
- int pixmap_nr;
+ Bitmap *src_bitmap;
Pixmap src_pixmap;
- getGraphicSource(graphic, &pixmap_nr, &src_x, &src_y);
- src_pixmap = pix[pixmap_nr]->clip_mask;
+ getGraphicSource(graphic, &src_bitmap, &src_x, &src_y);
+ src_pixmap = src_bitmap->clip_mask;
tile_clipmask[tile] = XCreatePixmap(display, window->drawable,
TILEX, TILEY, 1);
ReloadCustomImage(pix[i], image_filename[i]);
}
+ ReloadCustomImages();
+
FreeTileClipmasks();
InitTileClipmasks();
InitGfxBackground();
}
for(i=0; i<MAX_GRAPHICS; i++)
- {
- int bitmap_nr;
-
- getGraphicSource(i, &bitmap_nr,
+ getGraphicSource(i, &graphic_info[i].bitmap,
&graphic_info[i].src_x, &graphic_info[i].src_y);
-
- graphic_info[i].bitmap = pix[bitmap_nr];
- }
}
void InitElementProperties()
{
if (strcmp(command, "create graphicsinfo.conf") == 0)
{
- printf("# (Currently only \"name\" and \"sort_priority\" recognized.)\n");
+ int i;
+
+ printf("# You can configure additional/alternative image files here.\n");
+ printf("# (The images below are default and therefore commented out.)\n");
printf("\n");
printf("%s\n", getFormattedSetupEntry("name", "Classic Graphics"));
printf("\n");
printf("%s\n", getFormattedSetupEntry("sort_priority", "100"));
+ printf("\n");
+
+ for (i=0; i<NUM_IMAGE_CONFIG_ENTRIES; i++)
+ printf("# %s\n",
+ getFormattedSetupEntry(image_config[i].token,
+ image_config[i].default_filename));
}
else if (strcmp(command, "create soundsinfo.conf") == 0)
{
int i;
- printf("# You can configure additional/alternative sound effects here\n");
+ printf("# You can configure additional/alternative sound files here.\n");
printf("# (The sounds below are default and therefore commented out.)\n");
printf("\n");
printf("%s\n", getFormattedSetupEntry("name", "Classic Sounds"));
printf("\n");
printf("%s\n", getFormattedSetupEntry("sort_priority", "100"));
}
+ else if (strcmp(command, "help") == 0)
+ {
+ printf("The following commands are recognized:\n");
+ printf(" \"create graphicsinfo.conf\"\n");
+ printf(" \"create soundsinfo.conf\"\n");
+ printf(" \"create musicinfo.conf\"\n");
+ }
}
void CloseAllAndExit(int exit_value)