Methoden mit Rückgabewert
Teil des Abschnitts Unity-Scripting: Grundlagen der Unity-Journey von Coddy. Lektion 40 von 85.
Manche Methoden erledigen eine Aufgabe. Andere berechnen etwas und geben die Antwort zurück, wie ein Taschenrechner. Bei ihnen steht der Typ der Antwort dort, wo void stand:
int Double(int n)
{
return n * 2;
}int vor dem Namen sagt, dass diese Methode einen int zurückgibt. return gibt den Wert an den Aufrufer zurück und beendet die Methode. Daher werden die Zeilen danach innerhalb derselben Methode nicht ausgeführt.
Der Methodenaufruf steht dann für die Antwort, egal, wo du ihn einsetzt:
int big = Double(21); // big ist 42
Debug.Log("Twice 5 is " + Double(5));Eine Methode, die einen Wert zurückgibt, muss ein return mit einem Wert ihres Typs erreichen; andernfalls weigert sich C#, das Skript auszuführen.
Aufgabe
MittelVervollständige Score: Eine Münze ist 1 Punkt wert und ein Edelstein 5.
- Suche in
Score(int coins, int gems)nachreturn 0;. - Ersetze es durch
return coins + gems * 5;.
Drücke auf „Spielen“: In der Console wird für 3 Münzen und 4 Edelsteine Score: 23 angezeigt, und der Balken wächst. Drücke dann auf „Prüfen“.
Probier es selbst
using UnityEngine;
public class ScoreBoard : MonoBehaviour
{
void Start()
{
int score = Score(3, 4);
Debug.Log("Score: " + score);
transform.localScale = new Vector3(1, score / 5f, 1);
}
// Eine Münze ist 1 Punkt wert und ein Edelstein 5 Punkte.
int Score(int coins, int gems)
{
return 0;
}
}
Alle Lektionen in Unity-Scripting: Grundlagen
1C#-Grundlagen in Unity
Hallo, UnityVariablenDezimalzahlen brauchen ein fText in der KonsoleVariablen, die sich etwas merkenIf und ElseZahlen vergleichenRückblick: Münzsammler7Schleifen und Methoden
Wiederholen mit forSchleifen in SchleifenEine Methode schreibenMethoden mit RückgabewertArraysRückblick: Treppe10Dinge finden
Nach Namen suchenTagsNach Typ suchenReferenzen schlagen SuchenUnitys NullRückblick: nächste Münze13Projekt: Weiche den Blöcken aus
Der LäuferBlöcke vom Himmel2Bring es in Bewegung
Platziere den WürfelBewege ihn in jedem FrameDrehe ihn jede SekundeSteuere mit den TastenRückblick: Fahre den Würfel5Vektoren
Vektoren addierenRichtungenLokaler und globaler RaumDiagonale GeschwindigkeitAbstand zwischen ObjektenVector3 ist eine StrukturRückblick: Drohnenpilot8GameObjects und Komponenten
Referenzen im InspectorEine Komponente abrufenFehlende KomponentenEine Komponente hinzufügenRequireComponentEin- und AusblendenRückblick: Lichtschalter11Prefabs und Erzeugen von Instanzen
Prefabs und InstantiateNach Zeitintervall erzeugenIn einem Raster erzeugenListen von ObjektenDas Neueste zurücknehmenZerstörenZufälliges ErzeugenRückblick: Feuerwerk14Abschließende Herausforderungen
MünzmagnetDie Straße überquerenStraßenverkehrTurmbauerLanden oder verfehlen3Der Inspector
Inspector-FelderSerializeFieldFließkommazahlen und MathfInspector-AttributeRückblick: Aufzug6Transformationen und Hierarchie
Eltern und KinderHisse die FlaggeSkalierungDinge anschauenAuf einen Punkt zubewegenRückblick: Mond in Umlaufbahn9Projekt: Fang den Stern
Der FängerEin fallender Stern12Der Lebenszyklus eines Skripts
Awake und StartUpdate und LateUpdateOnEnable und OnDisableDie Reihenfolge im LebenszyklusRückblick: Lifecycle LoggerÜbe selbstständig: Unity-Playground