Unity - Fragen zu Coroutine?
Hallo,
ich beschäftige mich momentan neu mit Coroutine/WaitForSecond in Unity. Dazu verstehe ich einige Sachen noch nicht. Wie unterbreche ich eine Coroutine und ist es möglich sie auch nur zu pausieren, sodass sie auf Befehl dort weiter macht, wo sie pausiert wurde? Momentan habe ich die Funktion StopCoroutine(Coroutine()) ausprobiert, doch funktioniert sie leider nicht. Bitte um Hilfe!
1 Antwort
![](https://images.gutefrage.net/media/user/OctoMan/1562599040831_nmmslarge__0_0_1024_1024_3ee6d102f9fff3b8eb89a9336cca61ab.png?v=1562599041000)
Es gibt eines zu dem Thema:
Je nachdem wie die Co-Routine startest kannst du weiter vorgehen.
Startest du sie so:
StartCoroutine("Name");
kannst du sie auch so stoppen
StopCoroutine("Name");
Das geht aber nur in dem Fall, wenn du keine Argumente übergeben musst.
Wenn du Argumente brauchst aber die Coroutine stoppen musst, empfielt es sich diese zu cachen.
Coroutine name;//Feste Variable anlegen
name = StartCoroutine(name(argument1));//irgendwo starten
Dann kannst du diese auch stoppen.
StopCoroutine(name);
Zum Unterbrechen in der Mitte geht auch ein yield break;
Es gibt noch einige weitere Sachen, aber so in etwa wird das zumindest in Unity gehandhabt.