2024-01-27 18:04:11 +03:00
|
|
|
using Content.Shared.Item.ItemToggle.Components;
|
|
|
|
|
using Content.Shared.Wieldable.Components;
|
|
|
|
|
|
2024-01-28 18:37:24 +07:00
|
|
|
namespace Content.Shared._White.Wield;
|
2024-01-27 18:04:11 +03:00
|
|
|
|
|
|
|
|
public sealed class ToggleableWieldedSystem : EntitySystem
|
|
|
|
|
{
|
|
|
|
|
public override void Initialize()
|
|
|
|
|
{
|
|
|
|
|
base.Initialize();
|
2024-01-28 18:37:24 +07:00
|
|
|
|
2024-01-27 18:04:11 +03:00
|
|
|
SubscribeLocalEvent<ToggleableWieldedComponent, ItemToggleActivateAttemptEvent>(AttemptActivate);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void AttemptActivate(Entity<ToggleableWieldedComponent> ent, ref ItemToggleActivateAttemptEvent args)
|
|
|
|
|
{
|
|
|
|
|
if (TryComp(ent, out WieldableComponent? wieldable) && !wieldable.Wielded)
|
|
|
|
|
args.Cancelled = true;
|
|
|
|
|
}
|
|
|
|
|
}
|