diff --git a/Winch/Data/MaterialBaitPOIDataModel.cs b/Winch/Data/MaterialBaitPOIDataModel.cs new file mode 100644 index 00000000..60106eb5 --- /dev/null +++ b/Winch/Data/MaterialBaitPOIDataModel.cs @@ -0,0 +1,17 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Winch.Util; + +namespace Winch.Data +{ + public class MaterialBaitPOIDataModel : BaitPOIDataModel + { + public override ItemSubtype GetHarvestableItemSubType() + { + return new ItemSubtype[2] { ItemSubtype.MATERIAL, ItemSubtype.TRINKET }.CombineFlagsValues(); + } + } +} diff --git a/Winch/Util/WinchExtensions.cs b/Winch/Util/WinchExtensions.cs index e006b3a2..da965c74 100644 --- a/Winch/Util/WinchExtensions.cs +++ b/Winch/Util/WinchExtensions.cs @@ -434,9 +434,9 @@ public static List GetRangedBaitMaterials(this ItemManager public static bool DeployBaitModified(this BaitAbility baitAbility, SpatialItemInstance baitInstance) { - BaitPOIDataModel baitPOIDataModel = new BaitPOIDataModel(); SpatialItemData spatialItemData = baitInstance.GetItemData(); BaitType baitType = spatialItemData.GetBaitTypeFromItemData(); + BaitPOIDataModel baitPOIDataModel = baitType.IsFish() ? new BaitPOIDataModel() : new MaterialBaitPOIDataModel(); baitPOIDataModel.doesRestock = false; bool deepForm = baitType == BaitType.ABERRATED && GameManager.Instance.QuestManager.IsQuestCompleted(baitAbility.deepFormItemData.QuestCompleteRequired.name) && baitAbility.deepFormItemData.zonesFoundIn.HasFlag(GameManager.Instance.Player.PlayerZoneDetector.GetCurrentZone()) && UnityEngine.Random.value <= baitAbility.deepFormItemData.BaitChanceOverride; List items = deepForm ? new List { baitAbility.deepFormItemData } : spatialItemData.GetBaitItemsFromItemData();