Remove IInteractHand (#7601)

* Plantholder

* Strap

* Finish him

* Mirror review stuff
This commit is contained in:
Rane
2022-04-22 23:49:45 -04:00
committed by GitHub
parent e5bc79a713
commit c022afaec4
8 changed files with 71 additions and 112 deletions

View File

@@ -1,15 +1,12 @@
using Content.Server.Buckle.Components;
using Content.Server.Interaction;
using Content.Shared.Body.Components;
using Content.Shared.MobState.Components;
using Content.Shared.Interaction;
using Content.Shared.Storage;
using Content.Shared.Verbs;
using JetBrains.Annotations;
using Robust.Server.GameObjects;
using Robust.Shared.Containers;
using Robust.Shared.GameObjects;
using Robust.Shared.IoC;
using Robust.Shared.Localization;
namespace Content.Server.Buckle.Systems
{
@@ -24,6 +21,7 @@ namespace Content.Server.Buckle.Systems
SubscribeLocalEvent<StrapComponent, GetVerbsEvent<InteractionVerb>>(AddStrapVerbs);
SubscribeLocalEvent<StrapComponent, ContainerGettingInsertedAttemptEvent>(OnInsertAttempt);
SubscribeLocalEvent<StrapComponent, InteractHandEvent>(OnInteractHand);
}
private void OnInsertAttempt(EntityUid uid, StrapComponent component, ContainerGettingInsertedAttemptEvent args)
@@ -33,6 +31,14 @@ namespace Content.Server.Buckle.Systems
args.Cancel();
}
private void OnInteractHand(EntityUid uid, StrapComponent component, InteractHandEvent args)
{
if (!TryComp<BuckleComponent>(args.User, out var buckle))
return;
buckle.ToggleBuckle(args.User, uid);
}
// TODO ECS BUCKLE/STRAP These 'Strap' verbs are an incestuous mess of buckle component and strap component
// functions. Whenever these are fully ECSed, maybe do it in a way that allows for these verbs to be handled in
// a sensible manner in a single system?