Scratchblocks

Worum geht es?

...

Wie kann ich ein Scratchprogramm in einer Wikiseite integrieren?

Um Scratch-Programm-Code auf einer Wikiseite darstellen zu können, muss als erstes %SCRATCHCODE% auf die Seite geschrieben werden. Dies integriert die notwendigen Scripts und Layoutdefinitionen.

Ein Codeblock wird mit <pre class="scratch"> eröffnet und mit </pre> geschlossen.

Beispiel

%SCRATCHCODE%
<pre class="scratch">
Wenn Taste [Leertaste v] gedrückt :: events
setze [c v] auf ((a) + (b))
setze [a v] auf (8)
setze [b v] auf (4)
sage (c) für (2) Sekunden :: looks
</pre>

ergibt:
Wenn Taste [Leertaste v] gedrückt :: events
setze [c v] auf ((a) + (b))
setze [a v] auf (8)
setze [b v] auf (4)
sage (c) für (2) Sekunden :: looks

Online-Generator

http://scratchblocks.github.io/#?style=scratch3

Erklärungen

Liste der deutschen Befehle

// Motion
gehe (10)er-Schritt
drehe dich nach rechts um (15) Grad
drehe dich ↺ um (10) Grad
drehe dich nach links um (15) Grad
drehe dich ↻ um (10) Grad

// no longer supported -- should they be?
drehe dich im Uhrzeigersinn um (15) Grad
drehe dich gegen den Uhrzeigersinn um (15) Grad //

setze Richtung auf (90 v)
drehe dich zu [ v]

gehe zu x: (0) y: (0)
gehe zu [mouse-pointer v]
gleite in (1) sek. zu x: (0) y: (0)

ändere x um (10)
setze x auf (0)
ändere y um (10)
setze y auf (0)

pralle vom Rand ab

setze Drehtyp auf [left-right v]

(x-Position)
(y-Position)
(Richtung)

// Looks
sage [Hello!] für (2) Sek.
sage [Hello!]
denke [Hmm...] für (2) Sek.
denke [Hmm...]

zeige dich
verstecke dich

wechsle zu Kostüm [costume1 v]
nächstes Kostüm
wechsle zu Bühnenbild [backdrop1 v]

ändere [color v]-Effekt um (25)
setze [color v]-Effekt auf (0)
schalte Grafikeffekte aus

ändere Größe um (10)
setze Größe auf (100)%

komme nach vorn
gehe (1) Ebenen nach hinten

(Kostümnummer)
(Bühnenbildname)
(Größe)

// Stage-specific
// Looks
wechsle zu Bühnenbild [backdrop1 v] und warte
nächstes Bühnenbild

(Bühnenbildnummer)

// Sound
spiele Klang [pop v]
spiele Klang [pop v] ganz
stoppe alle Klänge

spiele Schlaginstrument (1 v) für (0.2) Schläge
pausiere (0.2) Schläge

spiele Ton (60 v) für (0.5) Schläge
setze Instrument auf (1 v)

ändere Lautstärke um (-10)
setze Lautstärke auf (100)%
(Lautstärke :: sound)

ändere Tempo um (20)
setze Tempo auf (60) Schläge/Min.
(Tempo)

// Pen
wische Malspuren weg

hinterlasse Abdruck

schalte Stift ein
schalte Stift aus

setze Stiftfarbe auf [#f0f]
ändere Stiftfarbe um (10)
setze Stiftfarbe auf (0)

ändere Farbstärke um (10)
setze Farbstärke auf (50)

ändere Stiftdicke um (1)
setze Stiftdicke auf (1)

// Variables
setze [var v] auf [0]
ändere [var v] um (1)
zeige Variable [var v]
verstecke Variable [var v]

// List
füge [thing] zu [list v] hinzu

lösche (1 v) aus [list v]
füge [thing] als (1 v) in [list v] ein
ersetze Element (1 v) von [list v] durch [thing]

(Element (1 v) von [list v])
(Länge von [list v])
<[list v] enthält [thing]>

zeige Liste [list v]
verstecke Liste [list v]

// Events
Wenn die grüne Flagge angeklickt
Wenn ⚑ angeklickt
Wenn Taste [space v] gedrückt
Wenn ich angeklickt werde
Wenn das Bühnenbild zu [backdrop1 v] wechselt

Wenn [loudness v] > (10)

Wenn ich [message1 v] empfange
sende [message1 v] an alle
sende [message1 v] an alle und warte

// should these aliases be supported, too?
Wenn gf angeklickt
Wenn grüne Flagge angeklickt
Wenn Flagge angeklickt

// Control
warte (1) Sek.

wiederhole (10) mal
ende

wiederhole fortlaufend
ende

falls <> dann
ende

falls <> dann
sonst
ende

warte bis <>

wiederhole bis <>
ende

stoppe [alles v]

stoppe [dieses Skript v]

stoppe [andere Skripte der Figur v]

Wenn ich als Klon entstehe
erzeuge Klon von [mir selbst v]
lösche diesen Klon

// Sensing
<wird [ v] berührt?>
<wird Farbe [#f0f] berührt?>
<Farbe [#f0f] berührt [#f0f]?>
(Entfernung von [ v])

Frage [What's your name?] und warte
(Antwort)

<Taste [space v] gedrückt?>
<Maustaste gedrückt?>
(Maus x-Position)
(Maus y-Position)

(Lautstärke)

(Video [motion v] auf [this sprite v])
schalte Video [on v]
setze Video-Transparenz auf (50)%

(Stoppuhr)
setze Stoppuhr zurück

([x-Position v] von [Sprite1 v])

([minute v] im Moment)
(Tage seit 2000)
(Benutzername)
(user id)

// Operators
(() + ())
(() - ())
(() * ())
(() / ())

(Zufallszahl von (1) bis (10))

<[] < []>
<[] = []>
<[] > []>

<<> und <>>
<<> oder <>>
<nicht <>>

(verbinde [hello ] [world])
(Zeichen (1) von [world])
(Länge von [world])

(() mod ())
(() gerundet)

([Wurzel v] von (9))

// Purple
Wenn [button pressed v]
<Sensor [button pressed v]?>
(Wert von Sensor [slider v])

schalte Motor für (1) Sekunden an
schalte Motor an
schalte Motor aus
setze Motorkraft auf (100)
setze Motorrichtung auf [this way v]

Wenn Abstand < (20)
Wenn Neigung = (1)
(Abstand)
(Neigung)

// Obsolete Scratch 1.4 blocks

// Looks
ziehe Kostüm [costume1 v] an

wechsle zum Hintergrund [background1 v]
nächster Hintergrund
(Hintergrund Nr.)

// Control
falls <>
ende

wiederhole fortlaufend falls <>
ende

stoppe dieses Skript
stoppe alles

// Events
Wenn angeklickt

// Sensing
<laut?>

// Purple
schalte Motor an
schalte Motor aus
schalte Motor für (1) Sekunden an
setze Motorkraft auf (100)
setze Motorrichtung auf [this way v]

Kontakt
Pädagogische Hochschule Schwyz
Zaystrasse 42
CH-6410 Goldau
T +41 41 859 05 90
info@phsz.ch Dies ist ein Wiki des Fachkerns Medien und Informatik der Pädagogischen Hochschule Schwyz. Für Fragen wenden Sie sich bitte an wikiadmin@phsz.ch