Tamagotchi: Unterschied zwischen den Versionen

Aus microbit - Das Schulbuch
Zur Navigation springen Zur Suche springen
Klemens.frick (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
Klemens.frick (Diskussion | Beiträge)
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
== [[Datei:Icon_story.png|20px|Icon]] Seltsamer Fund ==
== [[Datei:Icon_story.png|20px|Icon]] Seltsamer Fund ==
[[Datei: Tamagotchi.jpg |frame|20px|link=|Tamagotchi [https://commons.wikimedia.org/wiki/File:Gele_tamagotchi,_objectnr_78041.JPG (Quelle: Rotterdam Museum CC BY-SA 3.0)]]]
[[Datei: Tamagotchi.jpg |thumb|500px|link=|Tamagotchi [https://commons.wikimedia.org/wiki/File:Gele_tamagotchi,_objectnr_78041.JPG (Quelle: Rotterdam Museum CC BY-SA 3.0)]]]
Bruno und Ksenia haben in der Wühlkiste ihres Vaters ein sonderbares Ei gefunden. Es hat einen kleinen Bildschirm und drei Knöpfe, in großen Buchstaben steht TAMAGOTCHI drauf.
Bruno und Ksenia haben in der Wühlkiste ihres Vaters ein sonderbares Ei gefunden. Es hat einen kleinen Bildschirm und drei Knöpfe, in großen Buchstaben steht TAMAGOTCHI drauf.
: „Papa, was ist denn das?“ fragt Ksenia.
: „Papa, was ist denn das?“ fragt Ksenia.
Zeile 9: Zeile 9:


== [[Datei:icon_gluehbirne.png|20px|Icon]] Aufgabenstellung ==
== [[Datei:icon_gluehbirne.png|20px|Icon]] Aufgabenstellung ==
* In der micro:bit-Version von die '''''Heiße Kartoffel''''' ist der micro:bit die heiße Kartoffel und fungiert auch als Spielleiter, der das Stopp-Signals gibt.
* Wenn der micro:bit v2 eingeschaltet wird, zeigt er ein neutrales Gesicht und spiel den Hallo-Sound ab.
* Wenn man das Start-Signal gibt (Button A drücken), geht der Zähler los.
* In einer Dauerschleifen (dauerhaft-Schleife) wird der Timer jede Sekunde hinaufgezählt.
* Der micro:bit meldet den Start des Zählers mit einem Symbol auf dem Display.
* Nur wenn man mit Betty spielt (schüttelt) oder sie liebkost (das Logo streichelt) zeigt sie ein fröhliches Gesicht und er Timer wir auf 0 zurückgesetzt.
* Die Startzeit des Zählers soll bei jedem Durchgang anders (zufällig) sein, um es spannender zu machen. 
* Wenn der Timer auf 20 steht, zeigt Betty ein trauriges Gesicht und macht ein trauriges Geräusch.
* Der Zähler zählt dann im Hintergrund (also nicht auf dem micro:bit-Display sichtbar) herunter bis 0. Wichtig ist hier, dass der micro:bit sehr schnell herunterzählen kann, er muss daher bei jedem Schritt eine Sekunde pausiert werden, 1000 ms sind das im Spiel.
* Wenn der Timer auf 30 steht, schläft Betty ein.
* Wenn der Zähler 0 ist, meldet das der micro:bit, mit einem Symbol auf dem Display. Die Person, die den micro:bit zu dem Zeitpunkt hält scheidet aus.
* Wenn der Timer auf 40 steht, wird ein trauriger Sound abgespielt und Betty stirbt.
* Das Programm und auch die erste Runde ist jetzt zu Ende.
* Jetzt kann man Betty nur noch durch den Reset-Button auf der Rückseite des micro:bit v2 wieder zum Leben erwecken.
* Durch Drücken des Button A wird die nächste Runde gestartet, usw. bis nur noch eine Person übrigbleibt.
 


== [[Datei:icon_material.png|20px|Icon]] Materialien ==
== [[Datei:icon_material.png|20px|Icon]] Materialien ==


* BBC micro:bit (mit USB-Kabel und Batterie)
* BBC micro:bit (mit USB-Kabel und Batterie)
* Kartoffel oder Tennisball (um micro:bit und Batterie dran zu binden)


== [[Datei:icon_sanduhr.png|20px|Icon]] Zeitaufwand ==
== [[Datei:icon_sanduhr.png|20px|Icon]] Zeitaufwand ==
Zeile 33: Zeile 32:
== [[Datei:Icon_brain.png|20px|Icon]] Kompetenzen ==
== [[Datei:Icon_brain.png|20px|Icon]] Kompetenzen ==
Du lernst
Du lernst
*Variable erstellen und einen zufälligen Wert zuweisen
* einen einfachen Timer zu erstellen
*Variable in einer Schleife herunterzählen (bei jedem Durchlauf minus 1)
* auf verschiedene Ereignisse (Schütteln, Berührung, lautes Sprechen) zu reagieren
*Ereignisgesteuerte Programmierung. <spoiler text="Hinweis">„wenn Knopf A gedrückt“</spoiler>
* eine Endlosschleife zu erzeugen, in dem das Programm am Ende bleibt und damit ein Programm-Stopp simuliert wird


== [[Datei:Icon faecher.png|20px|Icon]] Unterrichtsfächer ==
== [[Datei:Icon faecher.png|20px|Icon]] Unterrichtsfächer ==
Zeile 47: Zeile 46:
=== Eckpfeiler zur Programmierung ===
=== Eckpfeiler zur Programmierung ===


* Zum Start einer Runde verwende die Ereignissteuerung '''Wenn Knopf A gedrückt''' <spoiler text="Hinweis">
* Wenn der micro:bit v2 eingeschaltet wird, zeigt er ein neutrales Gesicht und spielt den „Hallo“-Sound ab.
<pre id="3">
* Der Timer beginnt bei 0. Beim Start Variable timer auf 0 setzten
input.onButtonPressed(Button.A, function () {
* In der dauerhaft-Schleife wird der Timer jede Sekunde um 1 geändert. Achtung, der micro:bit kann sehr schnell zählen, daher muss nach jeder Änderung von timer eine Sekunde (1000 ms) pausiert werden.
})
* In der dauerhaft-Schleife soll der Timer jedes Mal abgefragt werden:
</pre>
** Wenn timer = 20 (Sekunden): zeige ein trauriges Gesicht, spiele den Soundeffekt traurig an
</spoiler>
** Wenn timer = 30 (Sekunden): zeige müdes Gesicht, spiele den Soundeffekt gähnen ab
* Erstelle eine [[Variable]] '''zaehler''' und speichere eine zufällige Zahl zwischen 5 und 15 darin <spoiler text="Hinweis">
** Wenn timer = 40 (Sekunden): spiele den Soundeffekt geheimnisvoll ab. Schalte den Lautsprecher aus. Erzeuge dann eine Endlosschleife, in der ein Totenkopf dargestellt wird
<pre id="3">
* Reagiere auf Schütteln
input.onButtonPressed(Button.A, function () {
** Setzte timer auf 0
// @highlight
** Zeige das Gesicht mit offenem Mund an
zaehler = randint(5, 15)
** spiele den Soundeffekt kichern ab
})
* Reagiere auf Streicheln des Logos
</pre>
** Setzte timer auf 0
</spoiler>
** Zeige das fröhliche Gesicht
** spiele den Soundeffekt glücklich ab
 


=== Schritt für Schritt zur Lösung ===
=== Schritt für Schritt zur Lösung ===
Das Schritt-für-Schritt Tutorial für dieses Projekt findest du [https://makecode.microbit.org/#tutorial:github:jimsio/dlpl2-tutorials/heisse-kartoffel hier].
Das Schritt-für-Schritt Tutorial für dieses Projekt findest du [https://makecode.microbit.org/#tutorial:github:jimsio/dlpl2-tutorials/tamagotchi-v2 hier].


== [[Datei:presentation.png|20px|Icon]] Präsentation und Reflexion ==
== [[Datei:presentation.png|20px|Icon]] Präsentation und Reflexion ==
Zeile 74: Zeile 75:


<b>Versuche die Antworten auf folgende Fragen durch Experimentieren und Internet-Recherche herauszufinden.</b>
<b>Versuche die Antworten auf folgende Fragen durch Experimentieren und Internet-Recherche herauszufinden.</b>
* Was passiert, wenn man bei jedem Schleifendurchlauf die Pause (1000 ms) weglässt?
* Warum muss immer eine Sekunde in der dauerhaft-Schleife pausiert werden?
*  
* Warum wird beim Tod die Endlosschleife benötigt?
* Betty braucht wirklich viel Aufmerksamkeit. Welche Zeit muss man umstellen, damit sie nicht so schnell stirbt?


== [[Datei:icon_plus.png|20px|Icon]] Weiterentwicklung ==
== [[Datei:icon_plus.png|20px|Icon]] Weiterentwicklung ==
*Grafisches Feedback [[Datei:Iconmonstr-arrow-20re-120.png|20px]] beim Stopp-Signal: Animation im Display statt nur ein Bild
* Ein Kostüm für Betty kannst du dir entweder mit dem 3D-Druck ausdrucken ([https://www.yeggi.com/q/microbit/ Beispiele]) oder mit Papier falten ([https://kidzcourse.com/wp-content/uploads/2020/11/worksheets_microbit-create.zip Beispiel])
*Sound-Feedback (micro:bit v2!) [[Datei:Iconmonstr-arrow-20re-120.png|20px]] spiele beim Stopp-Signal zusätzlich auch eine Sound ab
* Statt unbewegten Gesichtsausdrücken [[Datei:Iconmonstr-arrow-20re-120.png|20px]] Animationen
*Case-Design 3D-Druck [[Datei:Iconmonstr-arrow-20re-120.png|20px]] Schaue im Internet nach micro:bit Cases, die auch die Batterie gut befestigen. 3D-Druck in der Schule oder einer anderen Werkstätte (z.B. Happylab)
* Betty soll auch auf (laute) Sprache/Geräusche reagieren. <spoiler text="Hinweis">
<pre id="3">
let timer = 0
input.onSound(DetectedSound.Loud, function () {
    timer = 0
    basic.showIcon(IconNames.Silly)
    soundExpression.twinkle.playUntilDone()
})
</pre>
</spoiler>


<htmlet>makecode_embed</htmlet>
<htmlet>makecode_embed</htmlet>

Version vom 15. November 2021, 13:33 Uhr

Icon Seltsamer Fund

Tamagotchi (Quelle: Rotterdam Museum CC BY-SA 3.0)

Bruno und Ksenia haben in der Wühlkiste ihres Vaters ein sonderbares Ei gefunden. Es hat einen kleinen Bildschirm und drei Knöpfe, in großen Buchstaben steht TAMAGOTCHI drauf.

„Papa, was ist denn das?“ fragt Ksenia.

„Oh, mein Tamagotchi!“ ruft dieser erstaunt, „Das war ein den 90er-Jahren ein beliebtes Spielzeug, sozusagen ein virtuelles Haustier, um das man sich kümmern musste. Man konnte mit ihm spielen, es füttern und liebkosen, wenn man es jedoch vernachlässigt hat, ist es traurig geworden und irgendwann gestorben. Ich habe auf meines aber immer sehr gut aufgepasst!“

“Sowas möchte ich auch!”, ruft Bruno, „Leider ist jedoch die Batterie ausgelaufen.“

Ksenia grübelt kurz und sagt: „Warte, ich habe doch den neuen micro:bit v2, mit dem bauen wir unser eigenes Haustier! Wir nennen es Betty!“


Icon Aufgabenstellung

  • Wenn der micro:bit v2 eingeschaltet wird, zeigt er ein neutrales Gesicht und spiel den Hallo-Sound ab.
  • In einer Dauerschleifen (dauerhaft-Schleife) wird der Timer jede Sekunde hinaufgezählt.
  • Nur wenn man mit Betty spielt (schüttelt) oder sie liebkost (das Logo streichelt) zeigt sie ein fröhliches Gesicht und er Timer wir auf 0 zurückgesetzt.
  • Wenn der Timer auf 20 steht, zeigt Betty ein trauriges Gesicht und macht ein trauriges Geräusch.
  • Wenn der Timer auf 30 steht, schläft Betty ein.
  • Wenn der Timer auf 40 steht, wird ein trauriger Sound abgespielt und Betty stirbt.
  • Jetzt kann man Betty nur noch durch den Reset-Button auf der Rückseite des micro:bit v2 wieder zum Leben erwecken.


Icon Materialien

  • BBC micro:bit (mit USB-Kabel und Batterie)

Icon Zeitaufwand

  • ca. 1 Schulstunde zur Programmierung
  • ca. 1 Schulstunde für das anschließende Spielen und Experimentieren

Icon Schwierigkeitsgrad

borderlessborderlessborderless

Icon Kompetenzen

Du lernst

  • einen einfachen Timer zu erstellen
  • auf verschiedene Ereignisse (Schütteln, Berührung, lautes Sprechen) zu reagieren
  • eine Endlosschleife zu erzeugen, in dem das Programm am Ende bleibt und damit ein Programm-Stopp simuliert wird

Icon Unterrichtsfächer

Informatik

Icon Tipps und Hilfestellungen

Erforderliche Programmierblöcke

Ereignissteuerung, Schleife, Variablen, Boolean

Eckpfeiler zur Programmierung

  • Wenn der micro:bit v2 eingeschaltet wird, zeigt er ein neutrales Gesicht und spielt den „Hallo“-Sound ab.
  • Der Timer beginnt bei 0. Beim Start Variable timer auf 0 setzten
  • In der dauerhaft-Schleife wird der Timer jede Sekunde um 1 geändert. Achtung, der micro:bit kann sehr schnell zählen, daher muss nach jeder Änderung von timer eine Sekunde (1000 ms) pausiert werden.
  • In der dauerhaft-Schleife soll der Timer jedes Mal abgefragt werden:
    • Wenn timer = 20 (Sekunden): zeige ein trauriges Gesicht, spiele den Soundeffekt traurig an
    • Wenn timer = 30 (Sekunden): zeige müdes Gesicht, spiele den Soundeffekt gähnen ab
    • Wenn timer = 40 (Sekunden): spiele den Soundeffekt geheimnisvoll ab. Schalte den Lautsprecher aus. Erzeuge dann eine Endlosschleife, in der ein Totenkopf dargestellt wird
  • Reagiere auf Schütteln
    • Setzte timer auf 0
    • Zeige das Gesicht mit offenem Mund an
    • spiele den Soundeffekt kichern ab
  • Reagiere auf Streicheln des Logos
    • Setzte timer auf 0
    • Zeige das fröhliche Gesicht
    • spiele den Soundeffekt glücklich ab


Schritt für Schritt zur Lösung

Das Schritt-für-Schritt Tutorial für dieses Projekt findest du hier.

Icon Präsentation und Reflexion

  • Stelle dein Ergebnis vor! Was ist dir besonders gut gelungen?
  • Was hat dir bei der Entwicklung deines Produkts gefallen?
  • Welche Schwierigkeiten hattest du? Wie konntest du diese lösen?
  • Erläutere, wie du dein Produkt programmiert hast!
  • Was war bei dieser Aufgabe interessant für dich?

Versuche die Antworten auf folgende Fragen durch Experimentieren und Internet-Recherche herauszufinden.

  • Warum muss immer eine Sekunde in der dauerhaft-Schleife pausiert werden?
  • Warum wird beim Tod die Endlosschleife benötigt?
  • Betty braucht wirklich viel Aufmerksamkeit. Welche Zeit muss man umstellen, damit sie nicht so schnell stirbt?

Icon Weiterentwicklung

  • Ein Kostüm für Betty kannst du dir entweder mit dem 3D-Druck ausdrucken (Beispiele) oder mit Papier falten (Beispiel)
  • Statt unbewegten Gesichtsausdrücken Animationen
  • Betty soll auch auf (laute) Sprache/Geräusche reagieren. <spoiler text="Hinweis">
let timer = 0
input.onSound(DetectedSound.Loud, function () {
    timer = 0
    basic.showIcon(IconNames.Silly)
    soundExpression.twinkle.playUntilDone()
})

</spoiler>