diff --git a/Content.Server/Storage/EntitySystems/DumpableSystem.cs b/Content.Server/Storage/EntitySystems/DumpableSystem.cs index 4d2bac4d19..806900e7a0 100644 --- a/Content.Server/Storage/EntitySystems/DumpableSystem.cs +++ b/Content.Server/Storage/EntitySystems/DumpableSystem.cs @@ -21,7 +21,7 @@ namespace Content.Server.Storage.EntitySystems public override void Initialize() { base.Initialize(); - SubscribeLocalEvent(OnAfterInteract); + SubscribeLocalEvent(OnAfterInteract, after: new[]{ typeof(StorageSystem) }); SubscribeLocalEvent>(AddDumpVerb); SubscribeLocalEvent>(AddUtilityVerbs); SubscribeLocalEvent(OnDumpCompleted); @@ -36,7 +36,7 @@ namespace Content.Server.Storage.EntitySystems if (!TryComp(args.Used, out var storage)) return; - if (storage.StoredEntities == null || storage.StoredEntities.Count == 0) + if (storage.StoredEntities == null || storage.StoredEntities.Count == 0 || storage.CancelToken != null) return; if (HasComp(args.Target) || HasComp(args.Target)) diff --git a/Content.Server/Storage/EntitySystems/StorageSystem.cs b/Content.Server/Storage/EntitySystems/StorageSystem.cs index 3951d15f4d..6cef4726b0 100644 --- a/Content.Server/Storage/EntitySystems/StorageSystem.cs +++ b/Content.Server/Storage/EntitySystems/StorageSystem.cs @@ -316,6 +316,7 @@ namespace Content.Server.Storage.EntitySystems { if (entity == args.User || !itemQuery.HasComponent(entity) + || !CanInsert(uid, entity, out _, storageComp) || !_interactionSystem.InRangeUnobstructed(args.User, entity)) continue;