Files
tbd-station-14/Content.Shared/Light/Component/SharedHandheldLightComponent.cs
2021-06-09 22:19:39 +02:00

46 lines
1.1 KiB
C#

#nullable enable
using System;
using Content.Shared.NetIDs;
using Robust.Shared.GameObjects;
using Robust.Shared.Serialization;
namespace Content.Shared.Light.Component
{
public abstract class SharedHandheldLightComponent : Robust.Shared.GameObjects.Component
{
public sealed override string Name => "HandheldLight";
public sealed override uint? NetID => ContentNetIDs.HANDHELD_LIGHT;
protected abstract bool HasCell { get; }
protected const int StatusLevels = 6;
[Serializable, NetSerializable]
protected sealed class HandheldLightComponentState : ComponentState
{
public byte? Charge { get; }
public HandheldLightComponentState(byte? charge) : base(ContentNetIDs.HANDHELD_LIGHT)
{
Charge = charge;
}
}
}
[Serializable, NetSerializable]
public enum HandheldLightVisuals
{
Power
}
[Serializable, NetSerializable]
public enum HandheldLightPowerStates
{
FullPower,
LowPower,
Dying,
}
}