Atmos device performance improvements (#26493)
* Atmos device performance improvements * AtmosDirection perf improvements * Fix errors * Add GasTileOverlayComponent arguments * Make excite no longer invalidate a tile
This commit is contained in:
@@ -257,10 +257,7 @@ public sealed partial class CryoPodSystem : SharedCryoPodSystem
|
||||
|
||||
private void OnCryoPodUpdateAtmosphere(Entity<CryoPodComponent> entity, ref AtmosDeviceUpdateEvent args)
|
||||
{
|
||||
if (!TryComp(entity, out NodeContainerComponent? nodeContainer))
|
||||
return;
|
||||
|
||||
if (!_nodeContainer.TryGetNode(nodeContainer, entity.Comp.PortName, out PortablePipeNode? portNode))
|
||||
if (!_nodeContainer.TryGetNode(entity.Owner, entity.Comp.PortName, out PortablePipeNode? portNode))
|
||||
return;
|
||||
|
||||
if (!TryComp(entity, out CryoPodAirComponent? cryoPodAir))
|
||||
@@ -279,14 +276,10 @@ public sealed partial class CryoPodSystem : SharedCryoPodSystem
|
||||
if (!TryComp(entity, out CryoPodAirComponent? cryoPodAir))
|
||||
return;
|
||||
|
||||
var gasMixDict = new Dictionary<string, GasMixture?> { { Name(entity.Owner), cryoPodAir.Air } };
|
||||
args.GasMixtures ??= new Dictionary<string, GasMixture?> { { Name(entity.Owner), cryoPodAir.Air } };
|
||||
// If it's connected to a port, include the port side
|
||||
if (TryComp(entity, out NodeContainerComponent? nodeContainer))
|
||||
{
|
||||
if (_nodeContainer.TryGetNode(nodeContainer, entity.Comp.PortName, out PipeNode? port))
|
||||
gasMixDict.Add(entity.Comp.PortName, port.Air);
|
||||
}
|
||||
args.GasMixtures = gasMixDict;
|
||||
if (_nodeContainer.TryGetNode(entity.Owner, entity.Comp.PortName, out PipeNode? port))
|
||||
args.GasMixtures.Add(entity.Comp.PortName, port.Air);
|
||||
}
|
||||
|
||||
private void OnEjected(Entity<CryoPodComponent> cryoPod, ref EntRemovedFromContainerMessage args)
|
||||
|
||||
Reference in New Issue
Block a user