Files
tbd-station-14/Content.Shared/Placeable/SharedPlaceableSurfaceComponent.cs
2021-07-16 17:37:09 -07:00

33 lines
993 B
C#

using System;
using Robust.Shared.GameObjects;
using Robust.Shared.GameStates;
using Robust.Shared.Maths;
using Robust.Shared.Serialization;
namespace Content.Shared.Placeable
{
[NetworkedComponent()]
public abstract class SharedPlaceableSurfaceComponent : Component
{
public override string Name => "PlaceableSurface";
public virtual bool IsPlaceable { get; set; }
public virtual bool PlaceCentered { get; set; }
public virtual Vector2 PositionOffset { get; set; }
}
[Serializable, NetSerializable]
public class PlaceableSurfaceComponentState : ComponentState
{
public readonly bool IsPlaceable;
public readonly bool PlaceCentered;
public readonly Vector2 PositionOffset;
public PlaceableSurfaceComponentState(bool placeable, bool centered, Vector2 offset)
{
IsPlaceable = placeable;
PlaceCentered = centered;
PositionOffset = offset;
}
}
}