Jump to content
Unity Insider Forum

Scrippt Fehler ( ROT )


w0rks

Recommended Posts

Hallo, will ein Spiele Menü erstellen mit einem Tutorial das eigentlich ganz einfach ist B). Nur das Problem habe ich wieder das er das Richtig geschriebene von mir nicht

erkennt und alles Rot unterstreicht. ALLES sollte funktionieren ! und ALLES ist richtig geschrieben. Nur wie kann ich es einstellen das er es erkennt und nicht mehr ROT anzeigt ? :(

LG        w0rks

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Da deine Frage sehr "unvollständig" ist. Stelle ich einfach selber ein paar Fragen, die zur Lösung des Problems betragen sollten:

  • Wie hast du die neue Klasse erstellt?
    Wenn Visual Studio die Dateiendung falsch interpretiert, dann kann so etwas passieren.
    Man erstellt eine neue Klasse am besten mit "rechte" Maustaste in die Projektview + "Create C# Skript"
  • Steht ein kleines "C#" Symbol vor deiner neuen Klasse? Wenn du eine C#-Klasse erstellt hast, dann sollte er die Endung ".cs" nur in der Statuszeile anzeigen und nicht hinter dem Namen den Skriptes.
  • Heißt deine Klasse genauso wie dein Klassenname:
    (C#) NewBehaviourScript => Inhalt "public class NewBehaviourScript : MonoBehavior"
  • Wenn du ein Unityskript erstellt haben solltest (Endung .js) dann kann es sein, daß er in Visual Studio viele Sachen nicht erkennt (und rot unterstreicht).
    Unityskript solltest du nicht mehr verwenden.
     
Link zu diesem Kommentar
Auf anderen Seiten teilen

Entschuldigung versuche mich so kurz wie möglich zu halten. Ist auch schwer zu verstehen was ich meine :mellow: weil ich selbst nicht weis wie ich es erklären soll.

  • Vor der Neuen Klasse steht KEIN kleines "C#" Symbol und ".cs" steht hinter dem Namen der Datei.
  • Der Klassen Name heißt genau so wie in der Klasse ( public class Menü : MonoBehaviour )
  • Wie meinst du das mit Unityskript ? Bei Assets habe ich Rechtsklick gedrückt create & dann C# erstellen.

Hier ist noch der gesamte Script. Wenn du Ihn verwendest; kriegst du etwas rot unterstrichen ?

 

using System.Collections;
using UnityEngine.UI;
using System.Collections.Generic;
using UnityEngine;

public class Menü : MonoBehaviour
{
    public Canvas HauptCanvas;
    public Canvas EinstellungenCanvas;

    void Awake()
    {
        EinstellungenCanvas = false;
    }

    public void EinstellungenOn;
    }
        EinstellungenCanvas.enabled = true;
        HauptCanvas.enabled = false;
    }

    public void ZurückOn()
    {
        EinstellungenCanvas.enabled = false;
        HauptCanvas.enabled = true;
    }

    public void LoadOn()
    {
        Application.LoadLevel(1);
    }

}

 

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also mir fällt auf, du hast 2 Fehler im Skript:

using System.Collections;
using UnityEngine.UI;
using System.Collections.Generic;
using UnityEngine;

public class Menü : MonoBehaviour
{
    public Canvas HauptCanvas;
    public Canvas EinstellungenCanvas;

    void Awake()
    {
        EinstellungenCanvas = false;
    }

    public void EinstellungenOn; // => falsch 
    } // => falsch
        EinstellungenCanvas.enabled = true;
        HauptCanvas.enabled = false;
    }

    public void ZurückOn()
    {
        EinstellungenCanvas.enabled = false;
        HauptCanvas.enabled = true;
    }

    public void LoadOn()
    {
        Application.LoadLevel(1);
    }

}


Korrektur:

using System.Collections;
using UnityEngine.UI;
using System.Collections.Generic;
using UnityEngine;

public class Menü : MonoBehaviour
{
    public Canvas HauptCanvas;
    public Canvas EinstellungenCanvas;

    void Awake()
    {
        EinstellungenCanvas.enabled = true;
    }

    public void EinstellungenOn()
    {
        EinstellungenCanvas.enabled = true;
        HauptCanvas.enabled = false;
    }

    public void ZurückOn()
    {
        EinstellungenCanvas.enabled = false;
        HauptCanvas.enabled = true;
    }

    public void LoadOn()
    {
        Application.LoadLevel(1);
    }

}


Eine Kleinigkeit noch.Benenne deine Klasse und deine Datei am besten mal um in:
"Menu" oder "Menue"

Man sollte in C# und Unity keine deutschen Umlaute wie "ä ü ö ß" verwenden.
Glaube aber nicht daß dies das Problem war ;)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Archiviert

Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.

×
×
  • Neu erstellen...