Fix 3000 errors
This commit is contained in:
@@ -2,10 +2,8 @@ using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using Content.Server.Tools;
|
||||
using Content.Server.Ghost.Components;
|
||||
using Content.Server.Tools.Components;
|
||||
using Content.Shared.ActionBlocker;
|
||||
using Content.Server.Tools;
|
||||
using Content.Shared.Acts;
|
||||
using Content.Shared.Body.Components;
|
||||
using Content.Shared.Interaction;
|
||||
@@ -16,8 +14,6 @@ using Content.Shared.Popups;
|
||||
using Content.Shared.Sound;
|
||||
using Content.Shared.Storage;
|
||||
using Content.Shared.Tools;
|
||||
using Content.Shared.Tools.Components;
|
||||
using Content.Shared.Verbs;
|
||||
using Robust.Shared.Audio;
|
||||
using Robust.Shared.Containers;
|
||||
using Robust.Shared.GameObjects;
|
||||
@@ -165,7 +161,7 @@ namespace Content.Server.Storage.Components
|
||||
ToggleOpen(eventArgs.User);
|
||||
}
|
||||
|
||||
public virtual bool CanOpen(IEntity user, bool silent = false)
|
||||
public virtual bool CanOpen(EntityUid user, bool silent = false)
|
||||
{
|
||||
if (IsWeldedShut)
|
||||
{
|
||||
@@ -182,12 +178,12 @@ namespace Content.Server.Storage.Components
|
||||
return true;
|
||||
}
|
||||
|
||||
public virtual bool CanClose(IEntity user, bool silent = false)
|
||||
public virtual bool CanClose(EntityUid user, bool silent = false)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
public void ToggleOpen(IEntity user)
|
||||
public void ToggleOpen(EntityUid user)
|
||||
{
|
||||
if (Open)
|
||||
{
|
||||
@@ -308,7 +304,7 @@ namespace Content.Server.Storage.Components
|
||||
}
|
||||
}
|
||||
|
||||
protected virtual bool AddToContents(IEntity entity)
|
||||
protected virtual bool AddToContents(EntityUid entity)
|
||||
{
|
||||
if (entity == Owner) return false;
|
||||
if (IoCManager.Resolve<IEntityManager>().TryGetComponent(entity, out IPhysBody? entityPhysicsComponent))
|
||||
@@ -343,14 +339,14 @@ namespace Content.Server.Storage.Components
|
||||
}
|
||||
}
|
||||
|
||||
public virtual bool TryOpenStorage(IEntity user)
|
||||
public virtual bool TryOpenStorage(EntityUid user)
|
||||
{
|
||||
if (!CanOpen(user)) return false;
|
||||
OpenStorage();
|
||||
return true;
|
||||
}
|
||||
|
||||
public virtual bool TryCloseStorage(IEntity user)
|
||||
public virtual bool TryCloseStorage(EntityUid user)
|
||||
{
|
||||
if (!CanClose(user)) return false;
|
||||
CloseStorage();
|
||||
@@ -358,13 +354,13 @@ namespace Content.Server.Storage.Components
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
public bool Remove(IEntity entity)
|
||||
public bool Remove(EntityUid entity)
|
||||
{
|
||||
return Contents.CanRemove(entity);
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
public bool Insert(IEntity entity)
|
||||
public bool Insert(EntityUid entity)
|
||||
{
|
||||
// Trying to add while open just dumps it on the ground below us.
|
||||
if (Open)
|
||||
@@ -384,7 +380,7 @@ namespace Content.Server.Storage.Components
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
public bool CanInsert(IEntity entity)
|
||||
public bool CanInsert(EntityUid entity)
|
||||
{
|
||||
if (Open)
|
||||
{
|
||||
@@ -447,7 +443,7 @@ namespace Content.Server.Storage.Components
|
||||
EmptyContents();
|
||||
}
|
||||
|
||||
protected virtual IEnumerable<IEntity> DetermineCollidingEntities()
|
||||
protected virtual IEnumerable<EntityUid> DetermineCollidingEntities()
|
||||
{
|
||||
var entityLookup = IoCManager.Resolve<IEntityLookup>();
|
||||
return entityLookup.GetEntitiesIntersecting(Owner, -0.015f, LookupFlags.Approximate);
|
||||
|
||||
@@ -4,8 +4,8 @@ namespace Content.Server.Storage.Components
|
||||
{
|
||||
public interface IStorageComponent
|
||||
{
|
||||
bool Remove(IEntity entity);
|
||||
bool Insert(IEntity entity);
|
||||
bool CanInsert(IEntity entity);
|
||||
bool Remove(EntityUid entity);
|
||||
bool Insert(EntityUid entity);
|
||||
bool CanInsert(EntityUid entity);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -42,7 +42,7 @@ namespace Content.Server.Storage.Components
|
||||
/// <param name="user"></param>
|
||||
/// <param name="itemToHide"></param>
|
||||
/// <returns>True if item was hidden inside stash</returns>
|
||||
public bool TryHideItem(IEntity user, IEntity itemToHide)
|
||||
public bool TryHideItem(EntityUid user, EntityUid itemToHide)
|
||||
{
|
||||
if (_itemContainer.ContainedEntity != null)
|
||||
{
|
||||
@@ -76,7 +76,7 @@ namespace Content.Server.Storage.Components
|
||||
/// </summary>
|
||||
/// <param name="user"></param>
|
||||
/// <returns>True if user recieved item</returns>
|
||||
public bool TryGetItem(IEntity user)
|
||||
public bool TryGetItem(EntityUiduser)
|
||||
{
|
||||
if (_itemContainer.ContainedEntity == null)
|
||||
return false;
|
||||
|
||||
@@ -50,7 +50,7 @@ namespace Content.Server.Storage.Components
|
||||
|
||||
public Container? Storage;
|
||||
|
||||
private readonly Dictionary<IEntity, int> _sizeCache = new();
|
||||
private readonly Dictionary<EntityUid, int> _sizeCache = new();
|
||||
|
||||
[DataField("occludesLight")]
|
||||
private bool _occludesLight = true;
|
||||
@@ -79,7 +79,7 @@ namespace Content.Server.Storage.Components
|
||||
public SoundSpecifier StorageSoundCollection { get; set; } = new SoundCollectionSpecifier("storageRustle");
|
||||
|
||||
[ViewVariables]
|
||||
public override IReadOnlyList<IEntity>? StoredEntities => Storage?.ContainedEntities;
|
||||
public override IReadOnlyList<EntityUid>? StoredEntities => Storage?.ContainedEntities;
|
||||
|
||||
[ViewVariables(VVAccess.ReadWrite)]
|
||||
public bool OccludesLight
|
||||
@@ -129,7 +129,7 @@ namespace Content.Server.Storage.Components
|
||||
|
||||
foreach (var entity in Storage.ContainedEntities)
|
||||
{
|
||||
var item = IoCManager.Resolve<IEntityManager>().GetComponent<SharedItemComponent>(entity);
|
||||
var item = _entityManager.GetComponent<SharedItemComponent>(entity);
|
||||
_storageUsed += item.Size;
|
||||
}
|
||||
}
|
||||
@@ -139,17 +139,17 @@ namespace Content.Server.Storage.Components
|
||||
/// </summary>
|
||||
/// <param name="entity">The entity to check</param>
|
||||
/// <returns>true if it can be inserted, false otherwise</returns>
|
||||
public bool CanInsert(IEntity entity)
|
||||
public bool CanInsert(EntityUid entity)
|
||||
{
|
||||
EnsureInitialCalculated();
|
||||
|
||||
if (IoCManager.Resolve<IEntityManager>().TryGetComponent(entity, out ServerStorageComponent? storage) &&
|
||||
if (_entityManager.TryGetComponent(entity, out ServerStorageComponent? storage) &&
|
||||
storage._storageCapacityMax >= _storageCapacityMax)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
if (IoCManager.Resolve<IEntityManager>().TryGetComponent(entity, out SharedItemComponent? store) &&
|
||||
if (_entityManager.TryGetComponent(entity, out SharedItemComponent? store) &&
|
||||
store.Size > _storageCapacityMax - _storageUsed)
|
||||
{
|
||||
return false;
|
||||
@@ -160,7 +160,7 @@ namespace Content.Server.Storage.Components
|
||||
return false;
|
||||
}
|
||||
|
||||
if (IoCManager.Resolve<IEntityManager>().GetComponent<TransformComponent>(entity).Anchored)
|
||||
if (_entityManager.GetComponent<TransformComponent>(entity).Anchored)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
@@ -173,12 +173,12 @@ namespace Content.Server.Storage.Components
|
||||
/// </summary>
|
||||
/// <param name="entity">The entity to insert</param>
|
||||
/// <returns>true if the entity was inserted, false otherwise</returns>
|
||||
public bool Insert(IEntity entity)
|
||||
public bool Insert(EntityUid entity)
|
||||
{
|
||||
return CanInsert(entity) && Storage?.Insert(entity) == true;
|
||||
}
|
||||
|
||||
public override bool Remove(IEntity entity)
|
||||
public override bool Remove(EntityUid entity)
|
||||
{
|
||||
EnsureInitialCalculated();
|
||||
return Storage?.Remove(entity) == true;
|
||||
@@ -197,7 +197,7 @@ namespace Content.Server.Storage.Components
|
||||
Logger.DebugS(LoggerName, $"Storage (UID {Owner}) had entity (UID {message.Entity}) inserted into it.");
|
||||
|
||||
var size = 0;
|
||||
if (IoCManager.Resolve<IEntityManager>().TryGetComponent(message.Entity, out SharedItemComponent? storable))
|
||||
if (_entityManager.TryGetComponent(message.Entity, out SharedItemComponent? storable))
|
||||
size = storable.Size;
|
||||
|
||||
_storageUsed += size;
|
||||
@@ -219,7 +219,7 @@ namespace Content.Server.Storage.Components
|
||||
|
||||
if (!_sizeCache.TryGetValue(message.Entity, out var size))
|
||||
{
|
||||
Logger.WarningS(LoggerName, $"Removed entity {message.Entity} without a cached size from storage {Owner} at {IoCManager.Resolve<IEntityManager>().GetComponent<TransformComponent>(Owner).MapPosition}");
|
||||
Logger.WarningS(LoggerName, $"Removed entity {message.Entity} without a cached size from storage {Owner} at {_entityManager.GetComponent<TransformComponent>(Owner).MapPosition}");
|
||||
|
||||
RecalculateStorageUsed();
|
||||
return;
|
||||
@@ -235,11 +235,11 @@ namespace Content.Server.Storage.Components
|
||||
/// </summary>
|
||||
/// <param name="player">The player to insert an entity from</param>
|
||||
/// <returns>true if inserted, false otherwise</returns>
|
||||
public bool PlayerInsertHeldEntity(IEntity player)
|
||||
public bool PlayerInsertHeldEntity(EntityUid player)
|
||||
{
|
||||
EnsureInitialCalculated();
|
||||
|
||||
if (!IoCManager.Resolve<IEntityManager>().TryGetComponent(player, out HandsComponent? hands) ||
|
||||
if (!_entityManager.TryGetComponent(player, out HandsComponent? hands) ||
|
||||
hands.GetActiveHand == null)
|
||||
{
|
||||
return false;
|
||||
@@ -269,7 +269,7 @@ namespace Content.Server.Storage.Components
|
||||
/// </summary>
|
||||
/// <param name="player">The player to insert an entity with</param>
|
||||
/// <returns>true if inserted, false otherwise</returns>
|
||||
public bool PlayerInsertEntityInWorld(IEntity player, IEntity toInsert)
|
||||
public bool PlayerInsertEntityInWorld(EntityUid player, EntityUid toInsert)
|
||||
{
|
||||
EnsureInitialCalculated();
|
||||
|
||||
@@ -285,14 +285,14 @@ namespace Content.Server.Storage.Components
|
||||
/// Opens the storage UI for an entity
|
||||
/// </summary>
|
||||
/// <param name="entity">The entity to open the UI for</param>
|
||||
public void OpenStorageUI(IEntity entity)
|
||||
public void OpenStorageUI(EntityUid entity)
|
||||
{
|
||||
PlaySoundCollection();
|
||||
EnsureInitialCalculated();
|
||||
|
||||
var userSession = IoCManager.Resolve<IEntityManager>().GetComponent<ActorComponent>(entity).PlayerSession;
|
||||
var userSession = _entityManager.GetComponent<ActorComponent>(entity).PlayerSession;
|
||||
|
||||
Logger.DebugS(LoggerName, $"Storage (UID {Owner}) \"used\" by player session (UID {userSession.AttachedEntityUid}).");
|
||||
Logger.DebugS(LoggerName, $"Storage (UID {Owner}) \"used\" by player session (UID {userSession.AttachedEntity}).");
|
||||
|
||||
SubscribeSession(userSession);
|
||||
#pragma warning disable 618
|
||||
@@ -320,7 +320,7 @@ namespace Content.Server.Storage.Components
|
||||
{
|
||||
if (session.AttachedEntity == null)
|
||||
{
|
||||
Logger.DebugS(LoggerName, $"Storage (UID {Owner}) detected no attached entity in player session (UID {session.AttachedEntityUid}).");
|
||||
Logger.DebugS(LoggerName, $"Storage (UID {Owner}) detected no attached entity in player session (UID {session.AttachedEntity}).");
|
||||
|
||||
UnsubscribeSession(session);
|
||||
return;
|
||||
@@ -340,7 +340,7 @@ namespace Content.Server.Storage.Components
|
||||
return;
|
||||
}
|
||||
|
||||
var stored = StoredEntities.Select(e => (EntityUid) e).ToArray();
|
||||
var stored = StoredEntities.Select(e => e).ToArray();
|
||||
|
||||
#pragma warning disable 618
|
||||
SendNetworkMessage(new StorageHeldItemsMessage(stored, _storageUsed, _storageCapacityMax), session.ConnectedClient);
|
||||
@@ -357,7 +357,7 @@ namespace Content.Server.Storage.Components
|
||||
|
||||
if (!SubscribedSessions.Contains(session))
|
||||
{
|
||||
Logger.DebugS(LoggerName, $"Storage (UID {Owner}) subscribed player session (UID {session.AttachedEntityUid}).");
|
||||
Logger.DebugS(LoggerName, $"Storage (UID {Owner}) subscribed player session (UID {session.AttachedEntity}).");
|
||||
|
||||
session.PlayerStatusChanged += HandlePlayerSessionChangeEvent;
|
||||
SubscribedSessions.Add(session);
|
||||
@@ -375,7 +375,7 @@ namespace Content.Server.Storage.Components
|
||||
{
|
||||
if (SubscribedSessions.Contains(session))
|
||||
{
|
||||
Logger.DebugS(LoggerName, $"Storage (UID {Owner}) unsubscribed player session (UID {session.AttachedEntityUid}).");
|
||||
Logger.DebugS(LoggerName, $"Storage (UID {Owner}) unsubscribed player session (UID {session.AttachedEntity}).");
|
||||
|
||||
SubscribedSessions.Remove(session);
|
||||
#pragma warning disable 618
|
||||
@@ -418,7 +418,7 @@ namespace Content.Server.Storage.Components
|
||||
|
||||
private void HandlePlayerSessionChangeEvent(object? obj, SessionStatusEventArgs sessionStatus)
|
||||
{
|
||||
Logger.DebugS(LoggerName, $"Storage (UID {Owner}) handled a status change in player session (UID {sessionStatus.Session.AttachedEntityUid}).");
|
||||
Logger.DebugS(LoggerName, $"Storage (UID {Owner}) handled a status change in player session (UID {sessionStatus.Session.AttachedEntity}).");
|
||||
|
||||
if (sessionStatus.NewStatus != SessionStatus.InGame)
|
||||
{
|
||||
@@ -454,26 +454,26 @@ namespace Content.Server.Storage.Components
|
||||
|
||||
var player = session.AttachedEntity;
|
||||
|
||||
if (player == null)
|
||||
if (!player.Valid)
|
||||
{
|
||||
break;
|
||||
}
|
||||
|
||||
var ownerTransform = IoCManager.Resolve<IEntityManager>().GetComponent<TransformComponent>(Owner);
|
||||
var playerTransform = IoCManager.Resolve<IEntityManager>().GetComponent<TransformComponent>(player);
|
||||
var ownerTransform = _entityManager.GetComponent<TransformComponent>(Owner);
|
||||
var playerTransform = _entityManager.GetComponent<TransformComponent>(player);
|
||||
|
||||
if (!playerTransform.Coordinates.InRange(IoCManager.Resolve<IEntityManager>(), ownerTransform.Coordinates, 2) ||
|
||||
if (!playerTransform.Coordinates.InRange(_entityManager, ownerTransform.Coordinates, 2) ||
|
||||
Owner.IsInContainer() && !playerTransform.ContainsEntity(ownerTransform))
|
||||
{
|
||||
break;
|
||||
}
|
||||
|
||||
if (!IoCManager.Resolve<IEntityManager>().TryGetEntity(remove.EntityUid, out var entity) || Storage?.Contains(entity) == false)
|
||||
if (!remove.EntityUid.Valid || Storage?.Contains(remove.EntityUid) == false)
|
||||
{
|
||||
break;
|
||||
}
|
||||
|
||||
if (!IoCManager.Resolve<IEntityManager>().TryGetComponent(entity, out ItemComponent? item) || !IoCManager.Resolve<IEntityManager>().TryGetComponent(player, out HandsComponent? hands))
|
||||
if (!_entityManager.TryGetComponent(remove.EntityUid, out ItemComponent? item) || !_entityManager.TryGetComponent(player, out HandsComponent? hands))
|
||||
{
|
||||
break;
|
||||
}
|
||||
@@ -531,7 +531,7 @@ namespace Content.Server.Storage.Components
|
||||
return false;
|
||||
Logger.DebugS(LoggerName, $"Storage (UID {Owner}) attacked by user (UID {eventArgs.User}) with entity (UID {eventArgs.Using}).");
|
||||
|
||||
if (IoCManager.Resolve<IEntityManager>().HasComponent<PlaceableSurfaceComponent>(Owner))
|
||||
if (_entityManager.HasComponent<PlaceableSurfaceComponent>(Owner))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
@@ -570,14 +570,14 @@ namespace Content.Server.Storage.Components
|
||||
|
||||
// Pick up all entities in a radius around the clicked location.
|
||||
// The last half of the if is because carpets exist and this is terrible
|
||||
if (_areaInsert && (eventArgs.Target == null || !IoCManager.Resolve<IEntityManager>().HasComponent<SharedItemComponent>(eventArgs.Target)))
|
||||
if (_areaInsert && (eventArgs.Target == null || !_entityManager.HasComponent<SharedItemComponent>(eventArgs.Target)))
|
||||
{
|
||||
var validStorables = new List<IEntity>();
|
||||
var validStorables = new List<EntityUid>();
|
||||
foreach (var entity in IoCManager.Resolve<IEntityLookup>().GetEntitiesInRange(eventArgs.ClickLocation, _areaInsertRadius, LookupFlags.None))
|
||||
{
|
||||
if (entity.IsInContainer()
|
||||
|| entity == eventArgs.User
|
||||
|| !IoCManager.Resolve<IEntityManager>().HasComponent<SharedItemComponent>(entity)
|
||||
|| !_entityManager.HasComponent<SharedItemComponent>(entity)
|
||||
|| !EntitySystem.Get<InteractionSystem>().InRangeUnobstructed(eventArgs.User, entity))
|
||||
continue;
|
||||
validStorables.Add(entity);
|
||||
@@ -605,9 +605,9 @@ namespace Content.Server.Storage.Components
|
||||
// Check again, situation may have changed for some entities, but we'll still pick up any that are valid
|
||||
if (entity.IsInContainer()
|
||||
|| entity == eventArgs.User
|
||||
|| !IoCManager.Resolve<IEntityManager>().HasComponent<SharedItemComponent>(entity))
|
||||
|| !_entityManager.HasComponent<SharedItemComponent>(entity))
|
||||
continue;
|
||||
var position = EntityCoordinates.FromMap(IoCManager.Resolve<IEntityManager>().GetComponent<TransformComponent>(Owner).Parent?.Owner ?? Owner, IoCManager.Resolve<IEntityManager>().GetComponent<TransformComponent>(entity).MapPosition);
|
||||
var position = EntityCoordinates.FromMap(_entityManager.GetComponent<TransformComponent>(Owner).Parent?.Owner ?? Owner, _entityManager.GetComponent<TransformComponent>(entity).MapPosition);
|
||||
if (PlayerInsertEntityInWorld(eventArgs.User, entity))
|
||||
{
|
||||
successfullyInserted.Add(entity);
|
||||
@@ -633,19 +633,25 @@ namespace Content.Server.Storage.Components
|
||||
// Pick up the clicked entity
|
||||
else if (_quickInsert)
|
||||
{
|
||||
if (eventArgs.Target == null
|
||||
|| eventArgs.Target.IsInContainer()
|
||||
|| eventArgs.Target == eventArgs.User
|
||||
|| !IoCManager.Resolve<IEntityManager>().HasComponent<SharedItemComponent>(eventArgs.Target))
|
||||
if (eventArgs.Target is not {Valid: true} target)
|
||||
{
|
||||
return false;
|
||||
var position = EntityCoordinates.FromMap(IoCManager.Resolve<IEntityManager>().GetComponent<TransformComponent>(Owner).Parent?.Owner ?? Owner, IoCManager.Resolve<IEntityManager>().GetComponent<TransformComponent>(eventArgs.Target).MapPosition);
|
||||
if (PlayerInsertEntityInWorld(eventArgs.User, eventArgs.Target))
|
||||
}
|
||||
|
||||
if (target.IsInContainer()
|
||||
|| target == eventArgs.User
|
||||
|| !_entityManager.HasComponent<SharedItemComponent>(target))
|
||||
return false;
|
||||
var position = EntityCoordinates.FromMap(
|
||||
_entityManager.GetComponent<TransformComponent>(Owner).Parent?.Owner ?? Owner,
|
||||
_entityManager.GetComponent<TransformComponent>(target).MapPosition);
|
||||
if (PlayerInsertEntityInWorld(eventArgs.User, target))
|
||||
{
|
||||
#pragma warning disable 618
|
||||
SendNetworkMessage(new AnimateInsertingEntitiesMessage(
|
||||
#pragma warning restore 618
|
||||
new List<EntityUid>() {eventArgs.Target},
|
||||
new List<EntityCoordinates>() { position }
|
||||
new List<EntityUid> {target},
|
||||
new List<EntityCoordinates> {position}
|
||||
));
|
||||
return true;
|
||||
}
|
||||
@@ -685,7 +691,7 @@ namespace Content.Server.Storage.Components
|
||||
|
||||
foreach (var entity in storedEntities)
|
||||
{
|
||||
var exActs = IoCManager.Resolve<IEntityManager>().GetComponents<IExAct>(entity).ToArray();
|
||||
var exActs = _entityManager.GetComponents<IExAct>(entity).ToArray();
|
||||
foreach (var exAct in exActs)
|
||||
{
|
||||
exAct.OnExplosion(eventArgs);
|
||||
|
||||
@@ -3,7 +3,6 @@ using Content.Server.Storage.Components;
|
||||
using Content.Shared.Storage.Components;
|
||||
using Content.Shared.Storage.EntitySystems;
|
||||
using JetBrains.Annotations;
|
||||
using Robust.Shared.Analyzers;
|
||||
using Robust.Shared.Containers;
|
||||
using Robust.Shared.GameObjects;
|
||||
using Robust.Shared.IoC;
|
||||
@@ -19,7 +18,7 @@ namespace Content.Server.Storage.EntitySystems
|
||||
{
|
||||
if (IoCManager.Resolve<IEntityManager>().TryGetComponent(msg.Container.Owner, out ServerStorageComponent? component))
|
||||
{
|
||||
var containedLayers = component.StoredEntities ?? new List<IEntity>();
|
||||
var containedLayers = component.StoredEntities ?? new List<EntityUid>();
|
||||
var list = new List<string>();
|
||||
foreach (var mapLayerData in itemMapper.MapLayers.Values)
|
||||
{
|
||||
|
||||
@@ -26,9 +26,8 @@ namespace Content.Server.Storage.EntitySystems
|
||||
if (args.Handled)
|
||||
return;
|
||||
|
||||
var owner = EntityManager.GetEntity(uid);
|
||||
var alreadySpawnedGroups = new List<string>();
|
||||
IEntity? entityToPlaceInHands = null;
|
||||
EntityUid entityToPlaceInHands = default;
|
||||
foreach (var storageItem in component.Items)
|
||||
{
|
||||
if (!string.IsNullOrEmpty(storageItem.GroupId) &&
|
||||
@@ -42,24 +41,24 @@ namespace Content.Server.Storage.EntitySystems
|
||||
|
||||
for (var i = 0; i < storageItem.Amount; i++)
|
||||
{
|
||||
entityToPlaceInHands = EntityManager.SpawnEntity(storageItem.PrototypeId, IoCManager.Resolve<IEntityManager>().GetComponent<TransformComponent>(args.User).Coordinates);
|
||||
entityToPlaceInHands = EntityManager.SpawnEntity(storageItem.PrototypeId, EntityManager.GetComponent<TransformComponent>(args.User).Coordinates);
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(storageItem.GroupId)) alreadySpawnedGroups.Add(storageItem.GroupId);
|
||||
}
|
||||
|
||||
if (component.Sound != null)
|
||||
SoundSystem.Play(Filter.Pvs(owner), component.Sound.GetSound());
|
||||
SoundSystem.Play(Filter.Pvs(uid), component.Sound.GetSound());
|
||||
|
||||
component.Uses--;
|
||||
if (component.Uses == 0)
|
||||
{
|
||||
args.Handled = true;
|
||||
IoCManager.Resolve<IEntityManager>().DeleteEntity((EntityUid) owner);
|
||||
EntityManager.DeleteEntity(uid);
|
||||
}
|
||||
|
||||
if (entityToPlaceInHands != null
|
||||
&& IoCManager.Resolve<IEntityManager>().TryGetComponent<SharedHandsComponent?>(args.User, out var hands))
|
||||
if (entityToPlaceInHands != default
|
||||
&& EntityManager.TryGetComponent<SharedHandsComponent?>(args.User, out var hands))
|
||||
{
|
||||
hands.TryPutInAnyHand(entityToPlaceInHands);
|
||||
}
|
||||
|
||||
@@ -2,16 +2,16 @@ using System.Collections.Generic;
|
||||
using Content.Server.Hands.Components;
|
||||
using Content.Server.Interaction;
|
||||
using Content.Server.Storage.Components;
|
||||
using Content.Shared.Verbs;
|
||||
using Content.Shared.Movement;
|
||||
using Content.Shared.Verbs;
|
||||
using JetBrains.Annotations;
|
||||
using Robust.Server.GameObjects;
|
||||
using Robust.Server.Player;
|
||||
using Robust.Shared.Containers;
|
||||
using Robust.Shared.GameObjects;
|
||||
using Robust.Shared.IoC;
|
||||
using Robust.Shared.Timing;
|
||||
using Robust.Shared.Localization;
|
||||
using Robust.Shared.Timing;
|
||||
|
||||
namespace Content.Server.Storage.EntitySystems
|
||||
{
|
||||
@@ -37,17 +37,17 @@ namespace Content.Server.Storage.EntitySystems
|
||||
|
||||
private void OnRelayMovement(EntityUid uid, EntityStorageComponent component, RelayMovementEntityEvent args)
|
||||
{
|
||||
if (EntityManager.HasComponent<HandsComponent>(args.Entity))
|
||||
{
|
||||
if (_gameTiming.CurTime <
|
||||
component.LastInternalOpenAttempt + EntityStorageComponent.InternalOpenAttemptDelay)
|
||||
{
|
||||
return;
|
||||
}
|
||||
if (!EntityManager.HasComponent<HandsComponent>(args.Entity))
|
||||
return;
|
||||
|
||||
component.LastInternalOpenAttempt = _gameTiming.CurTime;
|
||||
component.TryOpenStorage(args.Entity);
|
||||
if (_gameTiming.CurTime <
|
||||
component.LastInternalOpenAttempt + EntityStorageComponent.InternalOpenAttemptDelay)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
component.LastInternalOpenAttempt = _gameTiming.CurTime;
|
||||
component.TryOpenStorage(args.Entity);
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
|
||||
Reference in New Issue
Block a user