stuck on second level...please help

so ya,i m noob in unity,but tried to make 1 game from youtube video.
here’s my code.after 1st level i just stuck on 2nd level(infinite loop),i have 5 level+mainmenu,it dsnt matter which level i play after tht level i shift to the 2nd level(array[1]).please help me.i don’t wanna fail.
thank you in advance.
gamemanager code:-

using UnityEngine;
using System.Collections;
using UnityEngine.SceneManagement;

public class GameManager : MonoBehaviour {
    public int currentScore;
    public int highscore;
    // Use this for initialization
    public int currentLevel;
    public int unlockedLevel;
    public  float starttime;
    private string currenttime;
    public GUISkin skin;
    public Rect timerect;
    public Color warningColorTimer;
    public Color defaultColorTimer;



    void Update()
        {

        
           starttime -=Time.deltaTime;
           currenttime = string.Format("{0:0.0}", starttime);
            
        if (starttime <= 0)
        {
            starttime = 0;
            Destroy(gameObject);
            SceneManager.LoadScene(5);
            
             }
             
    }
    void Start()
    {
        if (PlayerPrefs.GetInt("level completed") > 0)
        {        //DontDestroyOnLoad(gameObject);
            currentLevel = PlayerPrefs.GetInt("level completed");
        }
        else {
            currentLevel = 0;

        }
        }


    public void CompleteLevel()
    {
        if (currentLevel < 5)
        {
            currentLevel += 1;
            PlayerPrefs.SetInt("Level completed",currentLevel);
            PlayerPrefs.SetInt("Level" + currentLevel.ToString() + "score", currentScore);
            SceneManager.LoadScene(currentLevel);


        }
        else
        {
            print("well done");
            PlayerPrefs.SetInt("Level completed", 0);
            CompleteLevel();
        }

    }
    void OnGUI()
    {
      
            GUI.skin = skin;
        if (starttime < 5f)
        {
            skin.GetStyle("boo").normal.textColor = warningColorTimer;

        }
        else
        {
            skin.GetStyle("boo").normal.textColor = defaultColorTimer;
        }
        GUI.Label(timerect, currenttime, skin.GetStyle("boo"));
       

    }

    
}

here’s my player movement code:-

using UnityEngine;
using System.Collections;
public class PlayerMovement : MonoBehaviour
{
    public float moveSpeed;
    private Vector3 input;
    Rigidbody cubeMovement;
    private float maxSpeed = 5f;
    private Vector3 spawn;
    public GameObject deathparticles;
    public GameManager manager;
    // Use this for initialization
    void Start()
    {
        cubeMovement = GetComponent<Rigidbody>();

        spawn = transform.position;
         manager = manager.GetComponent<GameManager>();

    }

    // Update is called once per frame
    void FixedUpdate()
    {
        input = new Vector3(Input.GetAxisRaw("Horizontal"), 0, Input.GetAxisRaw("Vertical"));

        if (cubeMovement.velocity.magnitude < maxSpeed)
        {
            cubeMovement.AddForce(input * moveSpeed);
        }

        if (Input.GetKey(KeyCode.A))
        {
            cubeMovement.AddForce(input * moveSpeed);
        }

        if (Input.GetKey(KeyCode.D))
        {
            cubeMovement.AddForce(input * moveSpeed);
        }

        if (Input.GetKey(KeyCode.W))
        {
            cubeMovement.AddForce(input * moveSpeed);
        }

        if (Input.GetKey(KeyCode.S))
        {
            cubeMovement.AddForce(input * moveSpeed);
        }
        if (transform.position.y <-1)

        {
            Die();

        }

    }

    void OnCollisionEnter(Collision other)
    {
        if (other.transform.tag == "badguy")
        {

            Die();
        }

        
    }
    void OnTriggerEnter(Collider other)
    {


        if (other.transform.tag=="Goal")
        {

           manager.CompleteLevel();
            

        }

    }
        void Die()
    {
        Instantiate(deathparticles, transform.position, Quaternion.Euler(270,0,0));
        transform.position = spawn;

    }
}

Set the current level and unlocked level variables as static