Fix 3000 errors
This commit is contained in:
@@ -51,7 +51,7 @@ namespace Content.Server.Body.Surgery
|
||||
}
|
||||
}
|
||||
|
||||
private async Task<bool> SurgeryDoAfter(IEntity performer)
|
||||
private async Task<bool> SurgeryDoAfter(EntityUid performer)
|
||||
{
|
||||
if (!IoCManager.Resolve<IEntityManager>().HasComponent<DoAfterComponent>(performer))
|
||||
{
|
||||
@@ -203,7 +203,7 @@ namespace Content.Server.Body.Surgery
|
||||
return GetSurgeryStep(toolType) != null;
|
||||
}
|
||||
|
||||
public bool PerformSurgery(SurgeryType surgeryType, IBodyPartContainer container, ISurgeon surgeon, IEntity performer)
|
||||
public bool PerformSurgery(SurgeryType surgeryType, IBodyPartContainer container, ISurgeon surgeon, EntityUid performer)
|
||||
{
|
||||
var step = GetSurgeryStep(surgeryType);
|
||||
|
||||
@@ -216,7 +216,7 @@ namespace Content.Server.Body.Surgery
|
||||
return true;
|
||||
}
|
||||
|
||||
private async void OpenSkinSurgery(IBodyPartContainer container, ISurgeon surgeon, IEntity performer)
|
||||
private async void OpenSkinSurgery(IBodyPartContainer container, ISurgeon surgeon, EntityUid performer)
|
||||
{
|
||||
if (Parent == null)
|
||||
{
|
||||
@@ -231,7 +231,7 @@ namespace Content.Server.Body.Surgery
|
||||
}
|
||||
}
|
||||
|
||||
private async void ClampVesselsSurgery(IBodyPartContainer container, ISurgeon surgeon, IEntity performer)
|
||||
private async void ClampVesselsSurgery(IBodyPartContainer container, ISurgeon surgeon, EntityUid performer)
|
||||
{
|
||||
if (Parent == null) return;
|
||||
|
||||
@@ -243,7 +243,7 @@ namespace Content.Server.Body.Surgery
|
||||
}
|
||||
}
|
||||
|
||||
private async void RetractSkinSurgery(IBodyPartContainer container, ISurgeon surgeon, IEntity performer)
|
||||
private async void RetractSkinSurgery(IBodyPartContainer container, ISurgeon surgeon, EntityUid performer)
|
||||
{
|
||||
if (Parent == null) return;
|
||||
|
||||
@@ -255,7 +255,7 @@ namespace Content.Server.Body.Surgery
|
||||
}
|
||||
}
|
||||
|
||||
private async void CauterizeIncisionSurgery(IBodyPartContainer container, ISurgeon surgeon, IEntity performer)
|
||||
private async void CauterizeIncisionSurgery(IBodyPartContainer container, ISurgeon surgeon, EntityUid performer)
|
||||
{
|
||||
if (Parent == null) return;
|
||||
|
||||
@@ -269,7 +269,7 @@ namespace Content.Server.Body.Surgery
|
||||
}
|
||||
}
|
||||
|
||||
private void LoosenOrganSurgery(IBodyPartContainer container, ISurgeon surgeon, IEntity performer)
|
||||
private void LoosenOrganSurgery(IBodyPartContainer container, ISurgeon surgeon, EntityUid performer)
|
||||
{
|
||||
if (Parent == null) return;
|
||||
if (Parent.Mechanisms.Count <= 0) return;
|
||||
@@ -290,7 +290,7 @@ namespace Content.Server.Body.Surgery
|
||||
}
|
||||
|
||||
private async void LoosenOrganSurgeryCallback(SharedMechanismComponent? target, IBodyPartContainer container, ISurgeon surgeon,
|
||||
IEntity performer)
|
||||
EntityUid performer)
|
||||
{
|
||||
if (Parent == null || target == null || !Parent.Mechanisms.Contains(target))
|
||||
{
|
||||
@@ -311,7 +311,7 @@ namespace Content.Server.Body.Surgery
|
||||
}
|
||||
}
|
||||
|
||||
private void RemoveOrganSurgery(IBodyPartContainer container, ISurgeon surgeon, IEntity performer)
|
||||
private void RemoveOrganSurgery(IBodyPartContainer container, ISurgeon surgeon, EntityUid performer)
|
||||
{
|
||||
if (Parent == null) return;
|
||||
|
||||
@@ -331,7 +331,7 @@ namespace Content.Server.Body.Surgery
|
||||
}
|
||||
|
||||
private async void RemoveOrganSurgeryCallback(SharedMechanismComponent? target, IBodyPartContainer container, ISurgeon surgeon,
|
||||
IEntity performer)
|
||||
EntityUid performer)
|
||||
{
|
||||
if (Parent == null || target == null || !Parent.Mechanisms.Contains(target))
|
||||
{
|
||||
@@ -354,7 +354,7 @@ namespace Content.Server.Body.Surgery
|
||||
}
|
||||
}
|
||||
|
||||
private async void RemoveBodyPartSurgery(IBodyPartContainer container, ISurgeon surgeon, IEntity performer)
|
||||
private async void RemoveBodyPartSurgery(IBodyPartContainer container, ISurgeon surgeon, EntityUid performer)
|
||||
{
|
||||
if (Parent == null) return;
|
||||
if (container is not SharedBodyComponent body) return;
|
||||
|
||||
@@ -5,7 +5,6 @@ using Content.Server.Body.Components;
|
||||
using Content.Server.Body.Surgery.Messages;
|
||||
using Content.Server.UserInterface;
|
||||
using Content.Shared.Body.Components;
|
||||
using Content.Shared.Body.Part;
|
||||
using Content.Shared.Body.Surgery;
|
||||
using Content.Shared.Interaction;
|
||||
using Content.Shared.Popups;
|
||||
@@ -27,6 +26,8 @@ namespace Content.Server.Body.Surgery.Components
|
||||
[RegisterComponent]
|
||||
public class SurgeryToolComponent : Component, ISurgeon, IAfterInteract
|
||||
{
|
||||
[Dependency] private readonly IEntityManager _entities = default!;
|
||||
|
||||
public override string Name => "SurgeryTool";
|
||||
|
||||
private readonly Dictionary<int, object> _optionsCache = new();
|
||||
@@ -45,7 +46,7 @@ namespace Content.Server.Body.Surgery.Components
|
||||
|
||||
public SharedBodyComponent? BodyCache { get; private set; }
|
||||
|
||||
public IEntity? PerformerCache { get; private set; }
|
||||
public EntityUid? PerformerCache { get; private set; }
|
||||
|
||||
async Task<bool> IAfterInteract.AfterInteract(AfterInteractEventArgs eventArgs)
|
||||
{
|
||||
@@ -54,7 +55,7 @@ namespace Content.Server.Body.Surgery.Components
|
||||
return false;
|
||||
}
|
||||
|
||||
if (!IoCManager.Resolve<IEntityManager>().TryGetComponent(eventArgs.User, out ActorComponent? actor))
|
||||
if (!_entities.TryGetComponent(eventArgs.User, out ActorComponent? actor))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
@@ -62,7 +63,7 @@ namespace Content.Server.Body.Surgery.Components
|
||||
CloseAllSurgeryUIs();
|
||||
|
||||
// Attempt surgery on a body by sending a list of operable parts for the client to choose from
|
||||
if (IoCManager.Resolve<IEntityManager>().TryGetComponent(eventArgs.Target, out SharedBodyComponent? body))
|
||||
if (_entities.TryGetComponent(eventArgs.Target.Value, out SharedBodyComponent? body))
|
||||
{
|
||||
// Create dictionary to send to client (text to be shown : data sent back if selected)
|
||||
var toSend = new Dictionary<string, int>();
|
||||
@@ -89,7 +90,7 @@ namespace Content.Server.Body.Surgery.Components
|
||||
NotUsefulPopup();
|
||||
}
|
||||
}
|
||||
else if (IoCManager.Resolve<IEntityManager>().TryGetComponent<SharedBodyPartComponent?>(eventArgs.Target, out var part))
|
||||
else if (_entities.TryGetComponent<SharedBodyPartComponent?>(eventArgs.Target.Value, out var part))
|
||||
{
|
||||
// Attempt surgery on a DroppedBodyPart - there's only one possible target so no need for selection UI
|
||||
PerformerCache = eventArgs.User;
|
||||
@@ -109,7 +110,7 @@ namespace Content.Server.Body.Surgery.Components
|
||||
}
|
||||
|
||||
// Log error if the surgery fails somehow.
|
||||
Logger.Debug($"Error when trying to perform surgery on ${nameof(SharedBodyPartComponent)} {IoCManager.Resolve<IEntityManager>().GetComponent<MetaDataComponent>(eventArgs.User).EntityName}");
|
||||
Logger.Debug($"Error when trying to perform surgery on ${nameof(SharedBodyPartComponent)} {_entities.GetComponent<MetaDataComponent>(eventArgs.User).EntityName}");
|
||||
throw new InvalidOperationException();
|
||||
}
|
||||
|
||||
@@ -129,8 +130,8 @@ namespace Content.Server.Body.Surgery.Components
|
||||
|
||||
if (_optionsCache.Count > 0 && PerformerCache != null)
|
||||
{
|
||||
OpenSurgeryUI(IoCManager.Resolve<IEntityManager>().GetComponent<ActorComponent>(PerformerCache).PlayerSession);
|
||||
UpdateSurgeryUIMechanismRequest(IoCManager.Resolve<IEntityManager>().GetComponent<ActorComponent>(PerformerCache).PlayerSession,
|
||||
OpenSurgeryUI(_entities.GetComponent<ActorComponent>(PerformerCache.Value).PlayerSession);
|
||||
UpdateSurgeryUIMechanismRequest(_entities.GetComponent<ActorComponent>(PerformerCache.Value).PlayerSession,
|
||||
toSend);
|
||||
_callbackCache = callback;
|
||||
}
|
||||
@@ -160,7 +161,7 @@ namespace Content.Server.Body.Surgery.Components
|
||||
#pragma warning disable 618
|
||||
SendMessage(message);
|
||||
#pragma warning restore 618
|
||||
IoCManager.Resolve<IEntityManager>().EventBus.RaiseEvent(EventSource.Local, message);
|
||||
_entities.EventBus.RaiseEvent(EventSource.Local, message);
|
||||
}
|
||||
|
||||
private void UpdateSurgeryUIBodyPartRequest(IPlayerSession session, Dictionary<string, int> options)
|
||||
@@ -214,7 +215,7 @@ namespace Content.Server.Body.Surgery.Components
|
||||
private void HandleReceiveBodyPart(int key)
|
||||
{
|
||||
if (PerformerCache == null ||
|
||||
!IoCManager.Resolve<IEntityManager>().TryGetComponent(PerformerCache, out ActorComponent? actor))
|
||||
!_entities.TryGetComponent(PerformerCache.Value, out ActorComponent? actor))
|
||||
{
|
||||
return;
|
||||
}
|
||||
@@ -228,10 +229,10 @@ namespace Content.Server.Body.Surgery.Components
|
||||
return;
|
||||
}
|
||||
|
||||
var target = (SharedBodyPartComponent) targetObject!;
|
||||
var target = (SharedBodyPartComponent) targetObject;
|
||||
|
||||
// TODO BODY Reconsider
|
||||
if (!target.AttemptSurgery(_surgeryType, BodyCache, this, PerformerCache))
|
||||
if (!target.AttemptSurgery(_surgeryType, BodyCache, this, PerformerCache.Value))
|
||||
{
|
||||
NotUsefulAnymorePopup();
|
||||
}
|
||||
@@ -248,21 +249,21 @@ namespace Content.Server.Body.Surgery.Components
|
||||
!_optionsCache.TryGetValue(key, out var targetObject) ||
|
||||
targetObject is not MechanismComponent target ||
|
||||
PerformerCache == null ||
|
||||
!IoCManager.Resolve<IEntityManager>().TryGetComponent(PerformerCache, out ActorComponent? actor))
|
||||
!_entities.TryGetComponent(PerformerCache.Value, out ActorComponent? actor))
|
||||
{
|
||||
NotUsefulAnymorePopup();
|
||||
return;
|
||||
}
|
||||
|
||||
CloseSurgeryUI(actor.PlayerSession);
|
||||
_callbackCache?.Invoke(target, BodyCache, this, PerformerCache);
|
||||
_callbackCache?.Invoke(target, BodyCache, this, PerformerCache.Value);
|
||||
}
|
||||
|
||||
private void NotUsefulPopup()
|
||||
{
|
||||
if (PerformerCache == null) return;
|
||||
|
||||
BodyCache?.Owner.PopupMessage(PerformerCache,
|
||||
BodyCache?.Owner.PopupMessage(PerformerCache.Value,
|
||||
Loc.GetString("surgery-tool-component-not-useful-message", ("bodyPart", Owner)));
|
||||
}
|
||||
|
||||
@@ -270,7 +271,7 @@ namespace Content.Server.Body.Surgery.Components
|
||||
{
|
||||
if (PerformerCache == null) return;
|
||||
|
||||
BodyCache?.Owner.PopupMessage(PerformerCache,
|
||||
BodyCache?.Owner.PopupMessage(PerformerCache.Value,
|
||||
Loc.GetString("surgery-tool-component-not-useful-anymore-message", ("bodyPart", Owner)));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
using Content.Server.Body.Surgery.Messages;
|
||||
using Content.Shared.ActionBlocker;
|
||||
using Content.Shared.GameTicking;
|
||||
using Content.Shared.Interaction.Events;
|
||||
using Content.Shared.Interaction.Helpers;
|
||||
using JetBrains.Annotations;
|
||||
using Robust.Shared.GameObjects;
|
||||
@@ -57,8 +56,8 @@ namespace Content.Server.Body.Surgery.Components
|
||||
continue;
|
||||
}
|
||||
|
||||
if (!_actionBlockerSystem.CanInteract(tool.PerformerCache) ||
|
||||
!tool.PerformerCache.InRangeUnobstructed(tool.BodyCache))
|
||||
if (!_actionBlockerSystem.CanInteract(tool.PerformerCache.Value) ||
|
||||
!tool.PerformerCache.Value.InRangeUnobstructed(tool.BodyCache))
|
||||
{
|
||||
tool.CloseAllSurgeryUIs();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user