From 3a0f2b0b9016250f7fe63074c44b78c30f8bc1c1 Mon Sep 17 00:00:00 2001 From: Kamron Batman <3953314+kamronbatman@users.noreply.github.com> Date: Mon, 18 Apr 2022 15:01:13 -0700 Subject: [PATCH] fix: Fixes cutting cloth (#1003) --- .../UOContent/Items/Clothing/BaseClothing.cs | 32 ++++++++++++------- 1 file changed, 20 insertions(+), 12 deletions(-) diff --git a/Projects/UOContent/Items/Clothing/BaseClothing.cs b/Projects/UOContent/Items/Clothing/BaseClothing.cs index 02af85c53..e993de5ed 100644 --- a/Projects/UOContent/Items/Clothing/BaseClothing.cs +++ b/Projects/UOContent/Items/Clothing/BaseClothing.cs @@ -271,25 +271,33 @@ namespace Server.Items var item = system.CraftItems.SearchFor(GetType()); - if (item?.Resources.Count == 1 && item.Resources[0].Amount >= 2) + if (item?.Resources.Count == 1) { - try + var resource = item.Resources[0]; + if (resource.Amount >= 2) { - var info = CraftResources.GetInfo(_rawResource); + try + { + var info = CraftResources.GetInfo(_rawResource); - var resourceType = info.ResourceTypes?[0] ?? item.Resources[0].ItemType; + Type resourceType = null; + if (info?.ResourceTypes.Length > 0) + { + resourceType = info.ResourceTypes[0]; + } - var res = resourceType.CreateInstance(); + var res = (resourceType ?? resource.ItemType).CreateInstance(); - ScissorHelper(from, res, PlayerConstructed ? item.Resources[0].Amount / 2 : 1); + ScissorHelper(from, res, PlayerConstructed ? resource.Amount / 2 : 1); - res.LootType = LootType.Regular; + res.LootType = LootType.Regular; - return true; - } - catch - { - // ignored + return true; + } + catch + { + // ignored + } } }