Discuss Scratch

AsterixDavid
Scratcher
100+ posts

Tutorial: Galgenmännchen (Hang-Man)

Hallo,
So habe ich ein Galgenmännchen-Spiel für den Computer programmiert. Galgenmännchen oder Hang-Man funktioniert so: Der Computer sucht sich ein Wort aus und schreibt nur den Anfangsbuchstaben und die Länge des Wortes auf. Die Spieler raten Buchstaben. Wenn der Buchstabe im Wort vorkommt, Wird der Buchstabe an die richtige Stelle im Wort hinzugefügt. Wenn nicht, baut sich Fehler für Fehler der Hügel mit dem Galgen und Dem Galgenmännchen auf.
Als erstes braucht man diese Variablen:

(Leben)
(Lösung)
(Wort)
(Zähler1)
(Zähler2)

sichtbar soll nur die Variable “Lösung” sein.
Dann erstellt man diese Listen:

(Wort :: list)
(Wörter :: list)

In die Liste “Wörter” schreibt man alle Wörter, die der Computer auswählen soll.
Dann codiert man im Bühnen-Bereich das hier:

Wenn die grüne Flagge angeklickt
setze [Lives] auf [10]
setze [Wort] auf (Element (Zufallszahl von (1) bis (Länge von [Wörter] :: list) :: operators) von [Wörter] :: list)
lösche alles aus [Wort] :: list
füge (Zeichen (1) von (Wort :: variables)) zu [Wort] hinzu
wiederhole ((Länge von (Wort :: variables)) - (1)) mal
füge [ _] zu [Wort] hinzu // Das heißt, er fügt das ein: ( _) Abstand + Strich unten
end
Setup :: custom // Erstelle einen eigenen Block mit dem Namen "Setup"
wiederhole bis <(Lösung :: variables) = (Wort :: variables)>
frage [Buchstabe:] und warte // Spieler wird aufgefordert, einen Buchstaben einzugeben.
falls <(Wort :: variables) enthält (Antwort)? :: operators> dann
Durchsuchen :: custom // Erstelle einen neuen, eigenen Block und nenne ihn "Durchsuchen"
Setup :: custom
sonst
ändere [Lives] um (-1)
end
end

Definiere Setup
setze [ Lösung] auf []
setze [ Zähler1] auf [1]
wiederhole (Länge von [ Wort] :: list) mal
setze [ Lösung] auf (verbinde (Lösung) und (Element (Zähler1) von [list v] :: list) :: operators)
ändere [ Zähler1] um (1)
end

Definiere Durchsuchen
setze [ Zähler2] auf [1]
wiederhole (Länge von [Wort] :: list) mal
falls <(Zeichen (Zähler2 :: variables) von (Wort :: variables)) = (Antwort)> dann
ersetze Element (Zähler2) von [Wort] durch (Zeichen (Zähler2 :: variables) von (Wort :: variables))
end
ändere [Zähler2] um (1)
end

Nun erstelle eine Figur und nenne sie “Galgen”
Zeichne einen Galgen mit Hügel und Figur und nenne das Kostüm “1”.
Dulpliziere das Kostüm durch Rechtsklick der Maus und nehme etwas vom Strichmännchen weg.
Nenne das Kostüm “2”
Wiederhole das solange, bis du bei einem leeren Kostüm ankommst. Die Kostüme müssten nun nach Zahlen sortiert sein: oben 1 und unten die letzte Zahl. Bei mir war die letzte Zahl des Kostüms “10”, deshalb steht ganz oben im Code des Bühnenbilds:
setze [ Lives] auf [10]
wenn du eine andere Zahl hast, dann musst du die Variable “Lives” nicht auf “10”, sondern auf deine Zahl setzten!
setze [ Lives] auf [Nummer von letztem Kostüm]

füge dann diesen Code der Galgen-Figur hinzu:

Wenn die grüne Flagge angeklickt
wiederhole fortlaufend
wechsle zu Kostüm (Lives :: variables)
end

Ein Beispiel-Projekt: Hier
Wenn ihr fertig seid, wäre es toll wenn ihr den Link in die Kommentare schickt.

Viele Grüße,
AsterixDavid

Last edited by AsterixDavid (July 22, 2020 05:40:27)


Folge mir auf meinem Profil!
Mein bestes Spiel: Agent One || Mobile Scrolling Adventure
Meine neueste Animation: Bike || An Animation
Mein neuester Platformer: Detonation || A mobile game


Atten007
Scratcher
100+ posts

Tutorial: Galgenmännchen (Hang-Man)

Habs nachprogrammiert, hier lässt es sich finden: https://scratch.mit.edu/projects/413012668/. Hast du Lust, auch mal einen Wiki-Artikel über dieses Tutorial zu schreiben? Dann mach das mal, denn wir warten nämlich dort schon (sehr lange) auf deine Edits.
MT_3000
Scratcher
40 posts

Tutorial: Galgenmännchen (Hang-Man)

Warum kommentierst du mein profil damit?
Atten007
Scratcher
100+ posts

Tutorial: Galgenmännchen (Hang-Man)

MT_3000 wrote:

Warum kommentierst du mein profil damit?
Weil er dir sein neues Tutorial zeigen wollte.
Ron2406
New to Scratch
1 post

Tutorial: Galgenmännchen (Hang-Man)

Hallo in die Runde,
ich bin noch relativ neu auf dem Gebiet, und würde gerne verstehen wo kommen die dunkelbraunen Bausteine im dritten Segment, “Element” in dunkelbraun her.
Oder direkt darunter der Block “lösche alles aus Wort” ebenfalls in dunkelbraun. Mir leuchtet es ein wenn ich einen neue Anweisung definiere, dass ein Quellcode was der Block oder die Ausführung zu machen hat, hinterlegt sein muss. Wie funktionier es?
Ich hoffe es war nicht zu konfus
Ich danke Euch,
v.G. in die Runde
Fyndora
Scratcher
1000+ posts

Tutorial: Galgenmännchen (Hang-Man)

Ron2406 wrote:

Hallo in die Runde,
ich bin noch relativ neu auf dem Gebiet, und würde gerne verstehen wo kommen die dunkelbraunen Bausteine im dritten Segment, “Element” in dunkelbraun her.
Oder direkt darunter der Block “lösche alles aus Wort” ebenfalls in dunkelbraun. Mir leuchtet es ein wenn ich einen neue Anweisung definiere, dass ein Quellcode was der Block oder die Ausführung zu machen hat, hinterlegt sein muss. Wie funktionier es?
Ich hoffe es war nicht zu konfus
Ich danke Euch,
v.G. in die Runde

Hallo und herzlich willkommen!
Das sind die Listen-Blöcke. Du findest sie im Editor bei den Variablen. Dort steht “Neue Liste”, sobald du eine erstellst, erscheinen die ganzen Blöcke.



Powered by DjangoBB