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

@@ -88,13 +88,13 @@ namespace Content.Server.Nutrition.Components
{
// Revert slow speed if required
if (_lastHungerThreshold == HungerThreshold.Starving && _currentHungerThreshold != HungerThreshold.Dead &&
Owner.TryGetComponent(out MovementSpeedModifierComponent? movementSlowdownComponent))
IoCManager.Resolve<IEntityManager>().TryGetComponent(Owner.Uid, out MovementSpeedModifierComponent? movementSlowdownComponent))
{
EntitySystem.Get<MovementSpeedModifierSystem>().RefreshMovementSpeedModifiers(OwnerUid);
}
// Update UI
Owner.TryGetComponent(out ServerAlertsComponent? alertsComponent);
IoCManager.Resolve<IEntityManager>().TryGetComponent(Owner.Uid, out ServerAlertsComponent? alertsComponent);
if (HungerThresholdAlertTypes.TryGetValue(_currentHungerThreshold, out var alertId))
{
@@ -185,7 +185,7 @@ namespace Content.Server.Nutrition.Components
return;
// --> Current Hunger is below dead threshold
if (!Owner.TryGetComponent(out MobStateComponent? mobState))
if (!IoCManager.Resolve<IEntityManager>().TryGetComponent(Owner.Uid, out MobStateComponent? mobState))
return;
if (!mobState.IsDead())

View File

@@ -87,13 +87,13 @@ namespace Content.Server.Nutrition.Components
{
// Revert slow speed if required
if (_lastThirstThreshold == ThirstThreshold.Parched && _currentThirstThreshold != ThirstThreshold.Dead &&
Owner.TryGetComponent(out MovementSpeedModifierComponent? movementSlowdownComponent))
IoCManager.Resolve<IEntityManager>().TryGetComponent(Owner.Uid, out MovementSpeedModifierComponent? movementSlowdownComponent))
{
EntitySystem.Get<MovementSpeedModifierSystem>().RefreshMovementSpeedModifiers(OwnerUid);
}
// Update UI
Owner.TryGetComponent(out ServerAlertsComponent? alertsComponent);
IoCManager.Resolve<IEntityManager>().TryGetComponent(Owner.Uid, out ServerAlertsComponent? alertsComponent);
if (ThirstThresholdAlertTypes.TryGetValue(_currentThirstThreshold, out var alertId))
{
@@ -182,7 +182,7 @@ namespace Content.Server.Nutrition.Components
return;
// --> Current Hunger is below dead threshold
if (!Owner.TryGetComponent(out MobStateComponent? mobState))
if (!IoCManager.Resolve<IEntityManager>().TryGetComponent(Owner.Uid, out MobStateComponent? mobState))
return;
if (!mobState.IsDead())

View File

@@ -25,7 +25,7 @@ namespace Content.Server.Nutrition.EntitySystems
{
SoundSystem.Play(Filter.Pvs(creamPie.Owner), creamPie.Sound.GetSound(), creamPie.Owner, AudioHelpers.WithVariation(0.125f));
if (creamPie.Owner.TryGetComponent<FoodComponent>(out var foodComp) && _solutionsSystem.TryGetSolution(creamPie.Owner.Uid, foodComp.SolutionName, out var solution))
if (IoCManager.Resolve<IEntityManager>().TryGetComponent<FoodComponent?>(creamPie.Owner.Uid, out var foodComp) && _solutionsSystem.TryGetSolution(creamPie.Owner.Uid, foodComp.SolutionName, out var solution))
{
solution.SpillAt(creamPie.Owner, "PuddleSmear", false);
}

View File

@@ -207,7 +207,7 @@ namespace Content.Server.Nutrition.EntitySystems
EntityManager.DeleteEntity(component.OwnerUid);
// Put the trash in the user's hand
if (finisher.TryGetComponent(out ItemComponent? item) &&
if (IoCManager.Resolve<IEntityManager>().TryGetComponent(finisher.Uid, out ItemComponent? item) &&
handsComponent.CanPutInHand(item))
{
handsComponent.PutInHand(item);
@@ -420,7 +420,7 @@ namespace Content.Server.Nutrition.EntitySystems
foreach (var item in hands.GetAllHeldItems())
{
// Is utensil?
if (!item.Owner.TryGetComponent(out UtensilComponent? utensil))
if (!IoCManager.Resolve<IEntityManager>().TryGetComponent(item.Owner.Uid, out UtensilComponent? utensil))
continue;
if ((utensil.Types & component.Utensil) != 0 && // Acceptable type?

View File

@@ -96,7 +96,7 @@ namespace Content.Server.Nutrition.EntitySystems
// This is awful. I hate this so much.
// TODO: Please, someone refactor containers and free me from this bullshit.
if (!smokable.Owner.TryGetContainerMan(out var containerManager) ||
!containerManager.Owner.TryGetComponent(out BloodstreamComponent? bloodstream))
!IoCManager.Resolve<IEntityManager>().TryGetComponent(containerManager.Owner.Uid, out BloodstreamComponent? bloodstream))
continue;
_reactiveSystem.ReactionEntity(containerManager.OwnerUid, ReactionMethod.Ingestion, inhaledSolution);

View File

@@ -4,6 +4,8 @@ using Content.Shared.Administration;
using Content.Shared.Nutrition.Components;
using Robust.Server.Player;
using Robust.Shared.Console;
using Robust.Shared.GameObjects;
using Robust.Shared.IoC;
namespace Content.Server.Nutrition
{
@@ -29,7 +31,7 @@ namespace Content.Server.Nutrition
return;
}
if (!player.AttachedEntity.TryGetComponent(out HungerComponent? hunger))
if (!IoCManager.Resolve<IEntityManager>().TryGetComponent(player.AttachedEntity.Uid, out HungerComponent? hunger))
{
shell.WriteLine($"Your entity does not have a {nameof(HungerComponent)} component.");
return;