Slight AtmosphereSystem cleanup.

- AtmosExposed query now queries transform as well instead of getting it twice.
- Use Proxy methods instead.
This commit is contained in:
Vera Aguilera Puerto
2021-12-16 12:10:51 +01:00
parent 7e49b22a74
commit 0517e12efd
4 changed files with 44 additions and 43 deletions

View File

@@ -33,12 +33,12 @@ namespace Content.Server.Atmos.EntitySystems
foreach (var entity in _gridtileLookupSystem.GetEntitiesIntersecting(tile.GridIndex, tile.GridIndices))
{
if (!EntityManager.TryGetComponent(entity, out IPhysBody? physics)
if (!HasComp<IPhysBody>(entity)
|| !entity.IsMovedByPressure(out var pressure)
|| entity.IsInContainer())
continue;
var pressureMovements = physics.Owner.EnsureComponent<MovedByPressureComponent>();
var pressureMovements = EnsureComp<MovedByPressureComponent>(entity);
if (pressure.LastHighPressureMovementAirCycle < gridAtmosphere.UpdateCounter)
{
pressureMovements.ExperiencePressureDifference(gridAtmosphere.UpdateCounter, tile.PressureDifference, tile.PressureDirection, 0, tile.PressureSpecificTarget?.GridIndices.ToEntityCoordinates(tile.GridIndex, _mapManager) ?? EntityCoordinates.Invalid);