From 76a7b31c1e59a11b5079d20a3e2feb9c0a7836dd Mon Sep 17 00:00:00 2001 From: ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com> Date: Tue, 15 Jul 2025 20:18:55 -0700 Subject: [PATCH] Fix firelocks failing to drop fast enough (#38918) --- .../Atmos/EntitySystems/AtmosphereSystem.Monstermos.cs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/Content.Server/Atmos/EntitySystems/AtmosphereSystem.Monstermos.cs b/Content.Server/Atmos/EntitySystems/AtmosphereSystem.Monstermos.cs index cca529fd58..24463442cd 100644 --- a/Content.Server/Atmos/EntitySystems/AtmosphereSystem.Monstermos.cs +++ b/Content.Server/Atmos/EntitySystems/AtmosphereSystem.Monstermos.cs @@ -596,8 +596,17 @@ namespace Content.Server.Atmos.EntitySystems if (!reconsiderAdjacent) return; + // Before updating the adjacent tile flags that determine whether air is allowed to flow + // or not, we explicitly update airtight data on these tiles right now. + // This ensures that UpdateAdjacentTiles has updated data before updating flags. + // This allows monstermos' floodfill check that determines if firelocks have dropped + // to work correctly. + UpdateAirtightData(ent.Owner, ent.Comp1, ent.Comp3, tile); + UpdateAirtightData(ent.Owner, ent.Comp1, ent.Comp3, other); + UpdateAdjacentTiles(ent, tile); UpdateAdjacentTiles(ent, other); + InvalidateVisuals(ent, tile); InvalidateVisuals(ent, other); }