public override void OnInspectorGUI()
        {
            UMAPhysicsSlotDefinition slot = target as UMAPhysicsSlotDefinition;

            DrawDefaultInspector();

            EditorGUILayout.HelpBox("Sets layer 8 and 9 to Ragdoll and Player. If your code uses different layers do not use this defaults button", MessageType.Info);
            if (GUILayout.Button("Add Default Layers"))
            {
                AddDefaultLayers();
            }
            EditorGUILayout.HelpBox("The Ragdoll layer needs it's collision matrix layers set to collide with only itself. Set this in Edit->Project Settings->Physics->Layer Collision Matrix", MessageType.Info);

            slot.ragdollLayer = EditorGUILayout.LayerField("Ragdoll Layer", slot.ragdollLayer);
            slot.playerLayer  = EditorGUILayout.LayerField("Player Layer", slot.playerLayer);
        }
        private void AddDefaultLayers()
        {
            UMAPhysicsSlotDefinition slot = target as UMAPhysicsSlotDefinition;

            CreateLayer("Ragdoll");
            CreateLayer("Player");

            for (int i = 8; i < 32; i++)
            {
                if (i != slot.ragdollLayer)
                {
                    Physics.IgnoreLayerCollision(slot.ragdollLayer, i, true);
                }
            }

            Physics.IgnoreLayerCollision(slot.ragdollLayer, slot.ragdollLayer, false);
        }