Disabled PowerConsumers do not use Apc power (#2064)

Co-authored-by: py01 <pyronetics01@gmail.com>
This commit is contained in:
py01
2020-09-13 06:08:23 -06:00
committed by GitHub
parent 5871851cf5
commit 2e5838bb62
2 changed files with 5 additions and 2 deletions

View File

@@ -97,6 +97,9 @@ namespace Content.Server.GameObjects.Components.NodeContainer.NodeGroups
var availablePowerFraction = totalCharge / totalMaxCharge; var availablePowerFraction = totalCharge / totalMaxCharge;
foreach (var receiver in _providerReceivers.SelectMany(kvp => kvp.Value)) foreach (var receiver in _providerReceivers.SelectMany(kvp => kvp.Value))
{ {
if (!receiver.NeedsPower || receiver.PowerDisabled)
continue;
receiver.HasApcPower = TryUsePower(receiver.Load * frameTime); receiver.HasApcPower = TryUsePower(receiver.Load * frameTime);
} }
} }

View File

@@ -22,7 +22,6 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents
public class PowerReceiverComponent : Component, IExamine public class PowerReceiverComponent : Component, IExamine
{ {
[Dependency] private readonly IServerEntityManager _serverEntityManager = default!; [Dependency] private readonly IServerEntityManager _serverEntityManager = default!;
[Dependency] private readonly IMapManager _mapManager = default!;
public override string Name => "PowerReceiver"; public override string Name => "PowerReceiver";
@@ -64,7 +63,7 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents
private int _load; private int _load;
/// <summary> /// <summary>
/// When true, causes this to appear powered even if not receiving power from an Apc. /// When false, causes this to appear powered even if not receiving power from an Apc.
/// </summary> /// </summary>
[ViewVariables(VVAccess.ReadWrite)] [ViewVariables(VVAccess.ReadWrite)]
public bool NeedsPower { get => _needsPower; set => SetNeedsPower(value); } public bool NeedsPower { get => _needsPower; set => SetNeedsPower(value); }
@@ -73,6 +72,7 @@ namespace Content.Server.GameObjects.Components.Power.ApcNetComponents
/// <summary> /// <summary>
/// When true, causes this to never appear powered. /// When true, causes this to never appear powered.
/// </summary> /// </summary>
[ViewVariables(VVAccess.ReadWrite)]
public bool PowerDisabled { get => _powerDisabled; set => SetPowerDisabled(value); } public bool PowerDisabled { get => _powerDisabled; set => SetPowerDisabled(value); }
private bool _powerDisabled; private bool _powerDisabled;