Re-organize all projects (#4166)
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
using System;
|
||||
using Content.Shared.Body.Part;
|
||||
|
||||
namespace Content.Shared.CharacterAppearance
|
||||
{
|
||||
public static class HumanoidVisualLayersExtension
|
||||
{
|
||||
public static HumanoidVisualLayers? ToHumanoidLayer(this IBodyPart part)
|
||||
{
|
||||
return part.PartType switch
|
||||
{
|
||||
BodyPartType.Other => null,
|
||||
BodyPartType.Torso => HumanoidVisualLayers.Chest,
|
||||
BodyPartType.Head => HumanoidVisualLayers.Head,
|
||||
BodyPartType.Arm => part.Symmetry switch
|
||||
{
|
||||
BodyPartSymmetry.None => null,
|
||||
BodyPartSymmetry.Left => HumanoidVisualLayers.LArm,
|
||||
BodyPartSymmetry.Right => HumanoidVisualLayers.RArm,
|
||||
_ => throw new ArgumentOutOfRangeException()
|
||||
},
|
||||
BodyPartType.Hand => part.Symmetry switch
|
||||
{
|
||||
BodyPartSymmetry.None => null,
|
||||
BodyPartSymmetry.Left => HumanoidVisualLayers.LHand,
|
||||
BodyPartSymmetry.Right => HumanoidVisualLayers.RHand,
|
||||
_ => throw new ArgumentOutOfRangeException()
|
||||
},
|
||||
BodyPartType.Leg => part.Symmetry switch
|
||||
{
|
||||
BodyPartSymmetry.None => null,
|
||||
BodyPartSymmetry.Left => HumanoidVisualLayers.LLeg,
|
||||
BodyPartSymmetry.Right => HumanoidVisualLayers.RLeg,
|
||||
_ => throw new ArgumentOutOfRangeException()
|
||||
},
|
||||
BodyPartType.Foot => part.Symmetry switch
|
||||
{
|
||||
BodyPartSymmetry.None => null,
|
||||
BodyPartSymmetry.Left => HumanoidVisualLayers.LFoot,
|
||||
BodyPartSymmetry.Right => HumanoidVisualLayers.RFoot,
|
||||
_ => throw new ArgumentOutOfRangeException()
|
||||
},
|
||||
_ => throw new ArgumentOutOfRangeException()
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user