Remove 700 usages of Component.Owner (#21100)
This commit is contained in:
@@ -166,7 +166,7 @@ namespace Content.Server.Pointing.EntitySystems
|
||||
{
|
||||
var arrowVisibility = EntityManager.EnsureComponent<VisibilityComponent>(arrow);
|
||||
layer = playerVisibility.Layer;
|
||||
_visibilitySystem.SetLayer(arrowVisibility, layer);
|
||||
_visibilitySystem.SetLayer(arrow, arrowVisibility, layer);
|
||||
}
|
||||
|
||||
// Get players that are in range and whose visibility layer matches the arrow's.
|
||||
@@ -274,26 +274,28 @@ namespace Content.Server.Pointing.EntitySystems
|
||||
{
|
||||
var currentTime = _gameTiming.CurTime;
|
||||
|
||||
foreach (var component in EntityQuery<PointingArrowComponent>(true))
|
||||
var query = AllEntityQuery<PointingArrowComponent>();
|
||||
while (query.MoveNext(out var uid, out var component))
|
||||
{
|
||||
Update(component, currentTime);
|
||||
Update((uid, component), currentTime);
|
||||
}
|
||||
}
|
||||
|
||||
private void Update(PointingArrowComponent component, TimeSpan currentTime)
|
||||
private void Update(Entity<PointingArrowComponent> pointing, TimeSpan currentTime)
|
||||
{
|
||||
// TODO: That pause PR
|
||||
var component = pointing.Comp;
|
||||
if (component.EndTime > currentTime)
|
||||
return;
|
||||
|
||||
if (component.Rogue)
|
||||
{
|
||||
RemComp<PointingArrowComponent>(component.Owner);
|
||||
EnsureComp<RoguePointingArrowComponent>(component.Owner);
|
||||
RemComp<PointingArrowComponent>(pointing);
|
||||
EnsureComp<RoguePointingArrowComponent>(pointing);
|
||||
return;
|
||||
}
|
||||
|
||||
Del(component.Owner);
|
||||
Del(pointing);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
using System.Linq;
|
||||
using Content.Server.Explosion.EntitySystems;
|
||||
using Content.Server.Pointing.Components;
|
||||
using Content.Shared.Pointing.Components;
|
||||
using JetBrains.Annotations;
|
||||
using Robust.Server.GameObjects;
|
||||
using Robust.Shared.Player;
|
||||
using Robust.Shared.Random;
|
||||
using DrawDepth = Content.Shared.DrawDepth.DrawDepth;
|
||||
|
||||
namespace Content.Server.Pointing.EntitySystems
|
||||
{
|
||||
@@ -22,14 +18,19 @@ namespace Content.Server.Pointing.EntitySystems
|
||||
if (!Resolve(uid, ref component, ref transform))
|
||||
return null;
|
||||
|
||||
var targets = EntityQuery<PointingArrowAngeringComponent>().ToList();
|
||||
var targets = new List<Entity<PointingArrowAngeringComponent>>();
|
||||
var query = EntityQueryEnumerator<PointingArrowAngeringComponent>();
|
||||
while (query.MoveNext(out var angeringUid, out var angeringComp))
|
||||
{
|
||||
targets.Add((angeringUid, angeringComp));
|
||||
}
|
||||
|
||||
if (targets.Count == 0)
|
||||
return null;
|
||||
|
||||
var angering = _random.Pick(targets);
|
||||
angering.RemainingAnger -= 1;
|
||||
if (angering.RemainingAnger <= 0)
|
||||
angering.Comp.RemainingAnger -= 1;
|
||||
if (angering.Comp.RemainingAnger <= 0)
|
||||
RemComp<PointingArrowAngeringComponent>(uid);
|
||||
|
||||
return angering.Owner;
|
||||
@@ -53,9 +54,9 @@ namespace Content.Server.Pointing.EntitySystems
|
||||
|
||||
public override void Update(float frameTime)
|
||||
{
|
||||
foreach (var (component, transform) in EntityManager.EntityQuery<RoguePointingArrowComponent, TransformComponent>())
|
||||
var query = EntityQueryEnumerator<RoguePointingArrowComponent, TransformComponent>();
|
||||
while (query.MoveNext(out var uid, out var component, out var transform))
|
||||
{
|
||||
var uid = component.Owner;
|
||||
component.Chasing ??= RandomNearbyPlayer(uid, component, transform);
|
||||
|
||||
if (component.Chasing is not {Valid: true} chasing || Deleted(chasing))
|
||||
@@ -68,7 +69,7 @@ namespace Content.Server.Pointing.EntitySystems
|
||||
|
||||
if (component.TurningDelay > 0)
|
||||
{
|
||||
var difference = EntityManager.GetComponent<TransformComponent>(chasing).WorldPosition - transform.WorldPosition;
|
||||
var difference = Comp<TransformComponent>(chasing).WorldPosition - transform.WorldPosition;
|
||||
var angle = difference.ToAngle();
|
||||
var adjusted = angle.Degrees + 90;
|
||||
var newAngle = Angle.FromDegrees(adjusted);
|
||||
@@ -83,7 +84,7 @@ namespace Content.Server.Pointing.EntitySystems
|
||||
|
||||
UpdateAppearance(uid, component, transform);
|
||||
|
||||
var toChased = EntityManager.GetComponent<TransformComponent>(chasing).WorldPosition - transform.WorldPosition;
|
||||
var toChased = Comp<TransformComponent>(chasing).WorldPosition - transform.WorldPosition;
|
||||
|
||||
transform.WorldPosition += toChased * frameTime * component.ChasingSpeed;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user