Advertisement
dariahinz

Untitled

Jun 12th, 2017
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.95 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. gra="Quiz"
  4. rozmiarX="400"
  5. rozmiarY="400"
  6.  
  7. zenity --info --title $gra --width $rozmiarX --height $rozmiarY --text "\n\n\n\n\nWitaj w Quizowaniu! Za chwile zacznie sie rozgrywka. W puli znajduje sie 12 pytan i tylko jedna odpowiedz jest poprawna. Zadaniem jest odpowiedzenie na jak nawieksza ilosc punktow i zgarniecie duzej wygranej. Powodzenia!" --ok-label "Rozpocznij quiz"
  8.  
  9. # funkcja generuje tekst i umieszcza go w zmiennej $informacja
  10. function wyswietlanie_wyniku(){
  11. case "$1" in
  12. "glowny" )
  13. informacja="Gracz: $imie\n\nWyniki kategorii:\n"
  14. informacja="$informacja\n1.Muzyka: $muzyka_wynik/3\n";;
  15. "muzyka")
  16. informacja="Pytanie 1: \t$odp1\t\t\nPytanie 2: \t$odp2\t\t\nPytanie 3: \t$odp3\t\t\nPytanie 4: \t$odp4\t\t\n\nW sumie: \t$muzyka_wynik/3";;
  17.  
  18.  
  19. *) echo "wrong argumnt";;
  20. esac
  21. }
  22.  
  23. menu_kategorii=("Muzyka" "Wyniki")
  24. menu_podsumowanie=("Wynik")
  25. menu_pytania=("Pytanie 1" "Pytanie 2" "Pytanie 3" "Pytanie 4")
  26.  
  27. function odpowiedz_udzielona(){
  28. udzielono=$(zenity --error --text "Udzielono juz odpowiedzi, przejdz do nastepnego pytania!")
  29. }
  30.  
  31. function powrot_menu(){
  32. if [[ $? -eq 1 ]]; then
  33. echo "menu glowne"
  34. break
  35. fi
  36. }
  37.  
  38. function podsumowanie(){
  39. podsumowanie=$(zenity --list --height $rozmiarY --width $rozmiarX --title $gra --cancel-label "Menu" --text "\n\n" --column "Wyniki zebrany we wszystkich kategoriach : ")
  40. powrot_menu
  41.  
  42.  
  43. WYNIIK=$[muzyka_wynik + 0]
  44. wynik=$(zenity --info --title $gra --text "\n\n\nPunktacja: $WYNIIK" --height 300 --width 270 --title $gra)
  45.  
  46. }
  47.  
  48.  
  49. function muzyka_panel() {
  50. muzyka=$(zenity --list --height $rozmiarY --width $rozmiarX --title $gra --cancel-label "Menu" --text "\n\n\n" --column "Wybór pytania" "${menu_pytania[@]}")
  51. powrot_menu
  52. case "$muzyka" in
  53. "${menu_pytania[0]}" )
  54. if [[ $odp1 =~ "BRAK" ]]; then
  55. pytanie=$(zenity --list --title $gra --text "Kto skąponował muzykę do słynnego filmu Romana Polańskiego -Dziecko Rosemary?\n\t\t $time" --cancel-label "Powrót" --radiolist --column "wybierz" --column " " FALSE "Jan Ptaszyn Wróblewski" FALSE "Ennio Mericone" FALSE "Krzysztof Komeda" FALSE "Włodzimierz Korcz" )
  56. if [[ $pytanie =~ "Krzysztof Komeda" ]]; then
  57. odp1="PRAWIDŁOWA ODPOWIEDŹ"
  58. muzyka_wynik=$[muzyka_wynik + 1]
  59. else
  60. odp1="ZŁA ODPOWIEDŹ"
  61. fi
  62. muzyka_panel
  63. else
  64. odpowiedz_udzielona
  65. muzyka_panel
  66. fi
  67. ;;
  68. "${menu_pytania[1]}" )
  69. if [[ $odp2 =~ "BRAK" ]]; then
  70. pytanie=$(zenity --list --title $gra --text "Smoke on the Water- to najbardziej znany album jakiego zespołu?\n\t\t $time" --cancel-label "Powrót" --radiolist --column "wybierz" --column " " FALSE "Deep Purple" FALSE "The Doors" FALSE "Led Zeppelin" FALSE "The Rolling Stones" )
  71. if [[ $pytanie =~ "Deep Purple" ]]; then
  72. odp2="PRAWIDŁOWA ODPOWIEDŹ"
  73. muzyka_wynik=$[muzyka_wynik + 1]
  74. else
  75. odp2="ZŁA ODPOWIEDŹ"
  76. fi
  77. muzyka_panel
  78. else
  79. odpowiedz_udzielona
  80. muzyka_panel
  81. fi
  82. ;;
  83. "${menu_pytania[2]}" )
  84. if [[ $odp3 =~ "BRAK" ]]; then
  85. pytanie=$(zenity --list --title $gra --text "Jak brzmi prawdziwe imię i nazwisko amerykańskiej pisenkarki Cher?\n\t\t $time" --cancel-label "Powrót" --radiolist --column "wybierz" --column " " FALSE "Cheryl Coke" FALSE "Denise Richards" FALSE "Charlie Sheen" FALSE "Cherylin Sarkisian LaPiere" )
  86. if [[ $pytanie =~ "Cherylin Sarkisian LaPiere" ]]; then
  87. odp3="PRAWIDŁOWA ODPOWIEDŹ"
  88. muzyka_wynik=$[muzyka_wynik + 1]
  89. else
  90. odp3="ZŁA ODPOWIEDŹ"
  91. fi
  92. echo "pytania"
  93. muzyka_panel
  94. else
  95. odpowiedz_udzielona
  96. muzyka_panel
  97. fi
  98. ;;
  99. "${menu_pytania[3]}" )
  100. if [[ $odp1 =~ "BRAK" ]]; then
  101. pytanie=$(zenity --list --title $gra --text "Kto skąponował muzykę do słynnego filmu Romana Polańskiego -Dziecko Rosemary?\n\t\t $time" --cancel-label "Powrót" --radiolist --column "wybierz" --column " " FALSE "Jan Ptaszyn Wróblewski" FALSE "Ennio Mericone" FALSE "Krzysztof Komeda" FALSE "Włodzimierz Korcz" )
  102. if [[ $pytanie =~ "Krzysztof Komeda" ]]; then
  103. odp1="PRAWIDŁOWA ODPOWIEDŹ"
  104. muzyka_wynik=$[muzyka_wynik + 1]
  105. else
  106. odp1="ZŁA ODPOWIEDŹ"
  107. fi
  108. muzyka_panel
  109. else
  110. odpowiedz_udzielona
  111. muzyka_panel
  112. fi
  113. ;;
  114. esac
  115. }
  116.  
  117. # wczytywanie imienia gracza
  118. imie=$(zenity --entry --title $gra --text "\n\n\nPodaj swoje imię:" --height 200)
  119. if test -z $imie
  120. then
  121. zenity --error --text "Nie zaakceptowano pustego imienia."
  122. exit
  123. fi
  124.  
  125. muzyka_wynik=0
  126.  
  127.  
  128. odp1="BRAK"
  129. odp2="BRAK"
  130. odp3="BRAK"
  131.  
  132. odp1s="BRAK"
  133. odp2s="BRAK"
  134. odp3s="BRAK"
  135.  
  136.  
  137. odp1j="BRAK"
  138. odp2j="BRAK"
  139. odp3j="BRAK"
  140.  
  141.  
  142. odp1p="BRAK"
  143. odp2p="BRAK"
  144. odp3p="BRAK"
  145.  
  146. odp1pp="BRAK"
  147. odp2pp="BRAK"
  148. odp3pp="BRAK"
  149.  
  150.  
  151. odp1g="BRAK"
  152. odp2g="BRAK"
  153. odp3g="BRAK"
  154. WYNIIK=0
  155.  
  156.  
  157. # pętla główna
  158. while true; do
  159. # pętla w ramach menu głównego
  160. while true; do
  161.  
  162. # wyświetlenie menu głównego
  163. wyswietlanie_wyniku "glowny"
  164. opt=$(zenity --list --height $rozmiarY --width $rozmiarX --title=$gra --text="$informacja" --cancel-label "Wyjdź z gry" --ok-label "Wybierz opcję" --column="Kategorie" "${menu_kategorii[@]}")
  165. if [[ $? -eq 1 ]]; then
  166. echo "koniec gry"
  167. exit
  168. break
  169. fi
  170.  
  171. case "$opt" in
  172. "${menu_kategorii[0]}")
  173. muzyka_panel
  174. ;;
  175. "${menu_kategorii[1]}")
  176. podsumowanie
  177. ;;
  178. esac
  179.  
  180.  
  181. done
  182. done
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement