Update tilechangedevent to ref structs (#13383)
This commit is contained in:
@@ -59,7 +59,7 @@ public sealed partial class AtmosphereSystem : SharedAtmosphereSystem
|
|||||||
ShutdownCommands();
|
ShutdownCommands();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnTileChanged(TileChangedEvent ev)
|
private void OnTileChanged(ref TileChangedEvent ev)
|
||||||
{
|
{
|
||||||
InvalidateTile(ev.NewTile.GridUid, ev.NewTile.GridIndices);
|
InvalidateTile(ev.NewTile.GridUid, ev.NewTile.GridIndices);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ public sealed class AutomaticAtmosSystem : EntitySystem
|
|||||||
SubscribeLocalEvent<TileChangedEvent>(OnTileChanged);
|
SubscribeLocalEvent<TileChangedEvent>(OnTileChanged);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnTileChanged(TileChangedEvent ev)
|
private void OnTileChanged(ref TileChangedEvent ev)
|
||||||
{
|
{
|
||||||
// Only if a atmos-holding tile has been added or removed.
|
// Only if a atmos-holding tile has been added or removed.
|
||||||
// Also, these calls are surprisingly slow.
|
// Also, these calls are surprisingly slow.
|
||||||
|
|||||||
@@ -159,7 +159,7 @@ namespace Content.Server.Decals
|
|||||||
_conf.UnsubValueChanged(CVars.NetPVS, OnPvsToggle);
|
_conf.UnsubValueChanged(CVars.NetPVS, OnPvsToggle);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnTileChanged(TileChangedEvent args)
|
private void OnTileChanged(ref TileChangedEvent args)
|
||||||
{
|
{
|
||||||
if (!args.NewTile.IsSpace(_tileDefMan))
|
if (!args.NewTile.IsSpace(_tileDefMan))
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -221,7 +221,7 @@ public sealed partial class ExplosionSystem : EntitySystem
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// When a tile is updated, we might need to update the grid edge maps.
|
/// When a tile is updated, we might need to update the grid edge maps.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
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.
|
// 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)
|
if (!ev.NewTile.Tile.IsEmpty && !ev.OldTile.IsEmpty)
|
||||||
|
|||||||
@@ -53,7 +53,7 @@ public sealed partial class PathfindingSystem
|
|||||||
SubscribeLocalEvent<MoveEvent>(OnMoveEvent);
|
SubscribeLocalEvent<MoveEvent>(OnMoveEvent);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnTileChange(TileChangedEvent ev)
|
private void OnTileChange(ref TileChangedEvent ev)
|
||||||
{
|
{
|
||||||
if (ev.OldTile.IsEmpty == ev.NewTile.Tile.IsEmpty)
|
if (ev.OldTile.IsEmpty == ev.NewTile.Tile.IsEmpty)
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -62,7 +62,7 @@ namespace Content.Server.Shuttles.Systems
|
|||||||
SubscribeLocalEvent<ThrusterComponent, RefreshPartsEvent>(OnRefreshParts);
|
SubscribeLocalEvent<ThrusterComponent, RefreshPartsEvent>(OnRefreshParts);
|
||||||
SubscribeLocalEvent<ThrusterComponent, UpgradeExamineEvent>(OnUpgradeExamine);
|
SubscribeLocalEvent<ThrusterComponent, UpgradeExamineEvent>(OnUpgradeExamine);
|
||||||
|
|
||||||
_mapManager.TileChanged += OnTileChange;
|
SubscribeLocalEvent<ShuttleComponent, TileChangedEvent>(OnShuttleTileChange);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnThrusterExamine(EntityUid uid, ThrusterComponent component, ExaminedEvent args)
|
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)
|
private void OnIsHotEvent(EntityUid uid, ThrusterComponent component, IsHotEvent args)
|
||||||
{
|
{
|
||||||
args.IsHot = component.Type != ThrusterType.Angular && component.IsOn;
|
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 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 tilePos = args.NewTile.GridIndices;
|
||||||
var grid = _mapManager.GetGrid(e.NewTile.GridUid);
|
var grid = _mapManager.GetGrid(uid);
|
||||||
var xformQuery = GetEntityQuery<TransformComponent>();
|
var xformQuery = GetEntityQuery<TransformComponent>();
|
||||||
var thrusterQuery = GetEntityQuery<ThrusterComponent>();
|
var thrusterQuery = GetEntityQuery<ThrusterComponent>();
|
||||||
|
|
||||||
|
|||||||
@@ -80,7 +80,7 @@ namespace Content.Shared.SubFloor
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnTileChanged(TileChangedEvent args)
|
private void OnTileChanged(ref TileChangedEvent args)
|
||||||
{
|
{
|
||||||
if (args.OldTile.IsEmpty)
|
if (args.OldTile.IsEmpty)
|
||||||
return; // Nothing is anchored here anyways.
|
return; // Nothing is anchored here anyways.
|
||||||
|
|||||||
Reference in New Issue
Block a user