/// <summary> /// Generates the bundle for the given season /// </summary> /// <param name="season">The season</param> /// <param name="color">The color to use</param> private void GenerateSeasonBundle(Seasons season, BundleColors color) { string seasonString = Globals.GetTranslation($"seasons-{season.ToString().ToLower()}"); seasonString = $"{seasonString[0].ToString().ToUpper()}{seasonString.Substring(1)}"; Name = Globals.GetTranslation("bundle-fishtank-seasonal", new { season = seasonString }); List <RequiredItem> potentialItems = RequiredItem.CreateList(FishItem.Get(season)); RequiredItems = Globals.RNGGetRandomValuesFromList(potentialItems, 8); MinimumRequiredItems = Math.Min(Range.GetRandomValue(6, 8), RequiredItems.Count); Color = color; }
/// <summary> /// Generates a bundle of crops belonging to the given season /// </summary> /// <param name="season">The season</param> /// <param name="color">The color of the bundle</param> private void GenerateBundleForSeasonCrops(Seasons season, BundleColors color) { string seasonString = Globals.GetTranslation($"seasons-{season.ToString().ToLower()}"); seasonString = $"{seasonString[0].ToString().ToUpper()}{seasonString.Substring(1)}"; Name = Globals.GetTranslation("bundle-pantry-crops", new { season = seasonString }); List <RequiredItem> potentialItems = RequiredItem.CreateList(ItemList.GetCrops(season)); RequiredItems = Globals.RNGGetRandomValuesFromList(potentialItems, 8); MinimumRequiredItems = 6; Color = color; }
/// <summary> /// Generates the bundle for foraging items /// </summary> /// <param name="season">The season</param> /// <param name="color">The color of the bundle</param> private void GenerateForagingBundle(Seasons season, BundleColors color) { string seasonString = Globals.GetTranslation($"seasons-{season.ToString().ToLower()}"); seasonString = $"{seasonString[0].ToString().ToUpper()}{seasonString.Substring(1)}"; Name = Globals.GetTranslation($"bundle-crafting-foraging", new { season = seasonString }); List <RequiredItem> potentialItems = RequiredItem.CreateList(ItemList.GetForagables(season)); int numberOfChoices = Math.Min(potentialItems.Count, 8); RequiredItems = Globals.RNGGetRandomValuesFromList(potentialItems, numberOfChoices); MinimumRequiredItems = Range.GetRandomValue(4, numberOfChoices); Color = color; }
/// <inheritdoc /> public override int GetHashCode() { unchecked // Overflow is fine, just wrap { var hashCode = 41; if (Type != null) { hashCode = hashCode * 59 + Type.GetHashCode(); } if (Visible != null) { hashCode = hashCode * 59 + Visible.GetHashCode(); } if (Name != null) { hashCode = hashCode * 59 + Name.GetHashCode(); } if (UId != null) { hashCode = hashCode * 59 + UId.GetHashCode(); } if (Meta != null) { hashCode = hashCode * 59 + Meta.GetHashCode(); } if (MetaArray != null) { hashCode = hashCode * 59 + MetaArray.GetHashCode(); } if (Stream != null) { hashCode = hashCode * 59 + Stream.GetHashCode(); } if (Transforms != null) { hashCode = hashCode * 59 + Transforms.GetHashCode(); } if (UiRevision != null) { hashCode = hashCode * 59 + UiRevision.GetHashCode(); } if (Domain != null) { hashCode = hashCode * 59 + Domain.GetHashCode(); } if (HoverInfo != null) { hashCode = hashCode * 59 + HoverInfo.GetHashCode(); } if (HoverOn != null) { hashCode = hashCode * 59 + HoverOn.GetHashCode(); } if (HoverTemplate != null) { hashCode = hashCode * 59 + HoverTemplate.GetHashCode(); } if (Arrangement != null) { hashCode = hashCode * 59 + Arrangement.GetHashCode(); } if (BundleColors != null) { hashCode = hashCode * 59 + BundleColors.GetHashCode(); } if (SortPaths != null) { hashCode = hashCode * 59 + SortPaths.GetHashCode(); } if (LabelFont != null) { hashCode = hashCode * 59 + LabelFont.GetHashCode(); } if (TickFont != null) { hashCode = hashCode * 59 + TickFont.GetHashCode(); } if (Dimensions != null) { hashCode = hashCode * 59 + Dimensions.GetHashCode(); } if (Line != null) { hashCode = hashCode * 59 + Line.GetHashCode(); } if (Counts != null) { hashCode = hashCode * 59 + Counts.GetHashCode(); } if (CountsArray != null) { hashCode = hashCode * 59 + CountsArray.GetHashCode(); } if (MetaSrc != null) { hashCode = hashCode * 59 + MetaSrc.GetHashCode(); } if (CountsSrc != null) { hashCode = hashCode * 59 + CountsSrc.GetHashCode(); } return(hashCode); } }
/// <inheritdoc /> public bool Equals([AllowNull] ParCats other) { if (other == null) { return(false); } if (ReferenceEquals(this, other)) { return(true); } return (( Type == other.Type || Type != null && Type.Equals(other.Type) ) && ( Visible == other.Visible || Visible != null && Visible.Equals(other.Visible) ) && ( Name == other.Name || Name != null && Name.Equals(other.Name) ) && ( UId == other.UId || UId != null && UId.Equals(other.UId) ) && ( Meta == other.Meta || Meta != null && Meta.Equals(other.Meta) ) && ( Equals(MetaArray, other.MetaArray) || MetaArray != null && other.MetaArray != null && MetaArray.SequenceEqual(other.MetaArray) ) && ( Stream == other.Stream || Stream != null && Stream.Equals(other.Stream) ) && ( Equals(Transforms, other.Transforms) || Transforms != null && other.Transforms != null && Transforms.SequenceEqual(other.Transforms) ) && ( UiRevision == other.UiRevision || UiRevision != null && UiRevision.Equals(other.UiRevision) ) && ( Domain == other.Domain || Domain != null && Domain.Equals(other.Domain) ) && ( HoverInfo == other.HoverInfo || HoverInfo != null && HoverInfo.Equals(other.HoverInfo) ) && ( HoverOn == other.HoverOn || HoverOn != null && HoverOn.Equals(other.HoverOn) ) && ( HoverTemplate == other.HoverTemplate || HoverTemplate != null && HoverTemplate.Equals(other.HoverTemplate) ) && ( Arrangement == other.Arrangement || Arrangement != null && Arrangement.Equals(other.Arrangement) ) && ( BundleColors == other.BundleColors || BundleColors != null && BundleColors.Equals(other.BundleColors) ) && ( SortPaths == other.SortPaths || SortPaths != null && SortPaths.Equals(other.SortPaths) ) && ( LabelFont == other.LabelFont || LabelFont != null && LabelFont.Equals(other.LabelFont) ) && ( TickFont == other.TickFont || TickFont != null && TickFont.Equals(other.TickFont) ) && ( Equals(Dimensions, other.Dimensions) || Dimensions != null && other.Dimensions != null && Dimensions.SequenceEqual(other.Dimensions) ) && ( Line == other.Line || Line != null && Line.Equals(other.Line) ) && ( Counts == other.Counts || Counts != null && Counts.Equals(other.Counts) ) && ( Equals(CountsArray, other.CountsArray) || CountsArray != null && other.CountsArray != null && CountsArray.SequenceEqual(other.CountsArray) ) && ( MetaSrc == other.MetaSrc || MetaSrc != null && MetaSrc.Equals(other.MetaSrc) ) && ( CountsSrc == other.CountsSrc || CountsSrc != null && CountsSrc.Equals(other.CountsSrc) )); }