From 9ad9a65f1e051f2e60f88b3de5b12d2f2dc84674 Mon Sep 17 00:00:00 2001 From: juanjp600 Date: Fri, 15 Dec 2017 16:15:31 -0300 Subject: [PATCH] If a saved ItemComponent doesn't define required items, the ones defined by the item prefab are used instead --- .../Source/Items/Components/ItemComponent.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) 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;