X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Fsetup.c;h=4cee439fcafd47cda4d9dcc700e0777733174e34;hb=3c812299839bfafcdf7765b35f7e4683f8553b69;hp=e223a0b84bb2b66992746dbe8c6375d299016341;hpb=960ea54cd621d69a22f1ae0a59363c7a1afef868;p=rocksndiamonds.git diff --git a/src/libgame/setup.c b/src/libgame/setup.c index e223a0b8..4cee439f 100644 --- a/src/libgame/setup.c +++ b/src/libgame/setup.c @@ -43,14 +43,13 @@ static char *levelclass_desc[NUM_LEVELCLASS_DESC] = "DX Boulderdash" }; - #define LEVELCOLOR(n) (IS_LEVELCLASS_TUTORIAL(n) ? FC_BLUE : \ IS_LEVELCLASS_CLASSICS(n) ? FC_RED : \ - IS_LEVELCLASS_BD(n) ? FC_YELLOW : \ - IS_LEVELCLASS_EM(n) ? FC_YELLOW : \ - IS_LEVELCLASS_SP(n) ? FC_YELLOW : \ - IS_LEVELCLASS_DX(n) ? FC_YELLOW : \ - IS_LEVELCLASS_SB(n) ? FC_YELLOW : \ + IS_LEVELCLASS_BD(n) ? FC_GREEN : \ + IS_LEVELCLASS_EM(n) ? FC_GREEN : \ + IS_LEVELCLASS_SP(n) ? FC_GREEN : \ + IS_LEVELCLASS_DX(n) ? FC_GREEN : \ + IS_LEVELCLASS_SB(n) ? FC_GREEN : \ IS_LEVELCLASS_CONTRIB(n) ? FC_GREEN : \ IS_LEVELCLASS_PRIVATE(n) ? FC_RED : \ FC_BLUE) @@ -69,7 +68,7 @@ static char *levelclass_desc[NUM_LEVELCLASS_DESC] = #define ARTWORKCOLOR(n) (IS_ARTWORKCLASS_CLASSICS(n) ? FC_RED : \ IS_ARTWORKCLASS_CONTRIB(n) ? FC_GREEN : \ IS_ARTWORKCLASS_PRIVATE(n) ? FC_RED : \ - IS_ARTWORKCLASS_LEVEL(n) ? FC_YELLOW : \ + IS_ARTWORKCLASS_LEVEL(n) ? FC_GREEN : \ FC_BLUE) #define ARTWORKSORTING(n) (IS_ARTWORKCLASS_CLASSICS(n) ? 0 : \ @@ -2877,16 +2876,10 @@ static int compareTreeInfoEntries(const void *object1, const void *object2) if (entry1->parent_link || entry2->parent_link) compare_result = (entry1->parent_link ? -1 : +1); + else if (entry1->level_group != entry2->level_group) + compare_result = (entry1->level_group ? -1 : +1); else if (entry1->sort_priority == entry2->sort_priority) - { - char *name1 = getStringToLower(entry1->name_sorting); - char *name2 = getStringToLower(entry2->name_sorting); - - compare_result = strcmp(name1, name2); - - free(name1); - free(name2); - } + compare_result = strcasecmp(entry1->name_sorting, entry2->name_sorting); else if (class_sorting1 == class_sorting2) compare_result = entry1->sort_priority - entry2->sort_priority; else