private bool ShouldContinue(PorterPipeSection currentSection, string target)
        {
            if (currentSection.isEntrance)
            {
                if (currentSection.GetComponent <PorterPipeEntrance>().portName == target)
                {
                    return(false);
                }
            }

            return(true);
        }
        private IEnumerator TransitionThroughTube(byte target)
        {
            string targetName = portNameConnections[target];


            bool currentMovingDirectionIsForward = StartingMovingDirectionIsForward;
            PorterPipeSection currentSection     = startingSection;
            PorterPipeSection nextSection;

            player.GetComponent <PlayerDeactivationHandler>().Dectivate();
            mixer.SetFloat("MasterLowPass", 0);
            mixer.SetFloat("MasterPitch", 0.5f);
            mixer.SetFloat("MasterEcho", 0);

            while (ShouldContinue(currentSection, targetName))
            {
                nextSection = currentSection.GetNextSection(currentMovingDirectionIsForward);

                if (nextSection.IsBlocked())
                {
                    currentMovingDirectionIsForward = !currentMovingDirectionIsForward;
                    nextSection = currentSection.GetNextSection(currentMovingDirectionIsForward);
                }


                float t = 0;
                while (t < 1)
                {
                    player.transform.position = Vector3.Lerp(currentSection.transform.position, nextSection.transform.position, t);
                    yield return(null);

                    t += Time.deltaTime * speed;
                }

                currentSection = nextSection;
            }

            player.transform.position = currentSection.GetComponent <PorterPipeEntrance>().arrivingPosition;
            player.GetComponent <PlayerDeactivationHandler>().Activate();
            mixer.ClearFloat("MasterLowPass");
            mixer.ClearFloat("MasterPitch");
            mixer.ClearFloat("MasterEcho");
        }