CatStation/Content.Shared/Mobs/Components/ActionRequireMobStateComponent.cs
DrSmugleaf 8e7bbf5160
Add components to require uncovered mouth and specific mob states for actions (#44680)
* Add components to require uncovered mouth and specific mob states for actions

* Address reviews

* address reviews

* added comments

---------

Co-authored-by: Velken <8467292+Velken@users.noreply.github.com>
2026-07-23 21:19:07 +00:00

22 lines
665 B
C#

using Content.Shared.Mobs.Systems;
using Content.Shared.Popups;
using Robust.Shared.GameStates;
namespace Content.Shared.Mobs.Components;
[RegisterComponent, NetworkedComponent, AutoGenerateComponentState]
[Access(typeof(MobStateSystem))]
public sealed partial class ActionRequireMobStateComponent : Component
{
/// <summary>
/// The required MobState for the action.
/// </summary>
[DataField(required: true), AutoNetworkedField]
public HashSet<MobState> States = new();
/// <summary>
/// The type of Popup to be used.
/// </summary>
[DataField, AutoNetworkedField]
public PopupType? Popup = PopupType.SmallCaution;
}