protected virtual void ShowQuests(QuestState questStateMask) { currentQuestStateMask = questStateMask; noQuestsMessage = GetNoQuestsMessage(questStateMask); List <QuestInfo> questList = new List <QuestInfo>(); if (useGroups) { var records = QuestLog.GetAllGroupsAndQuests(questStateMask, true); foreach (var record in records) { if (!IsQuestVisible(record.questTitle)) { continue; } questList.Add(GetQuestInfo(record.groupName, record.questTitle)); } } else { string[] titles = QuestLog.GetAllQuests(questStateMask, true, null); foreach (var title in titles) { if (!IsQuestVisible(title)) { continue; } questList.Add(GetQuestInfo(string.Empty, title)); } } quests = questList.ToArray(); OnQuestListUpdated(); }