Files
OldThink/Content.Shared/_Amour/InteractionPanel/InteractionPanelMessages.cs

58 lines
1.4 KiB
C#
Raw Permalink Normal View History

2024-02-23 18:52:03 +03:00
using Content.Shared.Eui;
using Robust.Shared.Prototypes;
using Robust.Shared.Serialization;
namespace Content.Shared._Amour.InteractionPanel;
[Serializable,NetSerializable]
public sealed class InteractionSelectedMessage : EuiMessageBase
{
public string Id;
public InteractionSelectedMessage(string id)
{
Id = id;
}
}
2024-02-26 21:43:11 +03:00
[Serializable,NetSerializable]
public sealed class InteractionUpdateMessage : EuiMessageBase
{
}
2024-02-23 18:52:03 +03:00
[Serializable,NetSerializable]
public sealed class InteractionState: EuiStateBase
{
public NetEntity Performer { get; }
public NetEntity Target { get; }
2024-02-26 21:43:11 +03:00
public HashSet<InteractionEntry> AvailableInteractions;
2024-02-27 18:22:15 +03:00
public HashSet<string> DescUser;
public HashSet<string> DescTarget;
2024-02-23 18:52:03 +03:00
public byte? Arousal;
2024-02-27 18:22:15 +03:00
public InteractionState(NetEntity performer, NetEntity target, HashSet<InteractionEntry> availableInteractions, byte? arousal, HashSet<string> descUser, HashSet<string> descTarget)
2024-02-23 18:52:03 +03:00
{
Performer = performer;
Target = target;
AvailableInteractions = availableInteractions;
Arousal = arousal;
2024-02-27 18:22:15 +03:00
DescUser = descUser;
DescTarget = descTarget;
2024-02-23 18:52:03 +03:00
}
}
2024-02-26 21:43:11 +03:00
[Serializable, NetSerializable]
public sealed class InteractionEntry
{
public string Prototype;
public bool Enabled;
public InteractionEntry(string prototype, bool enabled)
{
Prototype = prototype;
Enabled = enabled;
}
}