if(Physics.Raycast(rayOrigin,rayDir,out hitdistance))
        {
if(hit.collider.GetComponent<Collider>().tag == "LIVINGDOOR")
            {
                 if(!livingDoor)
                {
                    liD.enabled = true;
                }
                else if(livingDoor)
                {
                    liD.enabled = true;
                }
                if(Input.GetKeyDown(KeyCode.E))
                {
                    GameObject hitTarget = hit.collider.gameObject;
                    if(!livingDoor)
                    {
                        hitTarget.gameObject.tag = "Untagged";
                        liDoor.Open();
                        StartCoroutine(myCoroutine_1);
                        StopCoroutine(myCoroutine_2);
                        liD.enabled = false;  
                    }
                    else if(livingDoor)
                    {
                        hitTarget.gameObject.tag = "Untagged";
                        liDoor.Close();
                        StartCoroutine(myCoroutine_2);
                        StopCoroutine(myCoroutine_1);
                        liD.enabled = false;                      
                    }
                }

대강 이런식으로 문열기를 한단말이야 그럼 문이 여러개면 bool값이나 태그값 ㅈㄴ 낭비아니냐 응??? 그렇지 ???? 

(코루틴안에는 문에 태그값 부여 및 문 열리는 시간동안 기다리기, bool값 변경 이있당)