text: Ich verstehe SceneManager.LoadScene einfach nicht Hilfe. - Scripting - Unity Insider Forum
  Ich verstehe SceneManager.LoadScene einfach nicht Hilfe.
  By TheRoxas, Saturday at 10:49 AM in Scripting
  TheRoxas 0
  Ich habe mit Unity runtergeladen und mich an dem ersten Tutorial auf der Website " Roll a Ball" zu schaffen gemacht und die ersten Schritte geschafft aber kriege es einfach nicht hin die Funktion SceneManager.Loadscene zu verstehen.
  Ich wollte mehrere Level ( Scenes) erstellen und es so machen das wenn man alle 12 gesammelt hat dann in die nächste Scene geladen wird aber checke einfach nicht wie ich das machen soll. Die Erklärungen auf Youtube und der Unity Seite sind für mich warum auch immer auch unverständlich und ich bin echt am Ende mit meinem Latein.
  Ganz nach der Erklärung habe ich den PlayerController gemacht.
  Ich hoffe und freue mich auf Hilfe.
  Bleibt gesund und danke.
  Du musst die Szenen die du laden möchtest in den Build-Settings eintragen.
  Dabei bekommt jede Szene einen Index, dieser Index muss beim Laden der Szenen angegeben werden.
  Deine Start-Szene hat den Index 0. Weitere Level dann z.B. den Index 1 , Index 2 usw.
  File -> "Build Settings" -> "Add Open Scenes"
  Hier der Code wie du die Level dann laden kannst. Ich habe dies so erweitert, dass du einstellen kannst wie lange Unity noch warten soll bis er das Level läd, damit der Spieler noch seine erreichte Punktzahl sehen kann:
  StartCoroutine (LoadNextLevel(++currentLevel, 5f)); // Läd Level mit Index "currentLevel + 1" nach 5 Sekunden
  IEnumerator LoadNextLevel(int level, float timetowait)
  yield return new WaitForSeconds(timetowait); // wartet timetowait Sekunden
  SceneManager.LoadScene(level); // Läd das Level mit dem Index level
  Leider hat gibt es das Problem das man im 2ten Level nicht in das 3te kommt sondern das 2te neugeladen wird.
  Edited Saturday at 05:59 PM by TheRoxas
  Dazu kommt wenn man das 3te also letzte Level abschließt kommt man wieder in das 2te.
  Wenn du das noch einbaust, dann wird currentLevel immer auf das aktuell geladene Level gesetzt:
  currentLevel = SceneManager.GetActiveScene().buildIndex;
  Damit wird die Reihenfolge der Level nun über den Build-Index bestimmt, siehe Dialog oben wo du die Szenen einstellst, man kann hier auch die Reihenfolge verschieben ...!
  Leider kommt da dieser Fehler:
  StartCoroutine(LoadNextLevel(++currentLevel, 3f)); // Läd Level mit Index "currentLevel + 1" nach 5 Sekunden