using UnityEngine;

namespace pdinklag.CPW.Common
{
    public class CAWAttireMesh : CAWMesh
    {
        [Header("Nudity")]
        [Tooltip("The nudity that is covered up by this piece of attire.")]
        public CAWNudity CoversUp;
        
        [Header("Automatic Rigging")]
        [Tooltip("Automatically rig and skin the meshes to the wrestler.")]
        public bool AutoRig = false;

        [Header("Blend Shape Generation")]
        [Tooltip("Automatically generate global blend shapes.")]
        public bool AutoGenerateBlendShapes = true;

        [Tooltip("Don't generate the blend shapes with the given names.")]
        public string[] ExcludeBlendShapes;

        [Tooltip("Blend vertices depending on the distance from the mesh: blend fully if below the interval, weigh if within the interval, and don't blend at all if above the interval.")]
        public MinMax BlendShapeDistanceFalloff = new(Mathf.Infinity, Mathf.Infinity);

        [Header("One-Sided Info")]
        [Tooltip("The index of the right mesh (only used if one-sided).")]
        public int RightMesh = 0;

        [Tooltip("The index of the left mesh (only used if one-sided).")]
        public int LeftMesh = 1;

        [Tooltip("If this attire is defined by a prop, it represents the left or right side depending on this.")]
        public bool PropIsRightSide;
    }
}
