diff --git a/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/Engine.cs b/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/Engine.cs index 32d68bc02..f58aa9494 100644 --- a/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/Engine.cs +++ b/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/Engine.cs @@ -61,9 +61,9 @@ namespace Barotrauma.Items.Components public override void Update(float deltaTime, Camera cam) { - base.Update(deltaTime, cam); + UpdateOnActiveEffects(deltaTime); - currPowerConsumption = Math.Abs(targetForce)/100.0f * powerConsumption; + currPowerConsumption = Math.Abs(targetForce) / 100.0f * powerConsumption; if (powerConsumption == 0.0f) voltage = 1.0f; diff --git a/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/MiniMap.cs b/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/MiniMap.cs index ba6a0c55c..1e3c7b787 100644 --- a/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/MiniMap.cs +++ b/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/MiniMap.cs @@ -59,10 +59,8 @@ namespace Barotrauma.Items.Components } currPowerConsumption = powerConsumption; - - hasPower = voltage > minVoltage; - - if (hasPower) + + if (voltage > minVoltage) { ApplyStatusEffects(ActionType.OnActive, deltaTime, null); } diff --git a/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/OxygenGenerator.cs b/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/OxygenGenerator.cs index a7cb87a53..c58ffcd05 100644 --- a/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/OxygenGenerator.cs +++ b/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/OxygenGenerator.cs @@ -39,7 +39,7 @@ namespace Barotrauma.Items.Components public override void Update(float deltaTime, Camera cam) { - base.Update(deltaTime, cam); + UpdateOnActiveEffects(deltaTime); CurrFlow = 0.0f; currPowerConsumption = powerConsumption; diff --git a/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/Radar.cs b/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/Radar.cs index 8f0d34346..1a2f0c069 100644 --- a/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/Radar.cs +++ b/Barotrauma/BarotraumaShared/Source/Items/Components/Machines/Radar.cs @@ -109,7 +109,7 @@ namespace Barotrauma.Items.Components { currPowerConsumption = powerConsumption; - base.Update(deltaTime, cam); + UpdateOnActiveEffects(deltaTime); if (voltage >= minVoltage || powerConsumption <= 0.0f) { diff --git a/Barotrauma/BarotraumaShared/Source/Items/Components/Power/Powered.cs b/Barotrauma/BarotraumaShared/Source/Items/Components/Power/Powered.cs index 60e3da7d2..d56c18ff2 100644 --- a/Barotrauma/BarotraumaShared/Source/Items/Components/Power/Powered.cs +++ b/Barotrauma/BarotraumaShared/Source/Items/Components/Power/Powered.cs @@ -86,7 +86,7 @@ namespace Barotrauma.Items.Components if (connection.IsPower) voltage = power; } - public override void Update(float deltaTime, Camera cam) + protected void UpdateOnActiveEffects(float deltaTime) { if (currPowerConsumption == 0.0f) { @@ -109,7 +109,7 @@ namespace Barotrauma.Items.Components powerOnSoundPlayed = true; } } - else if (voltage < 0.1f) + else if (voltage < 0.1f) { powerOnSoundPlayed = false; } @@ -121,6 +121,13 @@ namespace Barotrauma.Items.Components #endif } + public override void Update(float deltaTime, Camera cam) + { + UpdateOnActiveEffects(deltaTime); + + voltage = 0.0f; + } + } } diff --git a/Barotrauma/BarotraumaShared/Source/Items/Components/Signal/LightComponent.cs b/Barotrauma/BarotraumaShared/Source/Items/Components/Signal/LightComponent.cs index 3ae29c3e9..dcc4b8749 100644 --- a/Barotrauma/BarotraumaShared/Source/Items/Components/Signal/LightComponent.cs +++ b/Barotrauma/BarotraumaShared/Source/Items/Components/Signal/LightComponent.cs @@ -124,7 +124,7 @@ namespace Barotrauma.Items.Components public override void Update(float deltaTime, Camera cam) { - base.Update(deltaTime, cam); + UpdateOnActiveEffects(deltaTime); #if CLIENT light.ParentSub = item.Submarine;