Inline TryGetComponent completely, for real

This commit is contained in:
Vera Aguilera Puerto
2021-12-03 14:17:01 +01:00
parent 2ff4ec65d5
commit 69b270017b
425 changed files with 1143 additions and 995 deletions

View File

@@ -60,7 +60,7 @@ namespace Content.Server.Body.Components
// a crash within the character preview menu in the lobby
var entity = IoCManager.Resolve<IEntityManager>().SpawnEntity(preset.PartIDs[slot.Id], Owner.Transform.MapPosition);
if (!entity.TryGetComponent(out SharedBodyPartComponent? part))
if (!IoCManager.Resolve<IEntityManager>().TryGetComponent(entity.Uid, out SharedBodyPartComponent? part))
{
Logger.Error($"Entity {slot.Id} does not have a {nameof(SharedBodyPartComponent)} component.");
continue;
@@ -90,7 +90,7 @@ namespace Content.Server.Body.Components
SoundSystem.Play(Filter.Pvs(Owner), _gibSound.GetSound(), Owner.Transform.Coordinates, AudioHelpers.WithVariation(0.025f));
if (Owner.TryGetComponent(out ContainerManagerComponent? container))
if (IoCManager.Resolve<IEntityManager>().TryGetComponent(Owner.Uid, out ContainerManagerComponent? container))
{
foreach (var cont in container.GetAllContainers())
{

View File

@@ -66,7 +66,7 @@ namespace Content.Server.Body.Components
{
var entity = IoCManager.Resolve<IEntityManager>().SpawnEntity(mechanismId, Owner.Transform.MapPosition);
if (!entity.TryGetComponent(out SharedMechanismComponent? mechanism))
if (!IoCManager.Resolve<IEntityManager>().TryGetComponent(entity.Uid, out SharedMechanismComponent? mechanism))
{
Logger.Error($"Entity {mechanismId} does not have a {nameof(SharedMechanismComponent)} component.");
continue;
@@ -104,7 +104,7 @@ namespace Content.Server.Body.Components
_surgeonCache = null;
_owningBodyCache = null;
if (eventArgs.Target.TryGetComponent(out SharedBodyComponent? body))
if (IoCManager.Resolve<IEntityManager>().TryGetComponent(eventArgs.Target.Uid, out SharedBodyComponent? body))
{
SendSlots(eventArgs, body);
}
@@ -161,7 +161,7 @@ namespace Content.Server.Body.Components
private void ReceiveBodyPartSlot(int key)
{
if (_surgeonCache == null ||
!_surgeonCache.TryGetComponent(out ActorComponent? actor))
!IoCManager.Resolve<IEntityManager>().TryGetComponent(_surgeonCache.Uid, out ActorComponent? actor))
{
return;
}

View File

@@ -1,5 +1,6 @@
using Content.Server.Atmos.Components;
using Robust.Shared.GameObjects;
using Robust.Shared.IoC;
using Robust.Shared.ViewVariables;
namespace Content.Server.Body.Components
@@ -16,7 +17,7 @@ namespace Content.Server.Body.Components
var old = BreathToolEntity;
BreathToolEntity = null;
if (old != null && old.TryGetComponent(out BreathToolComponent? breathTool) )
if (old != null && IoCManager.Resolve<IEntityManager>().TryGetComponent(old.Uid, out BreathToolComponent? breathTool) )
{
breathTool.DisconnectInternals();
DisconnectTank();
@@ -25,7 +26,7 @@ namespace Content.Server.Body.Components
public void ConnectBreathTool(IEntity toolEntity)
{
if (BreathToolEntity != null && BreathToolEntity.TryGetComponent(out BreathToolComponent? tool))
if (BreathToolEntity != null && IoCManager.Resolve<IEntityManager>().TryGetComponent(BreathToolEntity.Uid, out BreathToolComponent? tool))
{
tool.DisconnectInternals();
}
@@ -35,7 +36,7 @@ namespace Content.Server.Body.Components
public void DisconnectTank()
{
if (GasTankEntity != null && GasTankEntity.TryGetComponent(out GasTankComponent? tank))
if (GasTankEntity != null && IoCManager.Resolve<IEntityManager>().TryGetComponent(GasTankEntity.Uid, out GasTankComponent? tank))
{
tank.DisconnectFromInternals(Owner);
}
@@ -48,7 +49,7 @@ namespace Content.Server.Body.Components
if (BreathToolEntity == null)
return false;
if (GasTankEntity != null && GasTankEntity.TryGetComponent(out GasTankComponent? tank))
if (GasTankEntity != null && IoCManager.Resolve<IEntityManager>().TryGetComponent(GasTankEntity.Uid, out GasTankComponent? tank))
{
tank.DisconnectFromInternals(Owner);
}
@@ -61,9 +62,9 @@ namespace Content.Server.Body.Components
{
return BreathToolEntity != null &&
GasTankEntity != null &&
BreathToolEntity.TryGetComponent(out BreathToolComponent? breathTool) &&
IoCManager.Resolve<IEntityManager>().TryGetComponent(BreathToolEntity.Uid, out BreathToolComponent? breathTool) &&
breathTool.IsFunctional &&
GasTankEntity.TryGetComponent(out GasTankComponent? gasTank) &&
IoCManager.Resolve<IEntityManager>().TryGetComponent(GasTankEntity.Uid, out GasTankComponent? gasTank) &&
gasTank.Air != null;
}

View File

@@ -9,6 +9,7 @@ using Content.Shared.Popups;
using Robust.Server.GameObjects;
using Robust.Server.Player;
using Robust.Shared.GameObjects;
using Robust.Shared.IoC;
using Robust.Shared.Localization;
using Robust.Shared.Utility;
using Robust.Shared.ViewVariables;
@@ -43,11 +44,11 @@ namespace Content.Server.Body.Components
PerformerCache = null;
BodyCache = null;
if (eventArgs.Target.TryGetComponent(out SharedBodyComponent? body))
if (IoCManager.Resolve<IEntityManager>().TryGetComponent(eventArgs.Target.Uid, out SharedBodyComponent? body))
{
SendBodyPartListToUser(eventArgs, body);
}
else if (eventArgs.Target.TryGetComponent<SharedBodyPartComponent>(out var part))
else if (IoCManager.Resolve<IEntityManager>().TryGetComponent<SharedBodyPartComponent?>(eventArgs.Target.Uid, out var part))
{
DebugTools.AssertNotNull(part);
@@ -76,7 +77,7 @@ namespace Content.Server.Body.Components
}
if (OptionsCache.Count > 0 &&
eventArgs.User.TryGetComponent(out ActorComponent? actor))
IoCManager.Resolve<IEntityManager>().TryGetComponent(eventArgs.User.Uid, out ActorComponent? actor))
{
OpenSurgeryUI(actor.PlayerSession);
UpdateSurgeryUIBodyPartRequest(actor.PlayerSession, toSend);
@@ -96,7 +97,7 @@ namespace Content.Server.Body.Components
private void HandleReceiveBodyPart(int key)
{
if (PerformerCache == null ||
!PerformerCache.TryGetComponent(out ActorComponent? actor))
!IoCManager.Resolve<IEntityManager>().TryGetComponent(PerformerCache.Uid, out ActorComponent? actor))
{
return;
}