* Create CP14HandDisplacementMapComponent.cs * idk if it works, we need goblin first * some clean up * add goblin species sprites * basic goblic species prototype * hairs, ears * typo * hand displacement maps * shoes displacement * shirt displacement * head displacement. Add support different size maps * +dummy * eyes displacement * pants displacement * gloves displacements * cloak and mask displacement (final) * belt displacement! * add nose customization * +2 ears customization
34 lines
1.1 KiB
C#
34 lines
1.1 KiB
C#
using Robust.Shared.Containers;
|
|
using Robust.Shared.GameStates;
|
|
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype;
|
|
|
|
namespace Content.Shared.Inventory;
|
|
|
|
[RegisterComponent, NetworkedComponent]
|
|
[Access(typeof(InventorySystem))]
|
|
public sealed partial class InventoryComponent : Component
|
|
{
|
|
[DataField("templateId", customTypeSerializer: typeof(PrototypeIdSerializer<InventoryTemplatePrototype>))]
|
|
public string TemplateId { get; private set; } = "human";
|
|
|
|
[DataField("speciesId")] public string? SpeciesId { get; set; }
|
|
|
|
[DataField] public Dictionary<string, SlotDisplacementData> Displacements = [];
|
|
|
|
public SlotDefinition[] Slots = Array.Empty<SlotDefinition>();
|
|
public ContainerSlot[] Containers = Array.Empty<ContainerSlot>();
|
|
|
|
[DataDefinition]
|
|
public sealed partial class SlotDisplacementData
|
|
{
|
|
[DataField(required: true)]
|
|
public PrototypeLayerData Layer = default!;
|
|
|
|
[DataField]
|
|
public PrototypeLayerData? Layer48; //CP14 48*48 displacement support
|
|
|
|
[DataField]
|
|
public string? ShaderOverride = "DisplacedStencilDraw";
|
|
}
|
|
}
|