#define TREE_TYPE_LEVEL_DIR 3
#define TREE_TYPE_LEVEL_NR 4
+#define NUM_BASE_TREE_TYPES 4
#define NUM_TREE_TYPES 5
#define INFOTEXT_UNDEFINED ""
INFOTEXT_MUSIC_DIR : \
INFOTEXT_UNDEFINED)
+#define TREE_USERDIR(t) ((t) == TREE_TYPE_LEVEL_DIR ? \
+ getUserLevelDir(NULL) : \
+ (t) == TREE_TYPE_GRAPHICS_DIR ? \
+ getUserGraphicsDir() : \
+ (t) == TREE_TYPE_SOUNDS_DIR ? \
+ getUserSoundsDir() : \
+ (t) == TREE_TYPE_MUSIC_DIR ? \
+ getUserMusicDir() : \
+ NULL)
+
+#define TREE_FIRST_NODE_PTR(t) ((t) == TREE_TYPE_LEVEL_DIR ? \
+ &leveldir_first : \
+ (t) == TREE_TYPE_GRAPHICS_DIR ? \
+ &artwork.gfx_first : \
+ (t) == TREE_TYPE_SOUNDS_DIR ? \
+ &artwork.snd_first : \
+ (t) == TREE_TYPE_MUSIC_DIR ? \
+ &artwork.mus_first : \
+ NULL)
+
// values for artwork handling
#define LEVELDIR_ARTWORK_SET_PTR(leveldir, type) \
((type) == ARTWORK_TYPE_GRAPHICS ? \
(type) == ARTWORK_TYPE_MUSIC ? \
options.music_directory : "")
+#define USER_ARTWORK_DIRECTORY(type) \
+ ((type) == ARTWORK_TYPE_GRAPHICS ? \
+ getUserGraphicsDir() : \
+ (type) == ARTWORK_TYPE_SOUNDS ? \
+ getUserSoundsDir() : \
+ (type) == ARTWORK_TYPE_MUSIC ? \
+ getUserMusicDir() : "")
+
#define UPDATE_BUSY_STATE() \
{ \
if (gfx.draw_busy_anim_function != NULL) \