Remove obsolete occurrences of IComponent.Owner being assigned just before AddComponent (#30724)

This commit is contained in:
Mervill
2024-08-07 20:03:41 -07:00
committed by GitHub
parent 23e4a9a004
commit ab28e1a9a9
7 changed files with 14 additions and 22 deletions

View File

@@ -30,13 +30,12 @@ public sealed class TwoStageTriggerSystem : EntitySystem
{
foreach (var (name, entry) in component.SecondStageComponents)
{
var comp = (Component) _factory.GetComponent(name);
var temp = (object) comp;
var comp = (Component)_factory.GetComponent(name);
var temp = (object)comp;
if (EntityManager.TryGetComponent(uid, entry.Component.GetType(), out var c))
RemComp(uid, c);
comp.Owner = uid;
_serializationManager.CopyTo(entry.Component, ref temp);
EntityManager.AddComponent(uid, comp);
}

View File

@@ -50,8 +50,7 @@ public sealed class RandomHumanoidSystem : EntitySystem
{
foreach (var entry in prototype.Components.Values)
{
var comp = (Component) _serialization.CreateCopy(entry.Component, notNullableOverride: true);
comp.Owner = humanoid; // This .owner must survive for now.
var comp = (Component)_serialization.CreateCopy(entry.Component, notNullableOverride: true);
EntityManager.RemoveComponent(humanoid, comp.GetType());
EntityManager.AddComponent(humanoid, comp);
}

View File

@@ -23,12 +23,11 @@ namespace Content.Server.Jobs
foreach (var (name, data) in Components)
{
var component = (Component) factory.GetComponent(name);
component.Owner = mob;
var temp = (object) component;
var temp = (object)component;
serializationManager.CopyTo(data.Component, ref temp);
entityManager.RemoveComponent(mob, temp!.GetType());
entityManager.AddComponent(mob, (Component) temp);
entityManager.AddComponent(mob, (Component)temp);
}
}
}

View File

@@ -54,7 +54,6 @@ public sealed partial class BiomePrototype : IPrototype, IInheritingPrototype
foreach (var data in ChunkComponents.Values)
{
var comp = (Component) serialization.CreateCopy(data.Component, notNullableOverride: true);
comp.Owner = target; // look im sorry ok this .owner has to live until engine api exists
entityManager.AddComponent(target, comp);
}
}

View File

@@ -30,7 +30,6 @@ public sealed partial class WorldgenConfigPrototype : IPrototype
foreach (var data in Components.Values)
{
var comp = (Component) serialization.CreateCopy(data.Component, notNullableOverride: true);
comp.Owner = target; // look im sorry ok this .owner has to live until engine api exists
entityManager.AddComponent(target, comp);
}
}

View File

@@ -182,13 +182,12 @@ public sealed partial class ArtifactSystem
EntityManager.RemoveComponent(uid, reg.Type);
}
var comp = (Component) _componentFactory.GetComponent(reg);
comp.Owner = uid;
var comp = (Component)_componentFactory.GetComponent(reg);
var temp = (object) comp;
var temp = (object)comp;
_serialization.CopyTo(entry.Component, ref temp);
EntityManager.RemoveComponent(uid, temp!.GetType());
EntityManager.AddComponent(uid, (Component) temp!);
EntityManager.AddComponent(uid, (Component)temp!);
}
node.Discovered = true;
@@ -218,12 +217,11 @@ public sealed partial class ArtifactSystem
// if the entity prototype contained the component originally
if (entityPrototype?.Components.TryGetComponent(name, out var entry) ?? false)
{
var comp = (Component) _componentFactory.GetComponent(name);
comp.Owner = uid;
var temp = (object) comp;
var comp = (Component)_componentFactory.GetComponent(name);
var temp = (object)comp;
_serialization.CopyTo(entry, ref temp);
EntityManager.RemoveComponent(uid, temp!.GetType());
EntityManager.AddComponent(uid, (Component) temp);
EntityManager.AddComponent(uid, (Component)temp);
continue;
}

View File

@@ -369,11 +369,10 @@ public abstract class SharedMagicSystem : EntitySystem
if (HasComp(ev.Target, data.Component.GetType()))
continue;
var component = (Component) _compFact.GetComponent(name);
component.Owner = ev.Target;
var temp = (object) component;
var component = (Component)_compFact.GetComponent(name);
var temp = (object)component;
_seriMan.CopyTo(data.Component, ref temp);
EntityManager.AddComponent(ev.Target, (Component) temp!);
EntityManager.AddComponent(ev.Target, (Component)temp!);
}
}
// End Change Component Spells