+#if 1
+ {
+ char *identifier = level_node->subdir;
+ char *type_string = ARTWORK_DIRECTORY((*artwork_node)->type);
+ char *type_identifier =
+ getStringCat2WithSeparator(type_string, identifier, ".");
+ int i;
+
+ printf("::: adding hash entry for set '%s' ...\n", type_identifier);
+
+ setHashEntry(artworkinfo_hash, type_identifier, "true");
+
+ ldi = **artwork_node;
+ for (i = 0; artworkinfo_tokens[i].type != -1; i++)
+ {
+ char *token = getStringCat2WithSeparator(type_identifier,
+ artworkinfo_tokens[i].text,
+ ".");
+ char *value = getSetupValue(artworkinfo_tokens[i].type,
+ artworkinfo_tokens[i].value);
+ if (value != NULL)
+ {
+ setHashEntry(artworkinfo_hash, token, value);
+
+ printf("::: - setting '%s' => '%s'\n\n",
+ token, value);
+ }
+
+ checked_free(token);
+ }
+
+ free(type_identifier);
+ }
+#endif
+ }
+
+ free(path);
+ }
+
+ if (level_node->node_group != NULL)
+ LoadArtworkInfoFromLevelInfo(artwork_node, level_node->node_group);
+
+ level_node = level_node->next;
+ }
+}
+
+void LoadLevelArtworkInfo()
+{
+ DrawInitText("Looking for custom level artwork:", 120, FC_GREEN);
+
+ LoadArtworkInfoFromLevelInfo(&artwork.gfx_first, leveldir_first_all);
+ LoadArtworkInfoFromLevelInfo(&artwork.snd_first, leveldir_first_all);
+ LoadArtworkInfoFromLevelInfo(&artwork.mus_first, leveldir_first_all);
+
+ SaveArtworkInfoCache();
+
+ /* needed for reloading level artwork not known at ealier stage */
+
+ if (!strEqual(artwork.gfx_current_identifier, setup.graphics_set))
+ {
+ artwork.gfx_current =
+ getTreeInfoFromIdentifier(artwork.gfx_first, setup.graphics_set);
+ if (artwork.gfx_current == NULL)
+ artwork.gfx_current =
+ getTreeInfoFromIdentifier(artwork.gfx_first, GFX_CLASSIC_SUBDIR);
+ if (artwork.gfx_current == NULL)
+ artwork.gfx_current = getFirstValidTreeInfoEntry(artwork.gfx_first);
+ }
+
+ if (!strEqual(artwork.snd_current_identifier, setup.sounds_set))
+ {
+ artwork.snd_current =
+ getTreeInfoFromIdentifier(artwork.snd_first, setup.sounds_set);
+ if (artwork.snd_current == NULL)
+ artwork.snd_current =
+ getTreeInfoFromIdentifier(artwork.snd_first, SND_CLASSIC_SUBDIR);
+ if (artwork.snd_current == NULL)
+ artwork.snd_current = getFirstValidTreeInfoEntry(artwork.snd_first);
+ }
+
+ if (!strEqual(artwork.mus_current_identifier, setup.music_set))
+ {
+ artwork.mus_current =
+ getTreeInfoFromIdentifier(artwork.mus_first, setup.music_set);
+ if (artwork.mus_current == NULL)
+ artwork.mus_current =
+ getTreeInfoFromIdentifier(artwork.mus_first, MUS_CLASSIC_SUBDIR);
+ if (artwork.mus_current == NULL)
+ artwork.mus_current = getFirstValidTreeInfoEntry(artwork.mus_first);
+ }