void StopTransitionTimer()
 {
     if (transitionTimerCrt != null)
     {
         FrameworkBehaviour.StopCoroutine(transitionTimerCrt);
     }
 }
 void StopInteractionCheckTimer()
 {
     if (interactionCheckTimerCrt != null)
     {
         FrameworkBehaviour.StopCoroutine(interactionCheckTimerCrt);
     }
 }
 void StopForcedStayTimer()
 {
     if (forcedStayTimerCrt != null)
     {
         FrameworkBehaviour.StopCoroutine(forcedStayTimerCrt);
     }
 }
        // Transition time.

        void StartTransitionTimer()
        {
            if (transitionTimerCrt != null)
            {
                FrameworkBehaviour.StopCoroutine(transitionTimerCrt);
            }
            transitionTimerCrt = FrameworkBehaviour.StartCoroutine(UpdateTransitionTimer());
        }
        // Interaction check time.

        void StartInteractionCheckTimer()
        {
            if (interactionCheckTimerCrt != null)
            {
                FrameworkBehaviour.StopCoroutine(interactionCheckTimerCrt);
            }
            interactionCheckTimerCrt = FrameworkBehaviour.StartCoroutine(UpdateInteractionCheckTimer());
        }
        // Forced stay time.

        void StartForcedStayTimer()
        {
            if (forcedStayTimerCrt != null)
            {
                FrameworkBehaviour.StopCoroutine(forcedStayTimerCrt);
            }
            forcedStayTimerCrt = FrameworkBehaviour.StartCoroutine(UpdateForcedStayTimer());
        }