add smoked and dried items to item repository

This commit is contained in:
Jesse Plamondon-Willard
2024-05-28 00:12:56 -04:00
parent 74ed1cbbb4
commit 74bb0e8d4f
2 changed files with 29 additions and 4 deletions
+1 -1
View File
@@ -5,7 +5,7 @@
* For players:
* Fixed installer not detecting Linux Flatpak install paths.
* Fixed content issues for non-English players in recent builds (e.g. content packs not detecting the current festival correctly).
* Fixed pickled forage not shown by `list_items` console command.
* Fixed dried items, smoked items, and picked forage not handled by console commands like `list_items` or `player_add`.
* For mod authors:
* Updated dependencies, including...
@@ -74,9 +74,24 @@ namespace StardewModdingAPI.Mods.ConsoleCommands.Framework
// object
else
{
yield return result?.QualifiedItemId == "(O)340"
? this.TryCreate(itemType.Identifier, result.Id, _ => objectDataDefinition.CreateFlavoredHoney(null)) // game creates "Wild Honey" when there's no ingredient, instead of the base Honey item
: result;
switch (result?.QualifiedItemId)
{
// honey should be "Wild Honey" when there's no ingredient, instead of the base Honey item
case "(O)340":
yield return this.TryCreate(itemType.Identifier, result.Id, _ => objectDataDefinition.CreateFlavoredHoney(null));
break;
// don't return placeholder items
case "(O)DriedFruit":
case "(O)DriedMushrooms":
case "(O)SmokedFish":
break;
default:
if (result != null)
yield return result;
break;
}
if (includeVariants)
{
@@ -172,10 +187,17 @@ namespace StardewModdingAPI.Mods.ConsoleCommands.Framework
// by category
switch (item.Category)
{
// fish
case SObject.FishCategory:
yield return this.TryCreate(itemType.Identifier, $"SmokedFish/{id}", _ => objectDataDefinition.CreateFlavoredSmokedFish(item));
break;
// fruit products
case SObject.FruitsCategory:
yield return this.TryCreate(itemType.Identifier, $"348/{id}", _ => objectDataDefinition.CreateFlavoredWine(item));
yield return this.TryCreate(itemType.Identifier, $"344/{id}", _ => objectDataDefinition.CreateFlavoredJelly(item));
if (item.QualifiedItemId != "(O)398") // raisins are their own item
yield return this.TryCreate(itemType.Identifier, $"398/{id}", _ => objectDataDefinition.CreateFlavoredDriedFruit(item));
break;
// greens
@@ -229,6 +251,9 @@ namespace StardewModdingAPI.Mods.ConsoleCommands.Framework
// by context tag
if (item.HasContextTag("preserves_pickle") && item.Category is not (SObject.GreensCategory or SObject.VegetableCategory))
yield return this.TryCreate(itemType.Identifier, $"342/{id}", _ => objectDataDefinition.CreateFlavoredPickle(item));
if (item.HasContextTag("edible_mushroom"))
yield return this.TryCreate(itemType.Identifier, $"DriedMushrooms/{id}", _ => objectDataDefinition.CreateFlavoredDriedMushroom(item));
}
/// <summary>Get optimized lookups to match items which produce roe in a fish pond.</summary>