Im Moment befolge ich ein YouTube-Tutorial, wie man ein Labyrinth-Spiel in Unity mit C# -Skripten erstellt. Während eines Teils des Tutorials verwendet der Uploader eine Funktion aus dem Skript "GameManager" und ruft sie im Skript "PlayerMovement" auf. in dem Video funktioniert alles gut, aber wenn ich versuche, es zu implementieren, gibt es mir "CS0122 'GameManager.CompleteLevel()" ist aufgrund seiner Schutzstufe nicht zugänglich "C# Funktion unzugänglich aufgrund des Schutzlevels
Hier sind einige Code-Schnipsel, um mein Problem zu visualisieren:
"PlayerMovement"
void OnTriggerEnter(Collider other)
{
if (other.transform.tag == "Goal")
GameManager.CompleteLevel();
}
"GameManager"
public class GameManager : MonoBehaviour {
public static int currentScore;
public static int highScore;
public static int currentLevel =0;
public static int unlockedLevel;
void CompleteLevel()
{
currentLevel++;
SceneManager.LoadScene(currentLevel);
}
}
Jede Hilfe wird sehr geschätzt :)
der Fehler auf der PlayerMovement Seite geschieht privat ist, wenn es GameManager nennen will. KomplettesLevel(); –