]> git.smokeofanarchy.ru Git - space-station-14.git/commitdiff
Replace obsolete Tile Access methods (#32508)
authorMilenVolf <63782763+MilenVolf@users.noreply.github.com>
Sat, 28 Sep 2024 23:27:47 +0000 (02:27 +0300)
committerGitHub <noreply@github.com>
Sat, 28 Sep 2024 23:27:47 +0000 (01:27 +0200)
* Replace obsolete SetTile

* Remove obsolete GetTileRef & GetAllTiles

* Forgor

* Apply suggested `GetMapOrInvalid`

18 files changed:
Content.IntegrationTests/Pair/TestPair.Helpers.cs
Content.Server/Decals/DecalSystem.cs
Content.Server/Explosion/EntitySystems/ExplosionSystem.GridMap.cs
Content.Server/Explosion/EntitySystems/ExplosionSystem.Processing.cs
Content.Server/Explosion/EntitySystems/ExplosionSystem.cs
Content.Server/ImmovableRod/ImmovableRodSystem.cs
Content.Server/Parallax/BiomeSystem.cs
Content.Server/Pointing/EntitySystems/PointingSystem.cs
Content.Server/Power/EntitySystems/CableSystem.Placer.cs
Content.Server/Procedural/DungeonSystem.Commands.cs
Content.Server/Singularity/EntitySystems/EventHorizonSystem.cs
Content.Server/SubFloor/SubFloorHideSystem.cs
Content.Server/Worldgen/Systems/Debris/BlobFloorPlanBuilderSystem.cs
Content.Server/Worldgen/Systems/Debris/SimpleFloorPlanPopulatorSystem.cs
Content.Shared/Friction/TileFrictionController.cs
Content.Shared/Sound/SharedEmitSoundSystem.cs
Content.Shared/SubFloor/SharedSubFloorHideSystem.cs
Content.Shared/Tiles/FloorTileSystem.cs

index 588cf0d80e0435e74f75444e37bf2829bb546f28..4604cd82966689400b15cdb0ccc5c62c37040812 100644 (file)
@@ -35,9 +35,9 @@ public sealed partial class TestPair
             mapData.GridCoords = new EntityCoordinates(mapData.Grid, 0, 0);
             var plating = tileDefinitionManager[tile];
             var platingTile = new Tile(plating.TileId);
-            mapData.Grid.Comp.SetTile(mapData.GridCoords, platingTile);
+            Server.System<SharedMapSystem>().SetTile(mapData.Grid.Owner, mapData.Grid.Comp, mapData.GridCoords, platingTile);
             mapData.MapCoords = new MapCoordinates(0, 0, mapData.MapId);
-            mapData.Tile = mapData.Grid.Comp.GetAllTiles().First();
+            mapData.Tile = Server.System<SharedMapSystem>().GetAllTiles(mapData.Grid.Owner, mapData.Grid.Comp).First();
         });
 
         TestMap = mapData;
index 519f7a133e5426cd027dd2c9c27009bb06c465eb..718475754f25b7f07a5b29b189fdb96d5f8fc51d 100644 (file)
@@ -35,7 +35,7 @@ namespace Content.Server.Decals
         [Dependency] private readonly IConfigurationManager _conf = default!;
         [Dependency] private readonly IGameTiming _timing = default!;
         [Dependency] private readonly IAdminLogManager _adminLogger = default!;
-        [Dependency] private readonly MapSystem _mapSystem = default!;
+        [Dependency] private readonly SharedMapSystem _mapSystem = default!;
 
         private readonly Dictionary<NetEntity, HashSet<Vector2i>> _dirtyChunks = new();
         private readonly Dictionary<ICommonSession, Dictionary<NetEntity, HashSet<Vector2i>>> _previousSentChunks = new();
@@ -106,7 +106,7 @@ namespace Content.Server.Decals
                 return;
 
             // Transfer decals over to the new grid.
-            var enumerator = Comp<MapGridComponent>(ev.Grid).GetAllTilesEnumerator();
+            var enumerator = _mapSystem.GetAllTilesEnumerator(ev.Grid, Comp<MapGridComponent>(ev.Grid));
 
             var oldChunkCollection = oldComp.ChunkCollection.ChunkCollection;
             var chunkCollection = newComp.ChunkCollection.ChunkCollection;
index 29477c16b28e3303c5525b2759089f5cb148bfc5..b08b66474b5de134ba6e926aa51d43355abdbe84 100644 (file)
@@ -29,7 +29,7 @@ public sealed partial class ExplosionSystem
         Dictionary<Vector2i, NeighborFlag> edges = new();
         _gridEdges[ev.EntityUid] = edges;
 
-        foreach (var tileRef in grid.GetAllTiles())
+        foreach (var tileRef in _map.GetAllTiles(ev.EntityUid, grid))
         {
             if (IsEdge(grid, tileRef.GridIndices, out var dir))
                 edges.Add(tileRef.GridIndices, dir);
index 97d52e436a8f7eeafefa57f6f5cd1c4f73a5d611..5f14858f1fab3637634310852317585188adc93c 100644 (file)
@@ -666,6 +666,7 @@ sealed class Explosion
 
     private readonly IEntityManager _entMan;
     private readonly ExplosionSystem _system;
+    private readonly SharedMapSystem _mapSystem;
 
     public readonly EntityUid VisualEnt;
 
@@ -688,11 +689,13 @@ sealed class Explosion
         IEntityManager entMan,
         IMapManager mapMan,
         EntityUid visualEnt,
-        EntityUid? cause)
+        EntityUid? cause,
+        SharedMapSystem mapSystem)
     {
         VisualEnt = visualEnt;
         Cause = cause;
         _system = system;
+        _mapSystem = mapSystem;
         ExplosionType = explosionType;
         _tileSetIntensity = tileSetIntensity;
         Epicenter = epicenter;
@@ -899,7 +902,7 @@ sealed class Explosion
         {
             if (list.Count > 0 && _entMan.EntityExists(grid.Owner))
             {
-                grid.SetTiles(list);
+                _mapSystem.SetTiles(grid.Owner, grid, list);
             }
         }
         _tileUpdateDict.Clear();
index 818953ed4b478b6d3990365bc201297e93d17364..42b66b5479facbd92855ebb2264379b59d5706e6 100644 (file)
@@ -389,7 +389,8 @@ public sealed partial class ExplosionSystem : SharedExplosionSystem
             EntityManager,
             _mapManager,
             visualEnt,
-            queued.Cause);
+            queued.Cause,
+            _map);
     }
 
     private void CameraShake(float range, MapCoordinates epicenter, float totalIntensity)
index f9873b0d6a99f62354f0f37e602fd3596e14b4d4..0d3d69c1bcb90a9e524821df6e93097918016f5d 100644 (file)
@@ -25,6 +25,7 @@ public sealed class ImmovableRodSystem : EntitySystem
     [Dependency] private readonly SharedAudioSystem _audio = default!;
     [Dependency] private readonly DamageableSystem _damageable = default!;
     [Dependency] private readonly SharedTransformSystem _transform = default!;
+    [Dependency] private readonly SharedMapSystem _map = default!;
 
     public override void Update(float frameTime)
     {
@@ -39,7 +40,7 @@ public sealed class ImmovableRodSystem : EntitySystem
             if (!TryComp<MapGridComponent>(trans.GridUid, out var grid))
                 continue;
 
-            grid.SetTile(trans.Coordinates, Tile.Empty);
+            _map.SetTile(trans.GridUid.Value, grid, trans.Coordinates, Tile.Empty);
         }
     }
 
index 1d7ea2a4407ed609d5318af91ad0bc50bc0f0eef..22b531eb7cb0a71402f20fec4ab2e51bc961e33e 100644 (file)
@@ -962,7 +962,7 @@ public sealed partial class BiomeSystem : SharedBiomeSystem
             }
         }
 
-        grid.SetTiles(tiles);
+        _mapSystem.SetTiles(gridUid, grid, tiles);
         tiles.Clear();
         component.LoadedChunks.Remove(chunk);
 
index d5ad1fb123e42b66645403aec5e2cc118da026ba..23c70d78f48a4716511719768ddb801ed0b3225e 100644 (file)
@@ -40,6 +40,7 @@ namespace Content.Server.Pointing.EntitySystems
         [Dependency] private readonly VisibilitySystem _visibilitySystem = default!;
         [Dependency] private readonly SharedMindSystem _minds = default!;
         [Dependency] private readonly SharedTransformSystem _transform = default!;
+        [Dependency] private readonly SharedMapSystem _map = default!;
         [Dependency] private readonly IAdminLogManager _adminLogger = default!;
         [Dependency] private readonly ExamineSystemShared _examine = default!;
 
@@ -73,8 +74,13 @@ namespace Content.Server.Pointing.EntitySystems
         }
 
         // TODO: FOV
-        private void SendMessage(EntityUid source, IEnumerable<ICommonSession> viewers, EntityUid pointed, string selfMessage,
-            string viewerMessage, string? viewerPointedAtMessage = null)
+        private void SendMessage(
+            EntityUid source,
+            IEnumerable<ICommonSession> viewers,
+            EntityUid pointed,
+            string selfMessage,
+            string viewerMessage,
+            string? viewerPointedAtMessage = null)
         {
             var netSource = GetNetEntity(source);
 
@@ -226,8 +232,8 @@ namespace Content.Server.Pointing.EntitySystems
 
                 if (_mapManager.TryFindGridAt(mapCoordsPointed, out var gridUid, out var grid))
                 {
-                    position = $"EntId={gridUid} {grid.WorldToTile(mapCoordsPointed.Position)}";
-                    tileRef = grid.GetTileRef(grid.WorldToTile(mapCoordsPointed.Position));
+                    position = $"EntId={gridUid} {_map.WorldToTile(gridUid, grid, mapCoordsPointed.Position)}";
+                    tileRef = _map.GetTileRef(gridUid, grid, _map.WorldToTile(gridUid, grid, mapCoordsPointed.Position));
                 }
 
                 var tileDef = _tileDefinitionManager[tileRef?.Tile.TypeId ?? 0];
index 263d626ef555f3fc7467e029045753047b256486..a5cf54fae0c871c5c32bb073a939801ab61d3d90 100644 (file)
@@ -11,6 +11,8 @@ namespace Content.Server.Power.EntitySystems;
 public sealed partial class CableSystem
 {
     [Dependency] private readonly IAdminLogManager _adminLogger = default!;
+    [Dependency] private readonly SharedTransformSystem _transform = default!;
+    [Dependency] private readonly SharedMapSystem _map = default!;
 
     private void InitializeCablePlacer()
     {
@@ -26,11 +28,12 @@ public sealed partial class CableSystem
         if (component.CablePrototypeId == null)
             return;
 
-        if(!TryComp<MapGridComponent>(args.ClickLocation.GetGridUid(EntityManager), out var grid))
+        if(!TryComp<MapGridComponent>(_transform.GetGrid(args.ClickLocation), out var grid))
             return;
 
+        var gridUid = _transform.GetGrid(args.ClickLocation)!.Value;
         var snapPos = grid.TileIndicesFor(args.ClickLocation);
-        var tileDef = (ContentTileDefinition) _tileManager[grid.GetTileRef(snapPos).Tile.TypeId];
+        var tileDef = (ContentTileDefinition) _tileManager[_map.GetTileRef(gridUid, grid,snapPos).Tile.TypeId];
 
         if (!tileDef.IsSubFloor || !tileDef.Sturdy)
             return;
index 51a6a57bbebe4ac1ab18c66de5d49e7af39c2d23..09e881686e479897c3df8e30de6f0491666641db 100644 (file)
@@ -1,8 +1,6 @@
-using System.Threading.Tasks;
 using Content.Server.Administration;
 using Content.Shared.Administration;
 using Content.Shared.Procedural;
-using Content.Shared.Procedural.DungeonGenerators;
 using Robust.Shared.Console;
 using Robust.Shared.Map;
 using Robust.Shared.Map.Components;
@@ -44,7 +42,7 @@ public sealed partial class DungeonSystem
         }
 
         var position = new Vector2i(posX, posY);
-        var dungeonUid = _mapManager.GetMapEntityId(mapId);
+        var dungeonUid = _maps.GetMapOrInvalid(mapId);
 
         if (!TryComp<MapGridComponent>(dungeonUid, out var dungeonGrid))
         {
@@ -118,7 +116,7 @@ public sealed partial class DungeonSystem
         }
 
         var mapId = new MapId(mapInt);
-        var mapUid = _mapManager.GetMapEntityId(mapId);
+        var mapUid = _maps.GetMapOrInvalid(mapId);
 
         if (!_prototype.TryIndex<DungeonRoomPackPrototype>(args[1], out var pack))
         {
@@ -156,7 +154,7 @@ public sealed partial class DungeonSystem
             }
         }
 
-        grid.SetTiles(tiles);
+        _maps.SetTiles(mapUid, grid, tiles);
         shell.WriteLine(Loc.GetString("cmd-dungen_pack_vis"));
     }
 
@@ -174,7 +172,7 @@ public sealed partial class DungeonSystem
         }
 
         var mapId = new MapId(mapInt);
-        var mapUid = _mapManager.GetMapEntityId(mapId);
+        var mapUid =_maps.GetMapOrInvalid(mapId);
 
         if (!_prototype.TryIndex<DungeonPresetPrototype>(args[1], out var preset))
         {
@@ -197,7 +195,7 @@ public sealed partial class DungeonSystem
             }
         }
 
-        grid.SetTiles(tiles);
+        _maps.SetTiles(mapUid, grid, tiles);
         shell.WriteLine(Loc.GetString("cmd-dungen_pack_vis"));
     }
 
index 3bf820535f0f92bfeebccb31b5781cf333b565d7..bf5a45549ceb130831ed4696f57a2e1ecac653d6 100644 (file)
@@ -32,6 +32,7 @@ public sealed class EventHorizonSystem : SharedEventHorizonSystem
     [Dependency] private readonly SharedContainerSystem _containerSystem = default!;
     [Dependency] private readonly SharedPhysicsSystem _physics = default!;
     [Dependency] private readonly SharedTransformSystem _xformSystem = default!;
+    [Dependency] private readonly SharedMapSystem _mapSystem = default!;
     [Dependency] private readonly TagSystem _tagSystem = default!;
     #endregion Dependencies
 
@@ -254,7 +255,7 @@ public sealed class EventHorizonSystem : SharedEventHorizonSystem
 
         var ev = new TilesConsumedByEventHorizonEvent(tiles, gridId, grid, hungry, eventHorizon);
         RaiseLocalEvent(hungry, ref ev);
-        grid.SetTiles(tiles);
+        _mapSystem.SetTiles(gridId, grid, tiles);
     }
 
     /// <summary>
index 2767f500f9ab1bd4ff0421ff4e667c9c905de0ea..497d7788d72c8e5c71ceefcfbdf605267f09846a 100644 (file)
@@ -19,7 +19,7 @@ public sealed class SubFloorHideSystem : SharedSubFloorHideSystem
         var xform = Transform(uid);
 
         if (TryComp<MapGridComponent>(xform.GridUid, out var grid)
-            && HasFloorCover(grid, grid.TileIndicesFor(xform.Coordinates)))
+            && HasFloorCover(xform.GridUid.Value, grid, Map.TileIndicesFor(xform.GridUid.Value, grid, xform.Coordinates)))
         {
             args.Cancel();
         }
index a09416e5937be2637439f7355933483683350277..ba0a3a7132e971731d944ddcf965a12e628c7f8f 100644 (file)
@@ -15,6 +15,7 @@ public sealed class BlobFloorPlanBuilderSystem : BaseWorldSystem
     [Dependency] private readonly IRobustRandom _random = default!;
     [Dependency] private readonly ITileDefinitionManager _tileDefinition = default!;
     [Dependency] private readonly TileSystem _tiles = default!;
+    [Dependency] private readonly SharedMapSystem _map = default!;
 
     /// <inheritdoc />
     public override void Initialize()
@@ -25,10 +26,10 @@ public sealed class BlobFloorPlanBuilderSystem : BaseWorldSystem
     private void OnBlobFloorPlanBuilderStartup(EntityUid uid, BlobFloorPlanBuilderComponent component,
         ComponentStartup args)
     {
-        PlaceFloorplanTiles(component, Comp<MapGridComponent>(uid));
+        PlaceFloorplanTiles(uid, component, Comp<MapGridComponent>(uid));
     }
 
-    private void PlaceFloorplanTiles(BlobFloorPlanBuilderComponent comp, MapGridComponent grid)
+    private void PlaceFloorplanTiles(EntityUid gridUid, BlobFloorPlanBuilderComponent comp, MapGridComponent grid)
     {
         // NO MORE THAN TWO ALLOCATIONS THANK YOU VERY MUCH.
         // TODO: Just put these on a field instead then?
@@ -82,7 +83,7 @@ public sealed class BlobFloorPlanBuilderSystem : BaseWorldSystem
             }
         }
 
-        grid.SetTiles(taken.Select(x => (x.Key, x.Value)).ToList());
+        _map.SetTiles(gridUid, grid, taken.Select(x => (x.Key, x.Value)).ToList());
     }
 }
 
index ae1c6b5c0066d7aa18ee79c788a7bf8fd2059473..a575e055ef8d9496fc335c18691be121ab7d8973 100644 (file)
@@ -13,6 +13,7 @@ public sealed class SimpleFloorPlanPopulatorSystem : BaseWorldSystem
 {
     [Dependency] private readonly IRobustRandom _random = default!;
     [Dependency] private readonly ITileDefinitionManager _tileDefinition = default!;
+    [Dependency] private readonly SharedMapSystem _map = default!;
 
     /// <inheritdoc />
     public override void Initialize()
@@ -25,7 +26,7 @@ public sealed class SimpleFloorPlanPopulatorSystem : BaseWorldSystem
     {
         var placeables = new List<string?>(4);
         var grid = Comp<MapGridComponent>(uid);
-        var enumerator = grid.GetAllTilesEnumerator();
+        var enumerator = _map.GetAllTilesEnumerator(uid, grid);
         while (enumerator.MoveNext(out var tile))
         {
             var coords = grid.GridTileToLocal(tile.Value.GridIndices);
index 930de07dab9713606ab96f1a1c904b8bb796c8f8..eb109caa42600af71716849bd76a54ba87dfd36e 100644 (file)
@@ -22,6 +22,7 @@ namespace Content.Shared.Friction
         [Dependency] private readonly SharedGravitySystem _gravity = default!;
         [Dependency] private readonly SharedMoverController _mover = default!;
         [Dependency] private readonly SharedPhysicsSystem _physics = default!;
+        [Dependency] private readonly SharedMapSystem _map = default!;
 
         private EntityQuery<TileFrictionModifierComponent> _frictionQuery;
         private EntityQuery<TransformComponent> _xformQuery;
@@ -185,7 +186,7 @@ namespace Content.Shared.Friction
                     : DefaultFriction;
             }
 
-            var tile = grid.GetTileRef(xform.Coordinates);
+            var tile = _map.GetTileRef(xform.GridUid.Value, grid, xform.Coordinates);
 
             // If it's a map but on an empty tile then just assume it has gravity.
             if (tile.Tile.IsEmpty &&
index 8733edf485d830a8f3be05b7da41616b23a111e6..8040910dc3c7999503bc527e4207cbb3dea03baf 100644 (file)
@@ -35,6 +35,7 @@ public abstract class SharedEmitSoundSystem : EntitySystem
     [Dependency] private   readonly SharedAmbientSoundSystem _ambient = default!;
     [Dependency] private   readonly SharedAudioSystem _audioSystem = default!;
     [Dependency] protected readonly SharedPopupSystem Popup = default!;
+    [Dependency] private readonly SharedMapSystem _map = default!;
     [Dependency] private readonly EntityWhitelistSystem _whitelistSystem = default!;
 
     public override void Initialize()
@@ -86,7 +87,7 @@ public abstract class SharedEmitSoundSystem : EntitySystem
             return;
         }
 
-        var tile = grid.GetTileRef(xform.Coordinates);
+        var tile = _map.GetTileRef(xform.GridUid.Value, grid, xform.Coordinates);
 
         // Handle maps being grids (we'll still emit the sound).
         if (xform.GridUid != xform.MapUid && tile.IsSpace(_tileDefMan))
index cebc84ecb93e615c883ee441d34995645f6effb0..c90a28a513268b789b1954b95665da82aa8f7007 100644 (file)
@@ -17,6 +17,7 @@ namespace Content.Shared.SubFloor
     {
         [Dependency] private readonly ITileDefinitionManager _tileDefinitionManager = default!;
         [Dependency] private readonly SharedAmbientSoundSystem _ambientSoundSystem = default!;
+        [Dependency] protected readonly SharedMapSystem Map = default!;
         [Dependency] protected readonly SharedAppearanceSystem Appearance = default!;
 
         public override void Initialize()
@@ -92,7 +93,7 @@ namespace Content.Shared.SubFloor
             if (args.NewTile.Tile.IsEmpty)
                 return; // Anything that was here will be unanchored anyways.
 
-            UpdateTile(Comp<MapGridComponent>(args.NewTile.GridUid), args.NewTile.GridIndices);
+            UpdateTile(args.NewTile.GridUid, Comp<MapGridComponent>(args.NewTile.GridUid), args.NewTile.GridIndices);
         }
 
         /// <summary>
@@ -104,25 +105,25 @@ namespace Content.Shared.SubFloor
                 return;
 
             if (xform.Anchored && TryComp<MapGridComponent>(xform.GridUid, out var grid))
-                component.IsUnderCover = HasFloorCover(grid, grid.TileIndicesFor(xform.Coordinates));
+                component.IsUnderCover = HasFloorCover(xform.GridUid.Value, grid, Map.TileIndicesFor(xform.GridUid.Value, grid, xform.Coordinates));
             else
                 component.IsUnderCover = false;
 
             UpdateAppearance(uid, component);
         }
 
-        public bool HasFloorCover(MapGridComponent grid, Vector2i position)
+        public bool HasFloorCover(EntityUid gridUid, MapGridComponent grid, Vector2i position)
         {
             // TODO Redo this function. Currently wires on an asteroid are always "below the floor"
-            var tileDef = (ContentTileDefinition) _tileDefinitionManager[grid.GetTileRef(position).Tile.TypeId];
+            var tileDef = (ContentTileDefinition) _tileDefinitionManager[Map.GetTileRef(gridUid, grid, position).Tile.TypeId];
             return !tileDef.IsSubFloor;
         }
 
-        private void UpdateTile(MapGridComponent grid, Vector2i position)
+        private void UpdateTile(EntityUid gridUid, MapGridComponent grid, Vector2i position)
         {
-            var covered = HasFloorCover(grid, position);
+            var covered = HasFloorCover(gridUid, grid, position);
 
-            foreach (var uid in grid.GetAnchoredEntities(position))
+            foreach (var uid in Map.GetAnchoredEntities(gridUid, grid, position))
             {
                 if (!TryComp(uid, out SubFloorHideComponent? hideComp))
                     continue;
index f031292f231943ce5f7f58a519a65c0520a7e95a..3acd5051c9cbac8982f9afd53b299d2a76ad72e6 100644 (file)
@@ -36,6 +36,7 @@ public sealed class FloorTileSystem : EntitySystem
     [Dependency] private readonly SharedTransformSystem _transform = default!;
     [Dependency] private readonly TileSystem _tile = default!;
     [Dependency] private readonly SharedPhysicsSystem _physics = default!;
+    [Dependency] private readonly SharedMapSystem _map = default!;
 
     private static readonly Vector2 CheckRange = new(1f, 1f);
 
@@ -132,7 +133,7 @@ public sealed class FloorTileSystem : EntitySystem
                     return;
                 }
 
-                var tile = mapGrid.GetTileRef(location);
+                var tile = _map.GetTileRef(gridUid, mapGrid, location);
                 var baseTurf = (ContentTileDefinition) _tileDefinitionManager[tile.Tile.TypeId];
 
                 if (HasBaseTurf(currentTileDefinition, baseTurf.ID))
@@ -176,7 +177,7 @@ public sealed class FloorTileSystem : EntitySystem
 
         var random = new System.Random((int) _timing.CurTick.Value);
         var variant = _tile.PickVariant((ContentTileDefinition) _tileDefinitionManager[tileId], random);
-        mapGrid.SetTile(location.Offset(new Vector2(offset, offset)), new Tile(tileId, 0, variant));
+        _map.SetTile(gridUid, mapGrid,location.Offset(new Vector2(offset, offset)), new Tile(tileId, 0, variant));
 
         _audio.PlayPredicted(placeSound, location, user);
     }