diff --git a/Content.Server/Atmos/EntitySystems/AtmosphereSystem.cs b/Content.Server/Atmos/EntitySystems/AtmosphereSystem.cs index 7767cce965..5d3e989e41 100644 --- a/Content.Server/Atmos/EntitySystems/AtmosphereSystem.cs +++ b/Content.Server/Atmos/EntitySystems/AtmosphereSystem.cs @@ -59,7 +59,7 @@ public sealed partial class AtmosphereSystem : SharedAtmosphereSystem ShutdownCommands(); } - private void OnTileChanged(TileChangedEvent ev) + private void OnTileChanged(ref TileChangedEvent ev) { InvalidateTile(ev.NewTile.GridUid, ev.NewTile.GridIndices); } diff --git a/Content.Server/Atmos/EntitySystems/AutomaticAtmosSystem.cs b/Content.Server/Atmos/EntitySystems/AutomaticAtmosSystem.cs index aabe4a598f..5d60ae57d9 100644 --- a/Content.Server/Atmos/EntitySystems/AutomaticAtmosSystem.cs +++ b/Content.Server/Atmos/EntitySystems/AutomaticAtmosSystem.cs @@ -21,7 +21,7 @@ public sealed class AutomaticAtmosSystem : EntitySystem SubscribeLocalEvent(OnTileChanged); } - private void OnTileChanged(TileChangedEvent ev) + private void OnTileChanged(ref TileChangedEvent ev) { // Only if a atmos-holding tile has been added or removed. // Also, these calls are surprisingly slow. diff --git a/Content.Server/Decals/DecalSystem.cs b/Content.Server/Decals/DecalSystem.cs index ca0d170fb0..a9cb902676 100644 --- a/Content.Server/Decals/DecalSystem.cs +++ b/Content.Server/Decals/DecalSystem.cs @@ -159,7 +159,7 @@ namespace Content.Server.Decals _conf.UnsubValueChanged(CVars.NetPVS, OnPvsToggle); } - private void OnTileChanged(TileChangedEvent args) + private void OnTileChanged(ref TileChangedEvent args) { if (!args.NewTile.IsSpace(_tileDefMan)) return; diff --git a/Content.Server/Explosion/EntitySystems/ExplosionSystem.GridMap.cs b/Content.Server/Explosion/EntitySystems/ExplosionSystem.GridMap.cs index c8d3259b8c..bd3626d4ec 100644 --- a/Content.Server/Explosion/EntitySystems/ExplosionSystem.GridMap.cs +++ b/Content.Server/Explosion/EntitySystems/ExplosionSystem.GridMap.cs @@ -221,7 +221,7 @@ public sealed partial class ExplosionSystem : EntitySystem /// /// When a tile is updated, we might need to update the grid edge maps. /// - private void OnTileChanged(TileChangedEvent ev) + private void OnTileChanged(ref TileChangedEvent ev) { // only need to update the grid-edge map if a tile was added or removed from the grid. if (!ev.NewTile.Tile.IsEmpty && !ev.OldTile.IsEmpty) diff --git a/Content.Server/NPC/Pathfinding/PathfindingSystem.Grid.cs b/Content.Server/NPC/Pathfinding/PathfindingSystem.Grid.cs index c2acad78cd..852a9f28d9 100644 --- a/Content.Server/NPC/Pathfinding/PathfindingSystem.Grid.cs +++ b/Content.Server/NPC/Pathfinding/PathfindingSystem.Grid.cs @@ -53,7 +53,7 @@ public sealed partial class PathfindingSystem SubscribeLocalEvent(OnMoveEvent); } - private void OnTileChange(TileChangedEvent ev) + private void OnTileChange(ref TileChangedEvent ev) { if (ev.OldTile.IsEmpty == ev.NewTile.Tile.IsEmpty) return; diff --git a/Content.Server/Shuttles/Systems/ThrusterSystem.cs b/Content.Server/Shuttles/Systems/ThrusterSystem.cs index f05c4935c3..5014c97814 100644 --- a/Content.Server/Shuttles/Systems/ThrusterSystem.cs +++ b/Content.Server/Shuttles/Systems/ThrusterSystem.cs @@ -62,7 +62,7 @@ namespace Content.Server.Shuttles.Systems SubscribeLocalEvent(OnRefreshParts); SubscribeLocalEvent(OnUpgradeExamine); - _mapManager.TileChanged += OnTileChange; + SubscribeLocalEvent(OnShuttleTileChange); } private void OnThrusterExamine(EntityUid uid, ThrusterComponent component, ExaminedEvent args) @@ -89,24 +89,18 @@ namespace Content.Server.Shuttles.Systems } } - public override void Shutdown() - { - base.Shutdown(); - _mapManager.TileChanged -= OnTileChange; - } - private void OnIsHotEvent(EntityUid uid, ThrusterComponent component, IsHotEvent args) { args.IsHot = component.Type != ThrusterType.Angular && component.IsOn; } - private void OnTileChange(object? sender, TileChangedEventArgs e) + private void OnShuttleTileChange(EntityUid uid, ShuttleComponent component, ref TileChangedEvent args) { // If the old tile was space but the new one isn't then disable all adjacent thrusters - if (e.NewTile.IsSpace(_tileDefManager) || !e.OldTile.IsSpace(_tileDefManager)) return; + if (args.NewTile.IsSpace(_tileDefManager) || !args.OldTile.IsSpace(_tileDefManager)) return; - var tilePos = e.NewTile.GridIndices; - var grid = _mapManager.GetGrid(e.NewTile.GridUid); + var tilePos = args.NewTile.GridIndices; + var grid = _mapManager.GetGrid(uid); var xformQuery = GetEntityQuery(); var thrusterQuery = GetEntityQuery(); diff --git a/Content.Shared/SubFloor/SharedSubFloorHideSystem.cs b/Content.Shared/SubFloor/SharedSubFloorHideSystem.cs index 33f42efd99..f726827b47 100644 --- a/Content.Shared/SubFloor/SharedSubFloorHideSystem.cs +++ b/Content.Shared/SubFloor/SharedSubFloorHideSystem.cs @@ -80,7 +80,7 @@ namespace Content.Shared.SubFloor } } - private void OnTileChanged(TileChangedEvent args) + private void OnTileChanged(ref TileChangedEvent args) { if (args.OldTile.IsEmpty) return; // Nothing is anchored here anyways.