CatStation/Content.Shared/Mobs/Components/ActionRequireMobStateComponent.cs
ScarKy0 091180655d
Changeling Chemicals (#45239)
* initially works i think

* yeah

* pulled these numbers outta my ass

* text

* silly

* fixy fix

* fix

* This sure is a videogame

* init test fuck everything

* sprites

* fix dirty

* query

* another query

* craftable changeling sting

* remove todo

* \n

* doc
2026-08-19 19:25:16 +00:00

28 lines
880 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 LocId? FailReason = "mob-state-action-requires-state";
/// <summary>
/// The type of the popup the fail reason should show as.
/// </summary>
[DataField, AutoNetworkedField]
public PopupType FailReasonPopupType = PopupType.SmallCaution;
}