C sharp cant play Audio

So im on the point of going mad. Why doesnt this work!?

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityStandardAssets.Characters.FirstPerson;
[RequireComponent(typeof(AudioSource))]

public class MusicMode : MonoBehaviour
{

public UnityStandardAssets.Characters.FirstPerson.FirstPersonController controller;

FirstPersonController fpc;

public AudioClip runningOnE;

private AudioSource audio;

void Start()
{
    audio = GameObject.Find("Player").GetComponent<AudioSource>();
    Track001();

}

void Track001()
{
    audio.Play();
    audio.clip = runningOnE;
    audio.Play();
}

}

Also I cant remove the audiosource from the object i have the script attached to. Unity tells me then that the script depends on it. I dont understand why…

First, you can’t remove the AudioSource, because you have [RequireComponent(typeof(AudioSource))] on top of your script.
Next, from what I can see, that script is also placed on “Player” prefab so you don’t need to look for that Player.

Now here’s a bit changed version of your script :

using System.Collections; 
using System.Collections.Generic; using UnityEngine; 
using UnityStandardAssets.Characters.FirstPerson; 
    
[RequireComponent(typeof(AudioSource))]    
public class MusicMode : MonoBehaviour {
            
      public UnityStandardAssets.Characters.FirstPerson.FirstPersonController controller;
      FirstPersonController fpc;
      public AudioClip runningOnE;
      private AudioSource audio;
      void Start()
      {
              audio = GetComponent<AudioSource>();
              Track001();
       }
       void Track001()
       {
               audio.clip = runningOnE;
               audio.Play();
        }
}

Try if it works, and also make sure that you are assigning actuall clip to your runningOnE in Inspector.