2025-04-13 19:03:49 +05:00
|
|
|
|
using Content.Shared._White.Cult.UI;
|
|
|
|
|
|
using Robust.Shared.GameStates;
|
|
|
|
|
|
using Robust.Shared.Serialization;
|
2024-01-27 15:19:52 +03:00
|
|
|
|
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.List;
|
|
|
|
|
|
|
2025-04-13 19:03:49 +05:00
|
|
|
|
namespace Content.Shared._White.Cult.Components;
|
2024-01-27 15:19:52 +03:00
|
|
|
|
|
2025-04-13 19:03:49 +05:00
|
|
|
|
[RegisterComponent, NetworkedComponent]
|
2024-01-27 15:19:52 +03:00
|
|
|
|
public sealed partial class CultistFactoryComponent : Component
|
|
|
|
|
|
{
|
|
|
|
|
|
[ViewVariables(VVAccess.ReadOnly)]
|
|
|
|
|
|
[DataField("cooldown")]
|
|
|
|
|
|
public int Cooldown = 240;
|
|
|
|
|
|
|
|
|
|
|
|
[ViewVariables(VVAccess.ReadOnly)]
|
|
|
|
|
|
public TimeSpan? NextTimeUse;
|
|
|
|
|
|
|
|
|
|
|
|
[ViewVariables(VVAccess.ReadOnly)]
|
|
|
|
|
|
[DataField("products", customTypeSerializer: typeof(PrototypeIdListSerializer<CultistFactoryProductionPrototype>))]
|
|
|
|
|
|
public IReadOnlyCollection<string> Products = ArraySegment<string>.Empty;
|
|
|
|
|
|
|
2023-11-15 23:31:43 +03:00
|
|
|
|
public Enum UserInterfaceKey = CultistAltarUiKey.Key;
|
2024-01-27 15:19:52 +03:00
|
|
|
|
|
|
|
|
|
|
[ViewVariables(VVAccess.ReadOnly)]
|
|
|
|
|
|
public bool Active = true;
|
|
|
|
|
|
}
|