/// <summary> /// オリジナル検索候補リストを生成 /// </summary> /// <param name="requirements">検索条件</param> /// <remarks>検索処理実施前のオリジナル候補装備リスト</remarks> public override List <PartDataBase> CreateOrgList(Requirement requirements) { var requirementData = requirements.RequirementDataList.Get(this.Part); // 使用しない場合は空リストを格納したデータを返す. if (TermsType.Unused == requirementData.TermsType) { return(new List <PartDataBase>()); } // 対象の抽象化防具マスタリストを生成する. var masterList = MasterArmorAbstract.GetAbstractArmorList(this.Part); // マスタリストから防具データに変換し、リスト化して返す. var candidateList = masterList .Select(armor => (PartDataBase) new PartDataArmor(armor)) .ToList(); // オリジナルリストを格納したデータを返す. return(candidateList); }
/// <summary> /// オリジナル検索候補リストを生成 /// </summary> /// <param name="requirements">検索条件</param> /// <remarks>検索処理実施前のオリジナル候補装備リスト</remarks> public override List <PartDataBase> CreateOrgList(Requirement requirements) { var requirementData = requirements.RequirementDataList.Get(this.Part); // 使用しない場合は空リストを格納したデータを返す. if (TermsType.Unused == requirementData.TermsType) { return(new List <PartDataBase>()); } // 対象の抽象化防具マスタリストを生成する. var masterList = MasterArmorAbstract.GetAbstractArmorList(this.Part); // マスタリストから条件を満たす防具をリスト化して返す. // ・該当レア度に収まる. var candidateList = masterList .Where(armor => requirements.RequirementRareData.Lower <= armor.Rare && armor.Rare <= requirements.RequirementRareData.Upper) .Select(armor => (PartDataBase) new PartDataArmor(armor)) .ToList(); // オリジナルリストを格納したデータを返す. return(candidateList); }