Scratch-Sprite bleibt nicht stehen?
Hallo liebe Gutefrage Community,
ich habe in der Schule ein Projekt in Scratch was rellativ viel auf meine Note auswirkt und habe eine, für mich erscheinende, schwierige Frage. Ich würde gerne meinen Informatiklehrer Fragen, dennoch haben wir keine Unterrichtsstunden mehr, da er krankheitsbedingt ausfällt.
Um wieder auf das Thema zurückzukommen, habe ich das Problem, dass eine Sprite nicht stehen bleibt, obwohl sie es soll.
Spiel-Scene:
Die Sprite gleitet in 5 Sekunden zu einer Zufallsposition, wird auf dem weg von einer anderen Sprite berührt und soll dementsprechend für 2 Sekunden stehen bleiben (siehe Bild).
Das Problem ist, dass die Sprite nicht stehenbleibt sondern seinen weg vortsetzt. Ich habe schon vieles ausprobiert und nichts hat funktioniert.
Andere möglichkeiten sorgten dafür, dass sich meine Sprite dreht, was (halbwegs) funktionierte, dennoch nicht gut aussah, da die Sprite nur ein 2D modell hat und somit (ab und zu) auf dem Kopf stand.
Vielen Dank schonmal für die Hilfe : )
Stellt die „Taschenlampe“ im abgebildeten Block die zweite Sprite dar?
Ja genau
Was soll passieren, nachdem die Sprites für zwei Sekunden stehen geblieben sind?
Sie soll weiter laufen
In die gleiche Richtung?
das ist egal. Beides ist in Ordnung.
Wie soll denn das Programm enden? Soll sich die gleiche Aktion ständig wiederholen oder soll das Programm nach der ersten Ausführung stoppen?
es soll sich ständig wiederholen
Darf es nur einen Block pro Figur geben oder dürfen mehrere davon bei einer Figur gleichzeitig laufen?
Mehrere Blöcke
1 Antwort
Hi, ich habe eine Idee, was das Problem sein könnte.
Richtig in deiner Programmierung sind auf jeden Fall die grüne Fahne für den Start ganz am Anfang und die darauffolgende „Wiederhole fortlaufend“-Schleife. Danach folgt die Anweisung, in fünf Sekunden zu einer Zufallsposition zu gleiten. Bis hierhin hast du alles richtig gemacht.
Dann folgt jedoch eine weitere „Wiederhole fortlaufend“-Schleife. Das wird allerdings problematisch, wenn sich deine Aktion ständig wiederholen soll, denn nachdem das Programm in der zweiten „Wiederhole fortlaufend“-Schleife angekommen ist, bleibt es sozusagen in dieser gefangen und hat keine Möglichkeit, wieder zur ersten Schleife zu gelangen, auch wenn die beiden ineinander verschachtelt sind. Es ist außerdem nicht klar, wo genau x- und y-Koordinaten liegen.
Hier habe ich dir meinen Vorschlag als Foto dargestellt. Wenn du möchtest, könntest du das ja mal ausprobieren und mir dann Bescheid geben, ob es den Vorgaben entspricht?

Vielen Lieben dank, dass du dir die Zeit dazu genommen hast. Dein Code hat direkt funktioniert. Übrigens eine super Idee mit dem Rundflug.
Vielen Dank nochmal.