6
2025-11-11 11:18:56 +03:00

40 lines
1.3 KiB
C#

namespace Content.Server.Xenoarchaeology.Artifact.XAE.Components;
/// <summary>
/// Harmless artifact that broadcast "thoughts" to players nearby.
/// Thoughts are shown as popups and unique for each player.
/// </summary>
[RegisterComponent, Access(typeof(XAETelepathicSystem))]
public sealed partial class XAETelepathicComponent : Component
{
/// <summary>
/// Loc string ids of telepathic messages.
/// Will be randomly picked and shown to player.
/// </summary>
[DataField("messages")]
[ViewVariables(VVAccess.ReadWrite)]
public List<string> Messages = default!;
/// <summary>
/// Loc string ids of telepathic messages (spooky version).
/// Will be randomly picked and shown to player.
/// </summary>
[DataField("drastic")]
[ViewVariables(VVAccess.ReadWrite)]
public List<string>? DrasticMessages;
/// <summary>
/// Probability to pick drastic version of message.
/// </summary>
[DataField("drasticProb")]
[ViewVariables(VVAccess.ReadWrite)]
public float DrasticMessageProb = 0.2f;
/// <summary>
/// Radius in which player can receive artifacts messages.
/// </summary>
[DataField("range")]
[ViewVariables(VVAccess.ReadWrite)]
public float Range = 10f;
}