Rowan Harley
Rowan Harley

Reputation: 349

Unity Change Scene with button

I've been having problems with my code for unity. I'm using C Sharp and Unity 5.0.2f Personal Edition. Here's my code:

using UnityEngine;
using System.Collections;

public class ButtonEvent : MonoBehaviour {
    public void LoadScene(int SceneToChangeTo){
        Application.LoadLevel (SceneToChangeTo);
    }
}

This should change the to an integer scene but when I go to the button.onclick() in the inspector and add the script nothing comes up about changing scene (Note: The script is under "_Manager" (An empty GameObject))

Upvotes: 2

Views: 11748

Answers (2)

seyed
seyed

Reputation: 71

use this code:

        using UnityEngine.SceneManagement;
///***///
        public void LoadGameLevel(int SceneToChangeTo)
        { SceneManager.LoadScene(SceneToChangeTo);
        }
    //or
        public void LoadGameLevel(string SceneName)
        { SceneManager.LoadScene(SceneName);
        }

note: Worked in OnMouseDown() and Unity Ui and other

Upvotes: 1

Milad Qasemi
Milad Qasemi

Reputation: 3049

Add a listener for your button and make sure you put a value in numberOfLevel variable and assign your button to MyButton in the inspector or you will get a null reference exception

[SerializeField] private Button MyButton = null; // assign in the editor
public int numberoflevel;

void Start() { MyButton.onClick.AddListener(() => { changeScene(numberoflevel);});
}

 public void LoadScene(int SceneToChangeTo){
        Application.LoadLevel (SceneToChangeTo);
    }

Upvotes: 1

Related Questions