Content update for NetEntities (#18935)

This commit is contained in:
metalgearsloth
2023-09-11 09:42:41 +10:00
committed by GitHub
parent 389c8d1a2c
commit 5a0fc68be2
526 changed files with 3058 additions and 2215 deletions

View File

@@ -6,7 +6,7 @@ namespace Content.Shared.Body.Part;
[Serializable, NetSerializable]
public sealed class BodyPartComponentState : ComponentState
{
public readonly EntityUid? Body;
public readonly NetEntity? Body;
public readonly BodyPartSlot? ParentSlot;
public readonly Dictionary<string, BodyPartSlot> Children;
public readonly Dictionary<string, OrganSlot> Organs;
@@ -15,7 +15,7 @@ public sealed class BodyPartComponentState : ComponentState
public readonly BodyPartSymmetry Symmetry;
public BodyPartComponentState(
EntityUid? body,
NetEntity? body,
BodyPartSlot? parentSlot,
Dictionary<string, BodyPartSlot> children,
Dictionary<string, OrganSlot> organs,

View File

@@ -5,10 +5,32 @@ namespace Content.Shared.Body.Part;
[Serializable, NetSerializable]
[Access(typeof(SharedBodySystem))]
[DataRecord]
public sealed record BodyPartSlot(string Id, EntityUid Parent, BodyPartType? Type)
[DataDefinition]
public sealed partial record BodyPartSlot
{
public EntityUid? Child { get; set; }
[DataField("id")]
public string Id = string.Empty;
[DataField("type")]
public BodyPartType? Type;
[NonSerialized]
[DataField("parent")]
public EntityUid Parent;
public NetEntity NetParent;
[NonSerialized]
[DataField("child")]
public EntityUid? Child;
public NetEntity? NetChild;
public void SetChild(EntityUid? child, NetEntity? netChild)
{
Child = child;
NetChild = netChild;
}
// Rider doesn't suggest explicit properties during deconstruction without this
public void Deconstruct(out EntityUid? child, out string id, out EntityUid parent, out BodyPartType? type)