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); }