rnd-19990205-1
[rocksndiamonds.git] / src / files.c
index c8eaa4b92e07aa7cf68a2f583bfb3001807cf454..71d01e945fd9f35c3d38ee7736d2e38e2f1d44a0 100644 (file)
                         IS_LEVELCLASS_USER(n) ? LEVELCLASS_USER : \
                         LEVELCLASS_UNDEFINED)
 
+#define LEVELCOLOR(n)  (IS_LEVELCLASS_TUTORIAL(n) ? FC_BLUE : \
+                        IS_LEVELCLASS_CLASSICS(n) ? FC_YELLOW : \
+                        IS_LEVELCLASS_CONTRIBUTION(n) ? FC_GREEN : \
+                        IS_LEVELCLASS_USER(n) ? FC_RED : FC_BLUE)
+
 static void SaveUserLevelInfo();               /* for 'InitUserLevelDir()' */
 static char *getSetupLine(char *, int);                /* for 'SaveUserLevelInfo()' */
 
@@ -1198,7 +1203,7 @@ static struct SetupFileList *loadSetupFileList(char *filename)
     /* cut trailing comment or whitespace from input line */
     for (line_ptr = line; *line_ptr; line_ptr++)
     {
-      if (*line_ptr == '#' || *line_ptr == '\n')
+      if (*line_ptr == '#' || *line_ptr == '\n' || *line_ptr == '\r')
       {
        *line_ptr = '\0';
        break;
@@ -1516,6 +1521,7 @@ static int LoadLevelInfoFromLevelDir(char *level_directory, int start_entry)
        leveldir[current_entry].levels - 1;
       leveldir[current_entry].user_defined =
        (level_directory == options.level_directory ? FALSE : TRUE);
+      leveldir[current_entry].color = LEVELCOLOR(current_entry);
 
       freeSetupFileList(setup_file_list);
       current_entry++;