Hello! I'm making a 2D platformer demo, and my last big goal is to get sound into my game. I have 4 audio files for my character (Used for Running, Jumping, Landing, and Death), and 2 for coins. Would someone be able to show me how to program sound playing into my codes? Below I will put in the scripts for my Player and the Coins. I apologize if this sounds picky or whiny or anything like that, but would you be able to keep the instructions simple if possible? I have no experience with coding/programming before this project, and these codes were seen in tutorials. Thank you for your time and help! Code (CSharp): public class PlayerController : MonoBehaviour { public float speed = 5f; public float jumpSpeed = 8f; private float movement = 0f; private Rigidbody2D rigidBody; public Transform groundCheckPoint; public float groundCheckRadius; public LayerMask groundLayer; private bool isTouchingGround; private Animator playerAnimation; public Vector3 respawnPoint; public LevelManager gameLevelManager; Vector2 tmpTransform; // Use this for initialization void Start() { rigidBody = GetComponent<Rigidbody2D>(); playerAnimation = GetComponent<Animator>(); respawnPoint = transform.position; gameLevelManager = FindObjectOfType<LevelManager>(); tmpTransform = transform.localScale; } // Update is called once per frame void Update() { isTouchingGround = Physics2D.OverlapCircle(groundCheckPoint.position, groundCheckRadius, groundLayer); movement = Input.GetAxis("Horizontal"); if (movement > 0f) { rigidBody.velocity = new Vector2(movement * speed, rigidBody.velocity.y); transform.localScale = tmpTransform; } else if (movement < 0f) { rigidBody.velocity = new Vector2(movement * speed, rigidBody.velocity.y); transform.localScale = new Vector2(-tmpTransform.x, tmpTransform.y); } else { rigidBody.velocity = new Vector2(0, rigidBody.velocity.y); } if (Input.GetButtonDown("Jump") && isTouchingGround) { rigidBody.velocity = new Vector2(rigidBody.velocity.x, jumpSpeed); } playerAnimation.SetFloat("Speed", Mathf.Abs(rigidBody.velocity.x)); playerAnimation.SetBool("OnGround", isTouchingGround); } private void OnTriggerEnter2D(Collider2D other) { if (other.tag == "FallDetector") { gameLevelManager.Respawn(); } if (other.tag == "CheckPoint") { respawnPoint = other.transform.position; } } } Code (CSharp): public class CoinScript : MonoBehaviour { private LevelManager gameLevelManager; public int coinValue; private AudioSource coinSoundEffect; public AudioClip coin; public float volLowRange = 0.5f; public float volHighRange = 1.0f; // Use this for initialization void Start () { gameLevelManager = FindObjectOfType<LevelManager> (); coinSoundEffect = GetComponent<AudioSource>(); } // Update is called once per frame void Update () { } void OnTriggerEnter2D(Collider2D other) { if(other.tag == "Player") { coinSoundEffect.PlayOneShot(coin, 1F); gameLevelManager.AddCoins(coinValue); Destroy(gameObject); } } }