diff --git a/Subsurface/Source/Items/Components/Machines/OxygenGenerator.cs b/Subsurface/Source/Items/Components/Machines/OxygenGenerator.cs index 79619b91d..ef049a8d6 100644 --- a/Subsurface/Source/Items/Components/Machines/OxygenGenerator.cs +++ b/Subsurface/Source/Items/Components/Machines/OxygenGenerator.cs @@ -43,9 +43,7 @@ namespace Barotrauma.Items.Components { IsActive = true; - ventList = new List(); - - item.linkedTo.CollectionChanged += delegate { GetVents(); }; + //item.linkedTo.CollectionChanged += delegate { GetVents(); }; } public override void Update(float deltaTime, Camera cam) @@ -77,12 +75,11 @@ namespace Barotrauma.Items.Components running = true; CurrFlow = Math.Min(voltage, 1.0f) * generatedAmount*100.0f; - item.CurrentHull.Oxygen += CurrFlow * deltaTime; + //item.CurrentHull.Oxygen += CurrFlow * deltaTime; UpdateVents(CurrFlow); - - - voltage = 0.0f; + + voltage -= deltaTime; } public override void UpdateBroken(float deltaTime, Camera cam) @@ -107,13 +104,19 @@ namespace Barotrauma.Items.Components } } - public override void OnMapLoaded() - { - GetVents(); - } + //public override void OnMapLoaded() + //{ + // GetVents(); + //} private void UpdateVents(float deltaOxygen) { + if (ventList == null) + { + ventList = new List(); + GetVents(); + } + if (!ventList.Any() || totalHullVolume == 0.0f) return; foreach (Vent v in ventList) diff --git a/Subsurface/Source/Items/Components/Machines/Vent.cs b/Subsurface/Source/Items/Components/Machines/Vent.cs index 5e8a5e10c..ccf662ba9 100644 --- a/Subsurface/Source/Items/Components/Machines/Vent.cs +++ b/Subsurface/Source/Items/Components/Machines/Vent.cs @@ -21,8 +21,6 @@ namespace Barotrauma.Items.Components public override void Update(float deltaTime, Camera cam) { - base.Update(deltaTime, cam); - if (item.CurrentHull == null) return; item.CurrentHull.Oxygen += oxygenFlow * deltaTime; diff --git a/Subsurface/Submarines/Aegir Mark II.sub b/Subsurface/Submarines/Aegir Mark II.sub index 66c76ca06..76255a881 100644 Binary files a/Subsurface/Submarines/Aegir Mark II.sub and b/Subsurface/Submarines/Aegir Mark II.sub differ diff --git a/Subsurface/Submarines/Nehalennia.sub b/Subsurface/Submarines/Nehalennia.sub index b54cf65a9..6dbe0d6ff 100644 Binary files a/Subsurface/Submarines/Nehalennia.sub and b/Subsurface/Submarines/Nehalennia.sub differ diff --git a/Subsurface/Submarines/Vellamo.sub b/Subsurface/Submarines/Vellamo.sub index 23e523863..3245978b5 100644 Binary files a/Subsurface/Submarines/Vellamo.sub and b/Subsurface/Submarines/Vellamo.sub differ