diff --git a/Barotrauma/BarotraumaShared/Source/Items/Components/ItemComponent.cs b/Barotrauma/BarotraumaShared/Source/Items/Components/ItemComponent.cs index f6d7cb494..c65d884c3 100644 --- a/Barotrauma/BarotraumaShared/Source/Items/Components/ItemComponent.cs +++ b/Barotrauma/BarotraumaShared/Source/Items/Components/ItemComponent.cs @@ -506,13 +506,16 @@ namespace Barotrauma.Items.Components } List prevRequiredItems = new List(requiredItems); - requiredItems.Clear(); + bool overrideRequiredItems = false; foreach (XElement subElement in componentElement.Elements()) { switch (subElement.Name.ToString().ToLowerInvariant()) { case "requireditem": + if (!overrideRequiredItems) requiredItems.Clear(); + overrideRequiredItems = true; + RelatedItem newRequiredItem = RelatedItem.Load(subElement); if (newRequiredItem == null) continue;