public override void DrawInspector()
        {
            base.DrawInspector();

            if (Application.isPlaying && _fsm_dyingState != null)
            {
                EditorGUILayout.LabelField("Current State: " + _fsm_dyingState.GetCurrentState().ToString());
            }

            beginAlive = EditorGUILayout.Toggle("Begin Alive", beginAlive);

            dyingTrigger   = (DyingTrigger)EditorGUILayout.EnumPopup("Dying Trigger", dyingTrigger);
            onKilledAction = (OnKilledAction)EditorGUILayout.EnumPopup("Killed Action", onKilledAction);

            /*if (onKilledAction == OnKilledAction.Pool)
             * {
             *
             * }*/

            duration_dying    = EditorGUILayout.IntField("Dying Duration", duration_dying);
            duration_reviving = EditorGUILayout.IntField("Reviving Duration", duration_reviving);

            EditorGUILayout.Space();

            stateDataToDraw = (DyingState)EditorGUILayout.EnumPopup("Draw Data", stateDataToDraw);
            OnDrawStateDatas();
        }
    public void Dying()
    {
        isDying = true;
        animator.SetTrigger("Dying");
        DyingTrigger respawn = FindObjectOfType <DyingTrigger>();

        StartCoroutine(respawn.OnEnter());
    }