Files
tbd-station-14/Content.Shared/Strip/Components/ThievingComponent.cs
ArtisticRoomba 3eba895fc7 Thieves can innately pickpocket - thieving gloves rework (#38123)
* Thieves can innately pickpocket (#107)

Pickpocketing a skyrim guard's armor off

(cherry picked from commit 21b9f1ddb251ea3c7c6803e78871abefcaecbfb4)

* this isnt moff

* Make predicted, cleanup

* !skating-basketball

* orks are NOT the best trollface

* Implement much more sensible component replication prevention

---------

Co-authored-by: DuckManZach <144298822+duckmanzach@users.noreply.github.com>
2025-06-16 15:47:31 -07:00

45 lines
1.2 KiB
C#

using Content.Shared.Alert;
using Robust.Shared.GameStates;
using Robust.Shared.Prototypes;
namespace Content.Shared.Strip.Components;
/// <summary>
/// Give this to an entity when you want to decrease stripping times
/// </summary>
[RegisterComponent, NetworkedComponent]
[AutoGenerateComponentState(fieldDeltas: true)]
public sealed partial class ThievingComponent : Component
{
/// <summary>
/// How much the strip time should be shortened by
/// </summary>
[DataField, AutoNetworkedField]
public TimeSpan StripTimeReduction = TimeSpan.FromSeconds(0.5f);
/// <summary>
/// Should it notify the user if they're stripping a pocket?
/// </summary>
[DataField, AutoNetworkedField]
public bool Stealthy;
/// <summary>
/// Variable pointing at the Alert modal
/// </summary>
[DataField]
public ProtoId<AlertPrototype> StealthyAlertProtoId = "Stealthy";
/// <summary>
/// Prevent component replication to clients other than the owner,
/// doesn't affect prediction.
/// Get mogged.
/// </summary>
public override bool SendOnlyToOwner => true;
}
/// <summary>
/// Event raised to toggle the thieving component.
/// </summary>
public sealed partial class ToggleThievingEvent : BaseAlertEvent;