Die Ausführungen der
vorherigen Seiten über Programmfenster werden hier weitergeführt. Das letzte Lernspiel mit einer analogen Uhr wird jetzt erweitert. Beim Aufruf des script werden zufällige Zahlen für Stunden und Minuten für zwei Uhren erzeugt. Die Aufgabenstellung wird angezeigt: |
Es gibt eine Schaltfläche um das Ergebnis anzuzeigen |
Nun kann man entscheiden ob man eine zufällige neue Aufgabe haben will
oder das Spiel beenden will. Das script wird wieder in dem Ordner ~/Bla abgelegt: |
nano ~/Bla/spielUHRdifferenz.sh |
Eingabe in den Editor |
#!/bin/bash Uu=$(whoami) aA=9 while (( $aA == 9 )) do stN=$(echo $(($RANDOM % 12)) ) miN=$(echo $(($RANDOM % 60)) ) miND=$(echo $(($RANDOM % 60)) ) aD=$(echo -e "1\n1\n2" | sort -R | head -n 1) if (( aD == 1 )) ; then stND=$stN else stND=$(echo $(($RANDOM % 12)) ) fi convert \( ~/Bla/dea64-10.png \( ~/Bla/dea64-11.png -background none -rotate $(( stN*30+miN/2 )) \) -gravity Center -composite \( ~/Bla/dea64-12.png -background none -rotate $(( miN*6 )) \) -gravity Center -composite \) \( -size 6x300 canvas:#353535 \) \( ~/Bla/dea64-10.png \( ~/Bla/dea64-11.png -background none -rotate $(( stND*30+miND/2 )) \) -gravity Center -composite \( ~/Bla/dea64-12.png -background none -rotate $(( miND*6 )) \) -gravity Center -composite \) +append ~/Bla/tmpUHRtmp.png sleep 0.1s; GTK_THEME=Adwaita-dark yad --title "haq" --geometry=606x480+100+100 --undecorated --image-on-top --image /home/$Uu/Bla/tmpUHRtmp.png --borders=4 --on-top --button='!/home/'"$Uu"'/Bla/dea65-03.png!BEENDEN':6 --button='!/home/'"$Uu"'/Bla/dea65-04.png!ERGEBNIS':9 --justify=center --text-info --back='#D96868' --fore=black --fontname=" Monospace bold 20" <<<"$( echo -e "Zeitraum 0 bis 12 Uhr.\nBestimme die Differenz zwischen\nbeiden Uhrzeiten in Minuten." )" Az=$? if (( Az == 6 )) ; then exit fi diF=$( echo $(( stN*60+miN - stND*60-miND )) | sed 's/-//' ) erG=$( echo -e "Die Differenz zwischen beiden Uhrzeiten\nbeträgt $diF Minuten\noder $(( diF/60 )) Stunden und $(( diF%60 )) Minuten") GTK_THEME=Adwaita-dark yad --title "haq" --geometry=606x480+100+100 --undecorated --image-on-top --image /home/$Uu/Bla/tmpUHRtmp.png --borders=4 --on-top --button='!/home/'"$Uu"'/Bla/dea65-03.png!BEENDEN':6 --button='!/home/'"$Uu"'/Bla/dea65-02.png!WEITERSPIELEN':9 --justify=center --text-info --back='#7F9FF0' --fore=black --fontname=" Monospace bold 18" <<<"$erG" aA=$? done |
Nun muß man das script ausführbar machen. |
chmod +x ~/Bla/spielUHRdifferenz.sh |
Die yad-Fenster verwenden die unten gezeigten Bild-Dateien die Sie auf Ihren Computer kopieren müssen, sofern dies nicht schon für das vorhergehende Spiel erfolgt ist. Diese Bild-Dateien müssen in dem Ordner liegen auf den das script verweist. Hier ist es der Ordner ~/Bla. Ansonsten müssen Sie die Pfade anpassen. |
Es wird in dem Ordner ~/Bla ein temporäres Bild tmpUHRtmp.png erzeugt. Dieses wird bei jedem Klicken auf neue Uhrzeiten überschrieben und bleibt am Ende des Spieles noch übrig. Falls es stört kann man im script am Schluß noch eine Zeile anfügen um dieses Bild zu löschen. |