Audio not playing correctly

So im making a game for a college project and i am trying to play a sound when the ship takes off.
here is the code for the landing and takeoff script.
public class Land_Takeoff : MonoBehaviour
{
public bool land = true;
public bool takeoff = false;
public float Throttle = 0;
public AudioSource audioSource;
public AudioClip audioClip;

    public void Update()
    {
        if (Input.GetKeyDown("l") && land == true && takeoff == false)
        {
            takeoff = true;
            land = false;
        }
        else if (Input.GetKeyDown("l") && land == false && takeoff == true)
        {
            takeoff = false;
            land = true;
        }

        MFlight.Demo.Plane plane = GetComponent<MFlight.Demo.Plane>();
        if (land == true && takeoff == false)
        {
            GetComponent<TieFighterGun>().enabled = false;
            GetComponent<MFlight.Demo.Plane>().enabled = false;
            plane.StopThrottle(Throttle);
        }
        else if (land == false && takeoff == true)
        {
            audioSource.clip = audioClip;
            audioSource.Play();
            StartCoroutine(Delay());
        }
    }

    IEnumerator Delay()
    {
        yield return new WaitForSeconds(6);
        audioSource.Stop();
        GetComponent<TieFighterGun>().enabled = true;
        GetComponent<MFlight.Demo.Plane>().enabled = true;
    }
}

So i have it set up so it disables certain scripts attached to the ship such as the gun script which also play sounds when you shoot based on if the ship is in a land or takeoff state. If the ships is taking off, the ship should play a sound and then wait 6 seconds before giving the player control of the ship and enabling the other scripts. If i take out the code that plays the audio from the landing and takeoff script, the gun sounds would play normally when i shoot. But both the takeoff sound and gun sounds play random static noises every now and again. Ive tried to assign it so one plays from an audio source on the camera and one on the ship itself but that doesnt seem to work. Here is the code for the gun sounds:
public class TieFighterGun : MonoBehaviour
{
public float damage = 10f;
public float range = 1000f;
public float fireRate = 15f;
public float impactForce = 1000f;
public int zoom = 50;
public int normal = 60;
public float smoothZoom = 5;

    private bool isZooming = false;

    public Camera fpsCam;
    public GameObject impactEffect;
    public GameObject Gun1;
    public GameObject Gun2;
    public AudioSource audioSource;
    public AudioClip[] shoot;
    private AudioClip shootClip;

    private float timeToFire = 0f;

    void Start()
    {
        audioSource = gameObject.GetComponent<AudioSource>();
    }

    // Update is called once per frame
    void Update()
    {
        if (Input.GetButton("Fire1") && Time.time >= timeToFire)
        {
            timeToFire = Time.time + 1f / fireRate;
            Shoot();

            int index = Random.Range(0, shoot.Length);
            shootClip = shoot[index];
            audioSource.clip = shootClip;
            audioSource.Play();

        }

        if (Input.GetMouseButtonDown(1))
        {
            isZooming = !isZooming;
        }
        else if (Input.GetMouseButtonUp(1))
        {
            isZooming = false;
        }

        if (isZooming)
        {
            fpsCam.fieldOfView = Mathf.Lerp(fpsCam.fieldOfView, zoom, Time.deltaTime * smoothZoom);
        }

        else
        {
            fpsCam.fieldOfView = Mathf.Lerp(fpsCam.fieldOfView, normal, Time.deltaTime * smoothZoom);
        }
    }

    void Shoot()
    {
        audioSource.Play();
        RaycastHit hit;
        if (Physics.Raycast(Gun1.transform.position, Gun1.transform.forward, out hit, range))
        {
            Debug.Log(hit.transform.name);

            GameObject impactObject = Instantiate(impactEffect, hit.point, Quaternion.LookRotation(hit.normal));
            Destroy(impactObject, 2f);
        }

        if (Physics.Raycast(Gun2.transform.position, Gun2.transform.forward, out hit, range))
        {
            Debug.Log(hit.transform.name);

            GameObject impactObject = Instantiate(impactEffect, hit.point, Quaternion.LookRotation(hit.normal));
            Destroy(impactObject, 2f);
        }
    }
}

Here is a video of the sounds that should be playing and what the sounds in game sound like.

You could put a collider (isTrigger), at the spot where the plane leaves the ground, and trigger your audio.

Help me guys

> // if i press SPACE sound play  else Pause ... so this script working well

    void laUnch()
        {
            if (Input.GetKey(KeyCode.Space))
            {
                rigidBody.AddRelativeForce(Vector3.up * launchSpeed);
                if (audioSource.isPlaying == false)
                {
                    audioSource.PlayOneShot(flySound);
                }
    
            }
            else 
            {
                print("PAUSE");
                audioSource.Pause()
            }
    
        }

//the next part is = when player colided with tag it means Next level and then it should play Finish sound…

        switch (collision.gameObject.tag)
        {
            case "Friendly":
                audioSource.PlayOneShot(finishSound);
                break;
            case "Finish":   //i rich this case and console show that code completed well...
                state = State.NextLevel;
                audioSource.Stop();
                print("STOP");
                print("FINISH SOUND");
                audioSource.PlayOneShot(finishSound);
                Invoke("LoadNextLevel", 2f);
                break;
            default:
                state = State.Dead;
                Invoke("LoadFirstLevel", 2f);
                break;
        }
    }

Finally, the problem is = when I rich Finish case, the sound not playing BUT if I press the SPACE button FINISH is sound continuing playing …
i tried to comment this part

 else 
                {
                    print("PAUSE");
                    audioSource.Pause()
                }

and now FINISH sound is playing well but flySound continued playing.

how to fix all that … i want (flySound) play while Space pressed and pause when unpressed …and (Finish sound) play when colided with my tag …