(3dc4135ce) v0.9.5.1

This commit is contained in:
Regalis
2019-11-21 18:22:25 +01:00
parent b39922a074
commit 5c95c53118
287 changed files with 12655 additions and 5048 deletions
@@ -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;
}
}
}
}
}
}