15 #define SET_TYPE "music"
25 "old_0",
"old_1",
"old_2",
"old_3",
"old_4",
"old_5",
"old_6",
"old_7",
"old_8",
"old_9",
26 "new_0",
"new_1",
"new_2",
"new_3",
"new_4",
"new_5",
"new_6",
"new_7",
"new_8",
"new_9",
27 "ezy_0",
"ezy_1",
"ezy_2",
"ezy_3",
"ezy_4",
"ezy_5",
"ezy_6",
"ezy_7",
"ezy_8",
"ezy_9",
32 template <
class T,
size_t Tnum_files,
bool Tsearch_in_tars>
35 template <
class Tbase_set>
41 template <
class Tbase_set>
46 const Tbase_set *best = NULL;
48 if (c->GetNumMissing() != 0)
continue;
51 (best->fallback && !c->fallback) ||
52 best->valid_files < c->valid_files ||
53 (best->valid_files == c->valid_files &&
54 (best->shortname == c->shortname && best->version < c->version))) {
63 bool MusicSet::FillSetDetails(
IniFile *ini,
const char *path,
const char *full_filename)
67 this->num_available = 0;
71 if (names == NULL ||
StrEmpty(filename)) {
80 for (
const char *p = filename; p != NULL; p = strchr(p, PATHSEPCHAR)) {
83 while (*p == PATHSEPCHAR) p++;
85 item = names->
GetItem(p,
false);
90 DEBUG(grf, 0,
"Base music set song name missing: %s", filename);
95 this->track_nr[i] = j++;
96 this->num_available++;