26 lines
659 B
C#
26 lines
659 B
C#
using System.Linq;
|
|
using System.Xml.Linq;
|
|
|
|
namespace Barotrauma.Items.Components
|
|
{
|
|
class SmokeDetector : ItemComponent
|
|
{
|
|
[Serialize(50.0f, false)]
|
|
public float FireSizeThreshold
|
|
{
|
|
get; set;
|
|
}
|
|
|
|
public SmokeDetector(Item item, XElement element)
|
|
: base (item, element)
|
|
{
|
|
IsActive = true;
|
|
}
|
|
|
|
public override void Update(float deltaTime, Camera cam)
|
|
{
|
|
item.SendSignal(0, item.CurrentHull != null && item.CurrentHull.FireSources.Any(fs => fs.Size.X > FireSizeThreshold) ? "1" : "0", "signal_out", null);
|
|
}
|
|
}
|
|
}
|