Engine Entity Anchoring Changes (#4195)

* Converted all SnapGridPositionChangedEvent subscriptions to AnchorStateChangedEvent.

* Fixes power tests with new anchored requirements.

* Moved AnchorableComponent into construction.
AnchorableComponent now uses Transform.Anchored.

* Fixed bug with nodes, power works again.

* Adds lifetime stages to Component.

* Update Engine to v0.4.70.
This commit is contained in:
Acruid
2021-06-19 19:41:26 -07:00
committed by GitHub
parent 0ab7b3a5d2
commit 15fb554c28
187 changed files with 279 additions and 287 deletions

View File

@@ -73,7 +73,7 @@ namespace Content.Server.Atmos.Components
[ViewVariables]
public bool FixVacuum => _fixVacuum;
public override void Initialize()
protected override void Initialize()
{
base.Initialize();
@@ -137,14 +137,17 @@ namespace Content.Server.Atmos.Components
}
}
public void OnSnapGridMove(SnapGridPositionChangedEvent ev)
public void AnchorStateChanged()
{
// Invalidate old position.
InvalidatePosition(ev.OldGrid, ev.OldPosition);
var gridId = Owner.Transform.GridID;
var coords = Owner.Transform.Coordinates;
var grid = _mapManager.GetGrid(gridId);
var tilePos = grid.TileIndicesFor(coords);
// Update and invalidate new position.
_lastPosition = (ev.NewGrid, ev.Position);
InvalidatePosition(ev.NewGrid, ev.Position);
_lastPosition = (gridId, tilePos);
InvalidatePosition(gridId, tilePos);
}
private void UpdatePosition()