2022-01-22 15:55:11 +03:00
|
|
|
namespace Content.Server.Xenoarchaeology.XenoArtifacts.Effects.Components;
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Harmless artifact that broadcast "thoughts" to players nearby.
|
|
|
|
|
/// Thoughts are shown as popups and unique for each player.
|
|
|
|
|
/// </summary>
|
|
|
|
|
[RegisterComponent]
|
2023-08-22 18:14:33 -07:00
|
|
|
public sealed partial class TelepathicArtifactComponent : Component
|
2022-01-22 15:55:11 +03:00
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Loc string ids of telepathic messages.
|
|
|
|
|
/// Will be randomly picked and shown to player.
|
|
|
|
|
/// </summary>
|
|
|
|
|
[DataField("messages")]
|
|
|
|
|
[ViewVariables(VVAccess.ReadWrite)]
|
2022-11-06 18:05:44 -05:00
|
|
|
public List<string> Messages = default!;
|
2022-01-22 15:55:11 +03:00
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Loc string ids of telepathic messages (spooky version).
|
|
|
|
|
/// Will be randomly picked and shown to player.
|
|
|
|
|
/// </summary>
|
|
|
|
|
[DataField("drastic")]
|
|
|
|
|
[ViewVariables(VVAccess.ReadWrite)]
|
2022-11-06 18:05:44 -05:00
|
|
|
public List<string>? DrasticMessages;
|
2022-01-22 15:55:11 +03:00
|
|
|
|
|
|
|
|
/// <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;
|
|
|
|
|
}
|