8.582
Bearbeitungen
Jneug (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Jneug (Diskussion | Beiträge) |
||
| 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 | ||