SceneManager.SceneLoaded签名问题

时间:2016-08-24 16:51:32

标签: c# unity3d

我不明白这个实现有什么问题。也许有人可以对这个问题有所了解。编译器声明StartGame没有与委托匹配的重载方法。我在这里错过了一些愚蠢的东西吗?

void Start()
{
    SceneManager.sceneLoaded += this.StartGame;
    director = GetComponent<Director>();
}

public void LoadGameLevel()
{
    SceneManager.LoadScene("Debug");
}

void StartGame(UnityAction<Scene, LoadSceneMode> sceneInfo)
{
    foreach (GameObject player in players)
    {
        Instantiate(player);
    }
}

1 个答案:

答案 0 :(得分:5)

这是事件的定义方式:public static event UnityAction<Scene, LoadSceneMode> sceneLoaded;

替换

StartGame(UnityAction <Scene, LoadSceneMode> sceneInfo)

void StartGame(Scene scene, LoadSceneMode sceneMode)

这应该可以解决你的问题。