Files
LuaCsForBarotraumaEP/Barotrauma/BarotraumaShared/Source/Sprite/ConditionalSprite.cs
Joonas Rikkonen 044fd3344b 2f107db...5202af9
2019-03-18 21:42:26 +02:00

26 lines
858 B
C#

using System.Collections.Generic;
using System.Xml.Linq;
using System.Linq;
namespace Barotrauma
{
class ConditionalSprite : Sprite
{
public readonly List<PropertyConditional> conditionals = new List<PropertyConditional>();
public bool IsActive => Target != null && conditionals.All(c => c.Matches(Target));
readonly ISerializableEntity Target;
public ConditionalSprite(XElement element, ISerializableEntity target, string path = "", string file = "") : base(element, path, file)
{
Target = target;
foreach (XElement subElement in element.Elements())
{
foreach (XAttribute attribute in subElement.Attributes())
{
conditionals.Add(new PropertyConditional(attribute));
}
}
}
}
}