Lernpfad:Einführung in Scratch 3/7
Steuerung des Schlägers
Wähle nun die Schläger-Figur aus, damit dessen Skriptbereich rechts angezeigt wird. Dieser sollte noch leer sein. Entwickle nun einen Block aus Anweisungen bzw. einen Algorithmus wie zuvor für den Ball. Am Ende soll das Skript so aussehen:
Wenn die grüne Flagge angeklickt wiederhole fortlaufend gehe zu x: (-220) y: (Maus y-Position) end
(Maus y-Position)
in der Kategorie Fühlen.
Wenn du nun auf die grüne Flagge () klickst, dann kannst du den Schläger mit der Maus nach oben und unten bewegen, aber nicht nach links oder rechts.
Allerdings prallt der Ball noch nicht von ihm ab, sondern fliegt durch ihn hindurch. Das ändern wir im nächsten Schritt.
Scratch verstehen
Das Koordinatensystem
Die Bühne von Scratch benutzt ein Koordinatensytem, um Figuren genau platzieren zu können. Jede Figur hat eine x- und eine y-Koordinate. Genaueres konntest du schon in Schritt 2 unter Scratch verstehen erfahren.
Im Algorithmus oben wird nur die x-Koordinate verändert, die die Position in der Horizontalen bestimmt. Die y-Koordinate bleibt fest eingestellt. Versuch sie doch mal auf einen anderen Wert als -160
zu verändern und beobachte, was passiert.
Tastatursteuerung und Schleifen
Anstatt mit der Maus könnte man den Schläger auch mit der Tastatur steuern. Zum Beispiel mit den Tasten ← und →. Dazu könnte man folgende Skripte dem Schläger hinzufügen.
Wenn Taste [Pfeil nach rechts v] gedrückt ändere x um (10) Wenn Taste [Pfeil nach links v] gedrückt ändere x um (-10)
Bei jedem Tastendruck wird nun die x-Koordinate des Schlägers verändert. Entweder nach rechts (positive Zahl) oder nach links (negative Zahl). Wie weit (bzw. schnell) sich der Schläger bewegt, wird durch die größe der Zahl bestimmt.
Schleifen in Scratch
Du hast vielleicht bemerkt, dass die Steuerung mit Tasten viel ruckeliger ist, als mit der Maus. Der Algorithmus für die Maussteuerung oben benutzt etwas, dass sich Schleife nennt: wiederhole fortlaufend :: stack
.
In Scratch benötigt man häufig Schleifen, wenn etwas kontinuierlich passieren soll. Zum Beispiel die Bewegung des Balls in Schritt 5. Mit Hilfe von Schleifen können wir auch die Bewegung der Schläger viel feiner gestalten. Lösche dafür die eben erstellten Skripte zur Tastensteuerung und erstelle folgenden Algorithmus:
Wenn die grüne Flagge angeklickt wiederhole fortlaufend falls <Taste [Pfeil nach rechts v] gedrückt?> dann ändere x um (10) end falls <Taste [Pfeil nach links v] gedrückt?> dann ändere x um (-10) end end
wiederhole fortlaufend :: stack
Schleifen hat. Ansonsten wird es langsam und es kann zu unvorhersehbaren Fehlern kommen. Oft kannst du die Blöcke mehrerer Schleifen einer Figur auch einfach in einer Schleife zusammenfassen. So wie oben die Steuerung für hoch und runter in nur einer Schleife stehen.