Separate part management from the rest of body manager component (#2017)

* Separate part management from the rest of body manager component

* Component reference

* Move more methods over

* Fix docs and move over BodyPreset

* Fix up body preset

* Create initialize method and remove constructor for BodyPreset

* Do the same for BodyTemplate and add Initialized properties

* Fix BodyTemplate HashCode test

* BodyTemplate test PLS
This commit is contained in:
DrSmugleaf
2020-09-10 00:51:24 +02:00
committed by GitHub
parent 753a627c75
commit 097e02ab4f
12 changed files with 777 additions and 737 deletions

View File

@@ -6,20 +6,14 @@ using Content.Shared.GameObjects.Components.Body;
namespace Content.Server.GameObjects.Components.Body
{
// TODO: Merge with ISharedBodyManagerComponent
public interface IBodyManagerComponent : ISharedBodyManagerComponent
public interface IBodyManagerComponent : ISharedBodyManagerComponent, IBodyPartManager
{
/// <summary>
/// The <see cref="BodyTemplate"/> that this <see cref="BodyManagerComponent"/>
/// is adhering to.
/// The <see cref="BodyTemplate"/> that this
/// <see cref="BodyManagerComponent"/> is adhering to.
/// </summary>
public BodyTemplate Template { get; }
/// <summary>
/// The <see cref="BodyPreset"/> that this <see cref="BodyManagerComponent"/>
/// is adhering to.
/// </summary>
public BodyPreset Preset { get; }
/// <summary>
/// Installs the given <see cref="IBodyPart"/> into the given slot.
/// </summary>