Lernpfad:Scratch für Fortgeschrittene/wiederhole fortlaufend richtig nutzen: Unterschied zwischen den Versionen

Keine Bearbeitungszusammenfassung
Zeile 44: Zeile 44:


=== Beispiele ===
=== Beispiele ===
Angenommen du programmierst ein Spiel in Scratch, bei dem eine Figur (zum Beispiel ein Ball) über die Bühne fliegt und von den Rändern abprallt. Dazu werden die Befehle <sb>gehe (10)er-Schritt</sb> und <sb>pralle vom Rand ab</sb> endlos wiederholt. Parallel laufen andere Skripte ab, die die Punkte des Spielers in einer {{Pfad|Informationen speichern und abrufen|Variablen}} zählen. (Wann die Punkte hochgezählt werden ist für dieses Beispiel nicht wichtig.) Sobald der Spieler vier Punkte hat ist das Spiel beendet und die Schleife zur Bewegung des Balls kann beendet werden.
Die erste Möglichkeit ist es, innerhalb der Schleife zu prüfen, ob der Spieler schon vier Punkte hat, und wenn die Bedingung <code>wahr</code> ist, die Anweisung <sb>stoppe [dieses Skript v]</sb> aufzurufen:
<scratchblocks>
<scratchblocks>
wenn die grüne Flagge angeklickt
wenn die grüne Flagge angeklickt
Zeile 56: Zeile 59:
</scratchblocks>
</scratchblocks>


Gibt es noch weitere Schleifen in der Figur, dann kann <sb>stoppe [andere Skripte der Figur v]</sb> benutzt werden, um alle gleichzeitig zu beenden. Der Aufruf dieser Anweisung darf aber nicht innerhalb der Schleife erfolgen. Er könnte zum Beispiel durch eine {{Pfad|Nachrichten zwischen Figuren versenden|durch eine Nachricht}} ausgelöst werden:
<scratchblocks>
<scratchblocks>
wenn die grüne Flagge angeklickt
wenn die grüne Flagge angeklickt