Unsere Datenschutzrichtlinie wird in Kürze aktualisiert. Bitte sehen Sie sich die Vorschau an.

Skripting in Unity Grundkurs

Enums abfragen

Testen Sie unsere 2015 Kurse

10 Tage kostenlos!

Jetzt testen Alle Abonnements anzeigen
Das Arbeiten mit Enums, also eigenen Sammlungen bestimmter Daten, passiert meistens per If-Abfrage. Hier sehen Sie, wie Sie dabei vorzugehen haben.
05:54

Transkript

Gehen wir jetzt etwas näher darauf ein, wie man mit Enums, also Enumerations, umgehen kann. Sie haben vielleicht schon eine Sammlung an Daten festgehalten, also deklariert, wie wir das hier in unserem Fall auch haben. Hier handelt es sich zum Beispiel um Objekt-Typen. Wir können also zum Beispiel festlegen, was habe ich überhaupt für ein Objekt, gibt mir das Gesundheit oder Geschwindigkeit beim Rennen oder Munition, und dann haben wir festgelegt, welchen Typ haben wir denn überhaupt, in Unity sieht das dann so aus, wenn wir das Skript auf ein leeres GameObject ziehen, können wir festsetzen, "Du, liebes Objekt, gibst Gesundheit und so weiter". So weit, so gut, unsere Liste ist quasi da, und wir können auch schon Typen festsetzen. Jetzt wollen wir uns aber noch anschauen, wie kann ich das denn abfragen. Na, und hier ist das natürlich eine Bedingung. In Abhängigkeit von unserem aktuellen Typen, unserem currentType, soll irgendetwas passieren. Also, Abhängigkeiten, da kommt wieder das Stichwort Bedingung hinzu. Und Bedingungen, klar, machen wir jetzt einfach mal eine if-Bedingung. If - und was fragen wir dann ab? Was muss denn unsere Bedingung sein? Unsere Bedingung ist, wenn currentType irgendetwas ist, also zum Beispiel, if currentType gleich gleich, denn das einfache Gleichheitszeichen ist ja eine Zuweisung, das doppelte ein Vergleich, und hier schlägt uns Visual Studio direkt vor, "Hör mal, dein currentType ist vom Typ ObjectType". also kannst du auch hier nur vergleichen mit Typ ObjectType. Na klar, den Vorschlag nehmen wir an, ObjectType, einfacher Druck auf Enter, Punkt. Dann können wir natürlich auch nur mit den von uns festgesetzten Werten vergleichen. das sind hier nur drei, also haben wir hier nur drei Vorschläge. Also sagen wir zum Beispiel, wenn if mein aktueller Typ, mein currentType gleich ObjectType.HealthPlus ist, also ein Objekt, was uns Gesundheit bringt, dann mach irgendwas. zum Beispiel wenn Spieler durchrennt, gib ihm Gesundheit. Hier würde dann also der Text stehen, der Code, der dafür sorgt, dass der Spieler Gesundheit erhält, und so weiter. Dann gibt es ja noch einen anderen Fall, mindestens zwei, denn wir haben hier ja drei festgesetzte Sachen. also else if currentType ==, und jetzt nehmen wir wieder unseren Vorschlag von Visual Studio, zum Beispiel RunBoost, ja, was soll denn dann passieren, hm, okay, dann soll, wenn der Spieler durchrennt, gib ihm Geschwindigkeit, und dann else if - wir kopieren uns einfach mal das ganze Ding, das geht schneller, und hier tauschen wir jetzt einfach nur RunBoost gegen AmmunitionBoost aus. Und so haben wir unsere drei möglichen Werte, die wir hier oben ja selbst festgelegt haben, abgefragt. Und dann schreiben wir hier Munition rein. Hier, wie gesagt, das ist nur sogenannter Pseudocode, also einfach nur eine Beschreibung, was könnte denn da passieren, hier kann alles mögliche drinstehen, je nachdem, was Sie in Ihrem Spiel, in Ihrem Projekt gerade umsetzen möchten. Natürlich geht das nicht nur mit if else, sondern auch mit switch. Switch heißt ja, wir kucken jetzt mal, was unser aktueller Wert ist, und genau das geben wir der Switch-Funktion, beziehungsweise der Switch-Bedingung mit, "Kuck mal, wie unser currentType aktuell ist, und in Abhängigkeit davon, tue bitte etwas". Jetzt geht es ja wieder nach den Fällen, tritt der case, der Fall ein, und hier bekommen wir wieder den Vorschlag, ObjectType.HealthPlus, ja, was denn dann? Spieler bekommt - Sie wissen ja, was passiert. Natürlich wieder einen Break reinsetzen, und schon hätten wir die Switch-Funktion, die unseren selbst festgelegten Datenwert abfragt, und ihn gegencheckt gegen unsere selbst festgelegte Sammlung. Und so arbeiten wir mit den von uns selbst festgesetzten Enums. Wir deklarieren sie also zunächst, sagen dann, okay, aktuell haben wir dies, dies, dies. Und dann fragen wir ab, was haben wir denn wirklich, und in Abhängigkeit davon sollen gewisse Dinge passieren. Zum Beispiel könnten wir es nochmal auf die Game Stati beziehen, dann würden wir abfragen, ist unser currentStatus vielleicht gerade Paused? if lalalala gleich lalalala dann mach irgendwas anderes. Und das ist so die häufigste Art, wie Enums verwendet werden. Eine eigene Sammlung erstellen, und dann gegenchecken, was haben wir denn gerade, wo sind wir gerade, und in Abhängigkeit davon, liebes Spiel, tue doch bitte etwas.

Skripting in Unity Grundkurs

Greifen Sie mithilfe von C#-Skripts dynamisch in Ihr Unity-Projekt ein. Auch Programmier-Neulinge lernen Schritt für Schritt den Einstieg ins Skripting.

4 Std. 50 min (40 Videos)
Derzeit sind keine Feedbacks vorhanden...
 

Anleitung für Unity 5-Nutzer:

  • Schritt 1: Projekt in Unity 5 öffnen und die Meldung bestätigen, dass das Projekt ein Upgrade bekommt.
  • Schritt 2: Wenn die Meldung kommt, dass die API upgedatet werden muss, diese auch bestätigen

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!