Files
tbd-station-14/Content.Server/ParticleAccelerator/Components/ParticleAcceleratorPartComponent.cs
Acruid 15fb554c28 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.
2021-06-19 19:41:26 -07:00

42 lines
921 B
C#

#nullable enable
using Robust.Shared.GameObjects;
using Robust.Shared.ViewVariables;
namespace Content.Server.ParticleAccelerator.Components
{
public abstract class ParticleAcceleratorPartComponent : Component
{
[ViewVariables] public ParticleAcceleratorControlBoxComponent? Master;
protected override void Initialize()
{
base.Initialize();
// FIXME: this has to be an entity system, full stop.
Owner.Transform.Anchored = true;
}
public void OnAnchorChanged()
{
RescanIfPossible();
}
protected override void OnRemove()
{
base.OnRemove();
RescanIfPossible();
}
private void RescanIfPossible()
{
Master?.RescanParts();
}
public virtual void Rotated()
{
RescanIfPossible();
}
}
}