public void SetSortMethod(string[] filters) { if (filters == null) { return; } for (int index = 0; index < filters.Length; ++index) { this.mFilterMethod = !(filters[index] == CharacterQuestList.FilterValue(CharacterQuestList.EFilter.Unlock)) ? (!(filters[index] == CharacterQuestList.FilterValue(CharacterQuestList.EFilter.Lock)) ? (!(filters[index] == CharacterQuestList.FilterValue(CharacterQuestList.EFilter.Complete)) ? new CharacterQuestList.FilterMethod(this.OnFilter_ALL) : new CharacterQuestList.FilterMethod(this.OnFilter_Complete)) : new CharacterQuestList.FilterMethod(this.OnFilter_Lock)) : new CharacterQuestList.FilterMethod(this.OnFilter_Unlock); } }
public void UpdateStatus() { if (this.questType == CharacterQuestData.EType.Chara) { if (this.unitData1 != null) { if (this.unitData1.IsOpenCharacterQuest()) { List <KeyValuePair <QuestParam, bool> > characterQuests = CharacterQuestList.GetCharacterQuests(this.unitData1); int count = characterQuests.FindAll((Predicate <KeyValuePair <QuestParam, bool> >)(pair => pair.Key.state == QuestStates.Cleared)).Count; if (characterQuests.FindAll((Predicate <KeyValuePair <QuestParam, bool> >)(pair => { if (pair.Key.state == QuestStates.New) { return(pair.Value); } return(false); })).Count > 0) { this.status = CharacterQuestData.EStatus.New; } else if (count == characterQuests.Count) { this.status = CharacterQuestData.EStatus.Complete; } else { this.status = CharacterQuestData.EStatus.Challenged; } } else { this.status = CharacterQuestData.EStatus.Lock; } } else { this.status = CharacterQuestData.EStatus.Lock; } } else if (this.unitData1 != null && this.unitData2 != null) { List <KeyValuePair <QuestParam, bool> > collaboSkillQuests = CharacterQuestList.GetCollaboSkillQuests(this.unitData1, this.unitData2); int count = collaboSkillQuests.FindAll((Predicate <KeyValuePair <QuestParam, bool> >)(pair => pair.Key.state == QuestStates.Cleared)).Count; if (collaboSkillQuests.FindAll((Predicate <KeyValuePair <QuestParam, bool> >)(pair => { if (pair.Key.state == QuestStates.New) { return(pair.Value); } return(false); })).Count > 0) { this.status = CharacterQuestData.EStatus.New; } else if (count == collaboSkillQuests.Count) { this.status = CharacterQuestData.EStatus.Complete; } else { this.status = CharacterQuestData.EStatus.Challenged; } } else { this.status = CharacterQuestData.EStatus.Lock; } }