diff --git a/Content.Server/Body/Systems/InternalsSystem.cs b/Content.Server/Body/Systems/InternalsSystem.cs index 3099cae6a9..015b7ce4fe 100644 --- a/Content.Server/Body/Systems/InternalsSystem.cs +++ b/Content.Server/Body/Systems/InternalsSystem.cs @@ -215,12 +215,20 @@ public sealed class InternalsSystem : EntitySystem public GasTankComponent? FindBestGasTank(InternalsComponent component) { // Prioritise - // 1. exo-slot tanks - // 2. in-hand tanks - // 3. pocket/belt tanks + // 1. back equipped tanks + // 2. exo-slot tanks + // 3. in-hand tanks + // 4. pocket/belt tanks InventoryComponent? inventory = null; ContainerManagerComponent? containerManager = null; + if (_inventory.TryGetSlotEntity(component.Owner, "back", out var backEntity, inventory, containerManager) && + TryComp(backEntity, out var backGasTank) && + _gasTank.CanConnectToInternals(backGasTank)) + { + return backGasTank; + } + if (_inventory.TryGetSlotEntity(component.Owner, "suitstorage", out var entity, inventory, containerManager) && TryComp(entity, out var gasTank) && _gasTank.CanConnectToInternals(gasTank))