Files
tbd-station-14/Content.Shared/APC/SharedApc.cs
rolfero d7b31865ff APC construction updated, uses electronics (#10987)
* APC construction and deconstruction
Construction action GivePrototype

* APC needs screwing + sprites

* apc framework, working construction recipe

* Energy swords hot

* APC changes

* APC construction/deconstruction

* removed comments

* Revert "Energy swords hot"

This reverts commit 75228483abb3cc6252118b319bc8949d5198362d.

* Renamed function for clarity

* Fixed the last step not showing in the construction menu

* Some fixes

* Update Content.Server/Power/EntitySystems/ApcSystem.cs

Co-authored-by: Jacob Tong <10494922+ShadowCommander@users.noreply.github.com>

* Update Content.Server/Construction/Completions/GivePrototype.cs

Co-authored-by: Jacob Tong <10494922+ShadowCommander@users.noreply.github.com>

* Update Resources/Prototypes/Entities/Structures/Power/apc.yml

Co-authored-by: Jacob Tong <10494922+ShadowCommander@users.noreply.github.com>

* Update Resources/Prototypes/Entities/Structures/Power/apc.yml

Co-authored-by: Jacob Tong <10494922+ShadowCommander@users.noreply.github.com>

* Update Content.Server/Power/Components/ApcElectronicsComponent.cs

Co-authored-by: Jacob Tong <10494922+ShadowCommander@users.noreply.github.com>

* Update Content.Client/Power/APC/ApcVisualizer.cs

Co-authored-by: Jacob Tong <10494922+ShadowCommander@users.noreply.github.com>

Co-authored-by: CommieFlowers <rasmus.cedergren@hotmail.com>
Co-authored-by: Jacob Tong <10494922+ShadowCommander@users.noreply.github.com>
2022-09-09 20:27:41 -07:00

89 lines
2.0 KiB
C#

using Robust.Shared.Serialization;
namespace Content.Shared.APC
{
[Serializable, NetSerializable]
public enum ApcVisuals
{
/// <summary>
/// APC lights/HUD.
/// </summary>
ChargeState,
/// <summary>
/// APC frame.
/// </summary>
PanelState
}
[Serializable, NetSerializable]
public enum ApcPanelState
{
/// <summary>
/// APC is closed.
/// </summary>
Closed,
/// <summary>
/// APC opened.
/// </summary>
Open
}
[Serializable, NetSerializable]
public enum ApcChargeState
{
/// <summary>
/// APC does not have enough power to charge cell (if necessary) and keep powering the area.
/// </summary>
Lack,
/// <summary>
/// APC is not full but has enough power.
/// </summary>
Charging,
/// <summary>
/// APC battery is full and has enough power.
/// </summary>
Full,
/// <summary>
/// APC is emagged (and not displaying other useful power colors at a glance)
/// </summary>
Emag,
}
[Serializable, NetSerializable]
public sealed class ApcBoundInterfaceState : BoundUserInterfaceState
{
public readonly bool MainBreaker;
public readonly ApcExternalPowerState ApcExternalPower;
public readonly float Charge;
public ApcBoundInterfaceState(bool mainBreaker, ApcExternalPowerState apcExternalPower, float charge)
{
MainBreaker = mainBreaker;
ApcExternalPower = apcExternalPower;
Charge = charge;
}
}
[Serializable, NetSerializable]
public sealed class ApcToggleMainBreakerMessage : BoundUserInterfaceMessage
{
}
public enum ApcExternalPowerState
{
None,
Low,
Good,
}
[NetSerializable, Serializable]
public enum ApcUiKey
{
Key,
}
}