rnd-20030119-1-src
[rocksndiamonds.git] / src / libgame / setup.h
index f299f3d9ab5e514e3f3bef215b855f9b79eb6eec..e5dc50d88ea7b4c873f64a185d9653730f8efe40 100644 (file)
 /* cookie token for file identifier and version number */
 #define TOKEN_STR_FILE_IDENTIFIER      "file_identifier"
 
-/* structures for setup file handling */
-struct SetupFileList
-{
-  char *token;
-  char *value;
-  struct SetupFileList *next;
-};
-
 struct TokenInfo
 {
   int type;
@@ -171,6 +163,7 @@ struct TokenInfo
                         ARTWORKCLASS_UNDEFINED)
 
 
+void setLevelArtworkDir(TreeInfo *);
 char *getLevelFilename(int);
 char *getTapeFilename(int);
 char *getScoreFilename(int);
@@ -178,7 +171,8 @@ char *getSetupFilename(void);
 char *getImageFilename(char *);
 char *getCustomImageFilename(char *);
 char *getCustomSoundFilename(char *);
-char *getCustomSoundConfigFilename(void);
+char *getCustomArtworkFilename(char *, int);
+char *getCustomArtworkConfigFilename(int);
 char *getCustomMusicDirectory(void);
 
 void InitTapeDirectory(char *);
@@ -195,7 +189,7 @@ TreeInfo *getTreeInfoFirstGroupEntry(TreeInfo *);
 int numTreeInfoInGroup(TreeInfo *);
 int posTreeInfo(TreeInfo *);
 TreeInfo *getTreeInfoFromPos(TreeInfo *, int);
-TreeInfo *getTreeInfoFromFilename(TreeInfo *, char *);
+TreeInfo *getTreeInfoFromIdentifier(TreeInfo *, char *);
 void dumpTreeInfo(TreeInfo *, int);
 void sortTreeInfo(TreeInfo **,
                  int (*compare_function)(const void *, const void *));
@@ -212,7 +206,9 @@ boolean checkCookieString(const char *, const char *);
 
 char *getFormattedSetupEntry(char *, char *);
 void freeSetupFileList(struct SetupFileList *);
+struct SetupFileList *newSetupFileList(char *, char *);
 char *getTokenValue(struct SetupFileList *, char *);
+void setTokenValue(struct SetupFileList *, char *, char *);
 struct SetupFileList *loadSetupFileList(char *);
 void checkSetupFileListIdentifier(struct SetupFileList *, char *);
 void setSetupInfo(struct TokenInfo *, int, char *);