Fix cryopod interactions (#15045)

This commit is contained in:
Leon Friedrich
2023-04-03 08:30:03 +12:00
committed by GitHub
parent 1bd3e54dae
commit 4e978d54a4
4 changed files with 8 additions and 5 deletions

View File

@@ -3,5 +3,5 @@ using Content.Shared.Medical.Cryogenics;
namespace Content.Client.Medical.Cryogenics; namespace Content.Client.Medical.Cryogenics;
[RegisterComponent] [RegisterComponent, ComponentReference(typeof(SharedCryoPodComponent))]
public sealed class CryoPodComponent : SharedCryoPodComponent { } public sealed class CryoPodComponent : SharedCryoPodComponent { }

View File

@@ -4,7 +4,7 @@ using Content.Shared.Medical.Cryogenics;
namespace Content.Server.Medical.Components; namespace Content.Server.Medical.Components;
[RegisterComponent] [RegisterComponent, ComponentReference(typeof(SharedCryoPodComponent))]
public sealed class CryoPodComponent: SharedCryoPodComponent public sealed class CryoPodComponent: SharedCryoPodComponent
{ {
/// <summary> /// <summary>

View File

@@ -53,7 +53,6 @@ public sealed partial class CryoPodSystem: SharedCryoPodSystem
{ {
base.Initialize(); base.Initialize();
SubscribeLocalEvent<CryoPodComponent, CanDropTargetEvent>(OnCryoPodCanDropOn);
SubscribeLocalEvent<CryoPodComponent, ComponentInit>(OnComponentInit); SubscribeLocalEvent<CryoPodComponent, ComponentInit>(OnComponentInit);
SubscribeLocalEvent<CryoPodComponent, GetVerbsEvent<AlternativeVerb>>(AddAlternativeVerbs); SubscribeLocalEvent<CryoPodComponent, GetVerbsEvent<AlternativeVerb>>(AddAlternativeVerbs);
SubscribeLocalEvent<CryoPodComponent, GotEmaggedEvent>(OnEmagged); SubscribeLocalEvent<CryoPodComponent, GotEmaggedEvent>(OnEmagged);

View File

@@ -26,12 +26,16 @@ public abstract partial class SharedCryoPodSystem: EntitySystem
{ {
base.Initialize(); base.Initialize();
SubscribeLocalEvent<SharedCryoPodComponent, CanDropTargetEvent>(OnCryoPodCanDropOn);
InitializeInsideCryoPod(); InitializeInsideCryoPod();
} }
protected void OnCryoPodCanDropOn(EntityUid uid, SharedCryoPodComponent component, ref CanDropTargetEvent args) private void OnCryoPodCanDropOn(EntityUid uid, SharedCryoPodComponent component, ref CanDropTargetEvent args)
{ {
args.CanDrop = args.CanDrop && HasComp<BodyComponent>(args.Dragged); if (args.Handled)
return;
args.CanDrop = HasComp<BodyComponent>(args.Dragged);
args.Handled = true; args.Handled = true;
} }