-using System.Linq;
+using System.Linq;
using System.Numerics;
using Content.Client.Animations;
using Content.Shared.Hands;
public void CloseStorageWindow(Entity<StorageComponent?> entity)
{
- if (!Resolve(entity, ref entity.Comp))
+ if (!Resolve(entity, ref entity.Comp, false))
return;
if (!_openStorages.Contains((entity, entity.Comp)))
subs.Event<BoundUIClosedEvent>(OnBoundUIClosed);
});
+ SubscribeLocalEvent<StorageComponent, ComponentRemove>(OnRemove);
SubscribeLocalEvent<StorageComponent, MapInitEvent>(OnMapInit);
SubscribeLocalEvent<StorageComponent, GetVerbsEvent<ActivationVerb>>(AddUiVerb);
SubscribeLocalEvent<StorageComponent, ComponentGetState>(OnStorageGetState);
UpdatePrototypeCache();
}
+ private void OnRemove(Entity<StorageComponent> entity, ref ComponentRemove args)
+ {
+ _ui.CloseUi(entity.Owner, StorageComponent.StorageUiKey.Key);
+ }
+
private void OnMapInit(Entity<StorageComponent> entity, ref MapInitEvent args)
{
UseDelay.SetLength(entity.Owner, entity.Comp.QuickInsertCooldown, QuickInsertUseDelayID);