﻿using UnityEngine;

namespace FOHEART_Mocap
{
    public partial class FoheartGloveH1Pose : MonoBehaviour
    {
        enum U3D_Skeleton_Template_TypeDef
        {
            U3D_SKELETON_TEMPLATE_T_POSE,
            U3D_SKELETON_TEMPLATE_T_POSE_THUMBOPEN,
            U3D_SKELETON_TEMPLATE_A_POSE,
            U3D_SKELETON_TEMPLATE_A_POSE_THUMBOPEN,
            U3D_SKELETON_TEMPLATE_ADOBE_MIXAMO,
            U3D_SKELETON_TEMPLATE_SK_MANNEQUIN
        };


        [System.Serializable]
        public class RecalculateFootStep
        {
            public bool enable;

            [HideInInspector]
            public bool calcFootStep = false;
        }

        [System.Serializable]
        public class ColorIdentifier
        {
            public GameObject obj;
            public float heightRelativeToHips = 1.5f;
            public Color color;
        }

        [System.Serializable]
        public class RotationAdjust
        {
            [Range(0, 360), ReadOnly]
            public int bodyX = 0;
            [Range(0, 360), ReadOnly]
            public int bodyY = 0;
            [Range(0, 360), ReadOnly]
            public int bodyZ = 0;

            [Range(-90, 90)]
            public int thumbX = 0;
            [Range(-180, 180)]
            public int thumbY = 0;
            [Range(-90, 90)]
            public int thumbZ = 0;
        }

        /**/
        [System.Serializable]
        public class KeepActorOnFloor
        {
            public bool enable;

            [ReadOnly]
            public float floorMinusHip;
            [HideInInspector]
            public bool calcYBias = false;
            [ReadOnly]
            public float ybias = 0;
            [Tooltip("设置地板的高度，人体脚部将保持在这个高度上")]
            public float floorHeight = 0;

            public void calculateBias()
            {
                calcYBias = true;

            }
        }


      

    }
}
