Zur Haupt­na­vi­ga­ti­on sprin­gen [Alt]+[0] Zum Sei­ten­in­halt sprin­gen [Alt]+[1]

Hin­wei­se zum Un­ter­richts­gang

In der heu­ti­gen Zeit sind Schü­le­rin­nen und Schü­ler jeden Al­ters be­geis­tert von Com­pu­ter­spie­len. Die­ser Un­ter­richts­gang baut auf die­sem In­ter­es­se auf und möch­te die Schü­le­rin­nen und Schü­ler in die Si­tua­ti­on eines Spie­leent­wick­lers ver­set­zen. Die Wahl fiel dabei auf ein Spiel in An­leh­nung zu dem Han­dy­spiel Cros­sy Road1, das im Jahr 2014 er­schien und der Ka­te­go­rie „Jump 'n' Run“ zu­ge­ord­net wird. In den acht­zi­ger Jah­ren gab es eine frü­he­re Va­ri­an­te mit Namen Frog­ger2.

Es geht darum, eine Spiel­fi­gur über eine stark be­fah­re­ne Stra­ße zu füh­ren oder sie einen Fluss auf vor­bei­schwim­men­den Bau­stäm­men über­que­ren zu las­sen. So­bald die Figur von einem Auto „an­ge­fah­ren“ wird oder im Fluss „er­trinkt“, endet das Spiel. In Scratch wird dazu die Katze mit den Pfeil­tas­ten ge­steu­ert. Fahr­zeu­ge und Baum­stäm­me sind je­weils ei­ge­ne Ob­jek­te, die sich von selbst, auch mit ver­än­der­ba­rer Ge­schwin­dig­keit, be­we­gen. Für die Be­we­gung und Steue­rung kom­men so alle al­go­rith­mi­schen Grund­bau­stei­ne zum Zuge; Va­ria­blen wer­den zur Spei­che­rung von Fahr­zeug­ge­schwin­dig­kei­ten und Punk­te­stand ein­ge­setzt. Das Spiel lässt ge­nü­gend Raum, um es mit ei­ge­nen Ideen zu er­wei­tern.

Die Schü­le­rin­nen und Schü­ler er­stel­len ihr Pro­jekt an­hand von Ar­beits­blät­tern, die sie sich der Reihe nach ab­ho­len. Mit­hil­fe eines Lauf­zet­tels be­hal­ten sie den Über­blick über die be­ar­bei­te­ten Auf­trä­ge. Zu Be­ginn soll­te der Leh­rer si­cher stel­len, dass die Schü­le­rin­nen und Schü­ler die Pro­gram­me wie­der­auf­find­bar ab­spei­chern kön­nen. Hier­bei gibt es einen Un­ter­schied im Datei-Menü zwi­schen dem Off­line-Edi­tor (in der Ab­bil­dung links) und der On­line-Ver­si­on.

Speichern

Spei­chern von Pro­gram­men off­line

Herunterladen

Spei­chern von Pro­gram­men on­line

Der Un­ter­richts­gang er­streckt sich über 12 Un­ter­richts­stun­den und ist ge­glie­dert in die Teile A bis H. Teil A be­ginnt mit dem Ken­nen­ler­nen der Pro­gram­mier­um­ge­bung. Teil B stellt ein­fa­che Auf­ga­ben zur Be­we­gung der Spiel­fi­gur mit ein­zel­nen An­wei­sun­gen und Se­quen­zen. In Teil C soll die Figur mit den Pfeil­tas­ten ge­steu­ert wer­den. In Scratch gibt es dazu zwei prin­zi­pi­ell ver­schie­de­ne Mög­lich­kei­ten: Ob eine Taste ge­drückt wurde, kann mit­hil­fe eines Er­eig­nis­ses oder einer Be­din­gung in einer Schlei­fe fest­ge­stellt wer­den. Bei ­der Steue­rung durch Er­eig­nis­se ist jeder Taste ein ei­ge­nes Skript zu­ge­ord­net. Im an­de­ren Fall wer­den die Tas­ten in einer End­los­schlei­fe mit­hil­fe einer Ver­zwei­gung und einer Be­din­gung aus dem Block­be­reich „Füh­len“ ab­ge­fragt. Die Ab­bil­dung stellt die bei­den Va­ri­an­ten ein­an­der ge­gen­über. Beide Lö­sun­gen be­wir­ken das­sel­be, es gibt je­doch einen spür­ba­ren tech­ni­schen Un­ter­schied bei der Aus­füh­rung: Die Er­eig­nis­steue­rung re­agiert mit leich­ter Ver­zö­ge­rung im Ver­gleich zur Ab­fra­ge­schlei­fe. Letz­te­re kann na­tür­lich erst dann ein­ge­setzt wer­den, wenn Schlei­fe, Ver­zwei­gung und Be­din­gung be­kannt sind. In die­sem Un­ter­richts­gang ist dies in Teil G zum Än­dern der Ge­schwin­dig­keit vor­ge­se­hen. Als frei­wil­li­ge Zu­satz­auf­ga­be kön­nen da­nach die al­ter­na­ti­ven Me­tho­den zur Steue­rung der Figur bzw. der Ge­schwin­dig­keit aus­pro­biert wer­den.

Bewegungssteuerung durch Ereignisse

Be­we­gungs­steue­rung durch Er­eig­nis­se

Bewegungssteuerung durch Schleife

Be­we­gungs­steue­rung durch Schlei­fe

Be­wegt man die Katze mit der Pfeil­tas­te nach links, läuft sie zu­nächst rück­wärts. Damit die Figur immer in die Rich­tung blickt, in die sie sich be­wegt, wird in Teil C ein neues Kos­tüm er­stellt. Dies ge­schieht im Zei­chen­pro­gramm für Kos­tü­me mit dem Knopf „Links und Rechts ver­tau­schen“. In der Tas­ten­steue­rung muss dann der Kos­tüm­wech­sel etwa wie folgt ein­ge­baut wer­den.

Änderung der Blickrichtung mit Kostümwechsel

Än­de­rung der Blick­rich­tung mit Kos­tüm­wech­sel
Scratch-Screen­shot li­zen­ziert von Lifel­ong-Kin­der­gar­ten-Group des MIT [CC BY-SA 2.0]

Al­ter­na­tiv kann man das Ori­gi­nal­kos­tüm bei­be­hal­ten, wenn man die Rich­tung der Figur mit den ent­spre­chen­den An­wei­sun­gen setzt.

Änderung der Blickrichtung ohne Kostümwechsel

Än­de­rung der Blick­rich­tung ohne Kos­tüm­wech­sel
Scratch-Screen­shot li­zen­ziert von Lifel­ong-Kin­der­gar­ten-Group des MIT [CC BY-SA 2.0]

Damit die Figur beim nach Links gehen dann nicht auf dem Kopf steht, muss man noch ihren Dreh­mo­dus ein­stel­len. Dazu lässt man die An­wei­sung zum Set­zen des Dreh­typs im Skript der Figur ein­mal aus­füh­ren. Dies geht al­ler­dings nicht in Scratch 1.4. Man kann statt­des­sen den Dreh­mo­dus auch ma­nu­ell in den Ei­gen­schaf­ten der Figur än­dern.

Methoden zum Setzen des Drehtyps
Methoden zum Setzen des Drehtyps

Me­tho­den zum Set­zen des Dreh­typs
Scratch-Screen­shots von Lifel­ong-Kin­der­gar­ten-Group des MIT [CC BY-SA 2.0]

Teil D be­han­delt die Ge­stal­tung der Bühne durch Zeich­nen einer Stra­ße und das An­le­gen neuer Ob­jek­te in Form eines Autos. Dies wird in Teil E fort­ge­führt, wo das Auto so pro­gram­miert wird, dass es sich von selbst über die Bühne be­wegt. Dazu wer­den Schlei­fen ein­ge­führt.

Die Schleifen von Scratch

Die Schlei­fen von Scratch
Scratch-Screen­shot li­zen­ziert von Lifel­ong-Kin­der­gar­ten-Group des MIT [CC BY-SA 2.0]

In Scratch gibt es drei Arten von Wie­der­ho­lun­gen: Zähl­schlei­fe, End­los­schlei­fe und Schlei­fe mit Be­din­gung.3 Die drit­te Va­ri­an­te über­prüft zu­erst, ob die Be­din­gung zu­trifft. Falls ja, wird das In­ne­re der Schlei­fe (der so­ge­nann­te Schlei­fen­rumpf) nicht aus­ge­führt und die Schlei­fe ist damit be­en­det. Damit un­ter­schei­det sich diese Scratch-Schlei­fe von der in vie­len Pro­gram­mier­spra­chen vor­han­de­nen while-Schlei­fe. Diese hat die Form „while Be­din­gung do Schlei­fen­rumpf “, d.h., so­lan­ge die Be­din­gung zu­trifft, wird der Schlei­fen­rumpf wie­der­holt. Die Scratch-Schlei­fe mit Be­din­gung als while-Schlei­fe for­mu­liert lau­tet also while not(Be­din­gung) do Schlei­fen­rumpf.

Zur wei­te­ren Steue­rung des selbst­fah­ren­den Autos wird in Teil E auch die Ver­zwei­gung ein­ge­führt, die es in Scratch, wie in den meis­ten Pro­gram­mier­spra­chen, ohne und mit Al­ter­na­ti­ve gibt. Mit der Ver­zwei­gung soll be­wirkt wer­den, dass das Auto nach Er­rei­chen des Ran­des ver­schwin­det und auf der an­de­ren Seit der Bühne wie­der auf­taucht. Teil E ent­hält als Ein­schub ein Ar­beits­blatt (Teil F) mit Auf­ga­ben, in denen die An­wei­sungs­blö­cke für den Mal­stift ver­wen­det wer­den, um geo­me­tri­sche Fi­gu­ren zeich­nen zu las­sen. Mit die­sen Auf­ga­ben wird auch die Fä­hig­keit ge­för­dert, Pro­gram­me zu lesen und ge­dank­lich nach­zu­voll­zie­hen.

Teil G schließ­lich ist der Ver­wen­dung von Va­ria­blen ge­wid­met. Die Ge­schwin­dig­keit des Autos soll in einer Va­ria­ble ge­spei­chert und mit­tels Tas­ta­tur­ein­ga­be er­höht bzw. er­nied­rigt wer­den. Damit die Ge­schwin­dig­keit be­stimm­te Werte nicht über- bzw. un­ter­schrei­tet, soll die Än­de­rung nicht immer wirk­sam wer­den. Dazu wer­den die lo­gi­schen Ope­ra­to­ren ein­ge­führt. Sie sind in einer Tas­ten­steue­rung mit End­los­schlei­fe zu ver­wen­den.

Mit Teil H ent­steht die erste Stufe des fer­ti­gen Spiels. Wenn die Katze das Auto be­rührt, soll es ste­hen blei­ben. Es fol­gen wei­te­re Auf­ga­ben zur Er­wei­te­rung mit un­ter­schied­li­chem Schwie­rig­keits­grad. Sie kön­nen un­ab­hän­gig von­ein­an­der be­ar­bei­tet wer­den.

In die­sem Un­ter­richts­gang nicht ver­wen­det wur­den die An­wei­sun­gen aus dem Block­be­reich „Klang“. Er bie­tet na­tür­lich wei­te­re Mit­tel, das Spiel in­ter­es­san­ter zu ma­chen. Meis­tens kom­men die Schü­le­rin­nen und Schü­ler von selbst auf die Idee, Klän­ge ein­zu­set­zen. Es emp­fiehlt sich al­ler­dings, eine in­ten­si­ve Nut­zung von Klän­gen nur zu ge­stat­ten, wenn alle Com­pu­ter mit Kopf­hö­rern aus­ge­stat­tet sind.

 

1 Seite „Cros­sy Road“. URL: https://​de.​wi­ki­pe­dia.​org/​wiki/​Cros­sy_​Road. (Ab­ge­ru­fen: 2. Ja­nu­ar 2017)

2 Seite „Frog­ger“. URL: https://​de.​wi­ki­pe­dia.​org/​wiki/​Frog­ger. (Ab­ge­ru­fen: 2. Ja­nu­ar 2017)

3 Die in Scratch 1.4 vor­han­de­ne End­los­schlei­fe mit Be­din­gung „wie­der­ho­le fort­lau­fend, falls …“ gibt es in Ver­si­on 2.0 nicht mehr.

 

Hin­ter­grund zum Un­ter­richts­gang: Her­un­ter­la­den [odt][403 KB]

Hin­ter­grund zum Un­ter­richts­gang: Her­un­ter­la­den [pdf][418 KB KB]

 

Wei­ter zu Struk­to­gram­me