Files
Cielonos/Assets/Scripts/MainGame/Characters/Base/Subcontrollers/BodyPartsSubcontroller.cs
SoulliesOfficial 2a2aa728d5 切换主武器
2025-12-23 19:47:06 -05:00

51 lines
1.8 KiB
C#

using System.Collections.Generic;
using Cielonos.MainGame.Inventory;
using Sirenix.OdinInspector;
using UnityEngine;
using UnityEngine.Serialization;
namespace Cielonos.MainGame.Characters
{
public partial class BodyPartsSubcontroller : SubcontrollerBase<CharacterBase>
{
[Title("Main Parts")]
public Transform flexibleCenterPoint;
public Transform staticCenterPoint;
public Transform cameraLockingPoint;
public Transform footPoint;
public Transform head;
public Transform leftHand;
public Transform rightHand;
public Transform back;
public Transform hips;
public Transform leftFoot;
public Transform rightFoot;
[Title("Custom Parts")]
public Dictionary<string, Transform> customBodyParts;
}
public partial class BodyPartsSubcontroller
{
public Transform GetPart(ViewObjectData.AttachBodyPartType partType)
{
return partType switch
{
ViewObjectData.AttachBodyPartType.RightHand => rightHand,
ViewObjectData.AttachBodyPartType.LeftHand => leftHand,
ViewObjectData.AttachBodyPartType.Head => head,
ViewObjectData.AttachBodyPartType.FlexibleCenterPoint => flexibleCenterPoint,
ViewObjectData.AttachBodyPartType.Back => back,
ViewObjectData.AttachBodyPartType.Hips => hips,
ViewObjectData.AttachBodyPartType.RightFoot => rightFoot,
ViewObjectData.AttachBodyPartType.LeftFoot => leftFoot,
_ => null
};
}
public Transform GetPart(string partName)
{
return customBodyParts.GetValueOrDefault(partName);
}
}
}