(3dc4135ce) v0.9.5.1
This commit is contained in:
@@ -689,7 +689,8 @@ namespace Barotrauma
|
||||
{
|
||||
if (subElement.Name.ToString().ToLowerInvariant() != "upgrade") { continue; }
|
||||
var upgradeVersion = new Version(subElement.GetAttributeString("gameversion", "0.0.0.0"));
|
||||
if (savedVersion >= upgradeVersion) { continue; }
|
||||
if (savedVersion >= upgradeVersion) { continue; }
|
||||
|
||||
foreach (XAttribute attribute in subElement.Attributes())
|
||||
{
|
||||
string attributeName = attribute.Name.ToString().ToLowerInvariant();
|
||||
@@ -698,9 +699,9 @@ namespace Barotrauma
|
||||
{
|
||||
property.TrySetValue(entity, attribute.Value);
|
||||
}
|
||||
else if (entity is Item item)
|
||||
else if (entity is Item item1)
|
||||
{
|
||||
foreach (ISerializableEntity component in item.AllPropertyObjects)
|
||||
foreach (ISerializableEntity component in item1.AllPropertyObjects)
|
||||
{
|
||||
if (component.SerializableProperties.TryGetValue(attributeName, out SerializableProperty componentProperty))
|
||||
{
|
||||
@@ -708,7 +709,28 @@ namespace Barotrauma
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (entity is Item item2)
|
||||
{
|
||||
XElement componentElement = subElement.FirstElement();
|
||||
if (componentElement == null) continue;
|
||||
ItemComponent itemComponent = item2.Components.First(c => c.Name == componentElement.Name.ToString());
|
||||
if (itemComponent == null) continue;
|
||||
foreach (XElement element in componentElement.Elements())
|
||||
{
|
||||
switch (element.Name.ToString().ToLowerInvariant())
|
||||
{
|
||||
case "requireditem":
|
||||
case "requireditems":
|
||||
itemComponent.requiredItems.Clear();
|
||||
itemComponent.DisabledRequiredItems.Clear();
|
||||
|
||||
itemComponent.SetRequiredItems(element);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user