/// <summary> /// Finds the first instance of a Badge with a particular BadgeType /// </summary> /// <param name="badgeType">The BadgeType of the Badge</param> /// <param name="badgeFilter">The filter for finding the Badge</param> /// <returns>null if no Badge was found, otherwise the first Badge matching the parameters</returns> public Badge GetBadge(BadgeTypes badgeType, BadgeFilterType badgeFilter) { if (HasBadgeType(badgeType) == false) { return(null); } //Look through all Badges if (badgeFilter == BadgeFilterType.All) { return(AllBadges.Find((badge) => badge.BadgeType == badgeType)); } //Look through all equipped Badges else if (badgeFilter == BadgeFilterType.Equipped) { return(GetActiveBadge(badgeType)); } //Look through all unequipped Badges else if (badgeFilter == BadgeFilterType.UnEquipped) { return(AllBadges.Find((badge) => (badge.BadgeType == badgeType && badge.Equipped == false))); } return(null); }
/// <summary> /// Finds all instances of a Badge with a particular BadgeType. /// </summary> /// <param name="badgeType">The BadgeType of the Badges.</param> /// <param name="badgeFilter">The filter for finding the Badges.</param> /// <returns>A list of all Badges matching the parameters, and an empty list if none were found.</returns> public List <Badge> GetBadges(BadgeTypes badgeType, BadgeFilterType badgeFilter) { if (HasBadgeType(badgeType) == true) { if (badgeFilter == BadgeFilterType.All) { return(AllBadges.FindAll((badge) => badge.BadgeType == badgeType)); } else if (badgeFilter == BadgeFilterType.Equipped) { return(GetActiveBadges(badgeType)); } else if (badgeFilter == BadgeFilterType.UnEquipped) { return(AllBadges.FindAll((badge) => (badge.BadgeType == badgeType && badge.Equipped == false))); } } return(new List <Badge>()); }