Aus Das deutschsprachige Scratch-Wiki
Es ist bestimmt schon so einigen Scratchern beim Programmieren passiert, dass ein Projekt nicht so ganz läuft, wie es eigentlich sollte. Da muss man eben den dafür verantwortlichen Fehler finden, was manchmal etwas dauert. Hier sind einige Tipps gegen häufige Fehler beim Scratchen.
Häufig gemachte Fehler
Schleife "wiederhole fortlaufend" vergessen
Oft muss die Endlos-Schelife wiederhole fortlaufend gesetzt werden, auch wenn im Skript bereits andere Schleifen wie z. B. falls < >, dann vorkommen.
wiederhole fortlaufend end
Skripte werden gestoppt
Wird ein bestimmtes Skript überhaupt nicht ausgeführt, sollte überprüft werden, ob der "Stoppe-Block" verwendet wurde.
stoppe [andere Skripte der Figur v] stoppe [dieses Skript v]
Antwort wurde geändert
Wenn in den Skripten der Variablen-Block Antwort verwendet wird, muss beachtet werden, dass dieser stets die letzte Antwort annimmt und der Wert somit durch neue Antworten geändert wird.
frage [] und warte (Antwort)
Mikrofon ist deaktiviert
Bei Verwendung des Blocks Lautstärke der Kategorie Fühlen sollte das Mikrofon aktiviert sein, sonst ist dessen Wert -1
.
(Lautstärke)
Webcam ist deaktiviert
Damit die Webcam-Blöcke korrekt verwendet werden können, sollte die Webcam auch nicht deaktiviert sein und sollte überhaupt vorhanden sein, da manche Computer nicht über eine solche verfügen.
(Video- [Bewegung v] von [Figur v]) schalte Video [an v] setze Video-Transparenz auf (50)%
Benutzer ist nicht angemeldet
Der Variablen-Block Benutzername erhält als Wert nur dann den Benutzernamen, wenn der Benutzer auch online angemeldet ist.
Benutzername
Drehtyp ist falsch gewählt
Dreht sich eine Figur nicht wie gewünscht, sollte der Drehtyp überprüft werden. Geändert werden kann er in den Einstellungen der Figur oder in den Skripten.
drehe dich nach rechts um (15) Grad drehe dich nach links um (15) Grad setze Richtung auf (90 v) Grad drehe dich zu [ v] setze Drehtyp auf [links-rechts v]
Element wurde umbenannt
Bei der Umbenennung eines Elements in einem Scratch kann es sein, dass auch die Skripte entsprechend verändert werden müssen.
Wenn das Bühnenbild zu [Hintergrund v] wechselt wechsle zu Kostüm [Kostüm v] wechsle zu Bühnenbild [Hintergrund v] wechsle zu Bühnenbild [Hintergrund v] und warte
Falsche Sprache bei der Übersetzungserweiterung
Wenn man gerade sein Projekt am mehrsprachig machen mit der Übersetzungserweiterung ist, dann kann es sein, dass der eingegebene Text anstatt zu Englisch auf einmal nach Französisch übersetzt wird. In dem Fall sollte man bitte IMMER die folgenden Blöcke überprüfen, ob bei diesen auch wirklich die richtige Übersetzungssprache eingestellt ist. Ansonsten funktioniert das Projekt leider nicht mehr richtig:
(übersetze [] nach [Englisch v] :: extension)
Tipps zum Finden der Fehler
Prüfe die Variablen!
Wenn die Spielfiguren in Scratch nicht das machen, was sie deiner Meinung nach doch eigentlich tun müssten, liegt das häufig an den von dir erstellten Variablen. Prüfe, wann die Variablen auf welchen Wert gesetzt werden und sehe nach, wann dieser Wert für was verwendet wird.
(Variable) setze [Variable v] auf [0] ändere [Variable v] um (1)
Prüfe die Steuerung!
Passe auch darauf auf, dass du die Steuerungsklammern richtig verschachtelst! Kommen die Klammern hintereinander oder ineinander? Vielleicht hast du auch vergessen, dass die Skripte fortlaufend wiederholt werden müssen.
falls <>, dann end falls <>, dann sonst end wiederhole (10) mal end wiederhole bis <> end wiederhole fortlaufend end
Prüfe die Nachrichten!
Damit Figuren im Projekt anderen sagen können, was sie wann machen sollen, gibt es das Skript sende Nachricht an alle (und warte). Sollte ein Problem im Projekt vorliegen, dass eine Figur nicht das ausführt, was sie sollte, dann prüfe, ob die entsprechenden Nachrichten durch die Skripte auch wirklich gesendet werden und wann genau.
Wenn ich [Nachricht v] empfange sende [Nachricht v] an alle sende [Nachricht v] an alle und warte
Prüfe die Operatoren!
Es könnte jedoch auch an den Operatoren liegen. Achte darauf, dass sie korrekt verschachtelt sind! Bei falscher Verschachtelung kann es sein, dass sie andere Dinge ergeben. Vielleicht sind sie zwar in der richtigen Reihenfolge, müssen aber anders eingeschachtelt werden.
<> und <> <> oder <> nicht <>
Prüfe die Wartezeiten!
Auch häufig wird der Fehler gemacht, dass die Wartezeiten nicht beachtet werden. Nicht von den Spielfiguren, sondern in deinen Skripten! Einige Blöcke gibt es in der Blockpalette nämlich doppelt, nur dass bei einem von denen ein Anhang von und warte folgt. Prüfe, ob die Skripte erst fortgesetzt werden sollen, wenn bestimmte andere Skripte ausgeführt werden (und warte), oder ob sie gleich weiterhin ausgeführt werden sollen (ohne und warte).
wechsle zu Bühnenbild [Bühnenbild v] wechsle zu Bühnenbild [Bühnenbild v] und warte spiele Klang [Audio v] spiele Klang [Audio v] ganz sende [Nachricht v] an alle sende [Nachricht v] an alle und warte
[wiki=de:Häufig gemachte Fehler]Häufig gemachte Fehler[/wiki]