Advertisement
dariahinz

Untitled

Jun 12th, 2017
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.33 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. gra="Quiz"
  4. rozmiarX="400"
  5. rozmiarY="400"
  6. wynik=0
  7. zenity --info --title $gra --width $rozmiarX --height $rozmiarY --text "\n\n\n\n\nWitaj w Quizowaniu! Za chwile zacznie sie rozgrywka.\nW puli znajduje sie 12 pytan i tylko jedna odpowiedz jest poprawna.\n Zadaniem jest odpowiedzenie na jak nawieksza ilosc punktow.\n 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\nWitaj w Quizie!\n";;
  14. "quiz")
  15. 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\nPytanie 5: \t$odp5\t\t\nPytanie 6: \t$odp6\t\t\nPytanie 7: \t$odp7\t\t\nPytanie 8 \t$odp8\t\t\nPytanie 9 \t$odp9\t\t\nPytanie 10 \t$odp10\t\t\nPytanie 11 \t$odp11\t\t\nPytanie 12 \t$odp12\t\t\n";;
  16.  
  17.  
  18. *) echo "wrong argumnt";;
  19. esac
  20. }
  21.  
  22. menu_kategorii=("Quiz" "Wyniki")
  23. menu_podsumowanie=("Wynik")
  24. menu_pytania=("Pytanie 1" "Pytanie 2" "Pytanie 3" "Pytanie 4" "Pytanie 5" "Pytanie 6" "Pytanie 7" "Pytanie 8" "Pytanie 9" "Pytanie 10" "Pytanie 11" "Pytanie 12")
  25.  
  26. function odpowiedz_udzielona(){
  27. udzielono=$(zenity --error --text "Udzielono juz odpowiedzi, przejdz do nastepnego pytania!")
  28. }
  29.  
  30. function powrot_menu(){
  31. if [[ $? -eq 1 ]]; then
  32. echo "menu glowne"
  33. break
  34. fi
  35. }
  36.  
  37. function podsumowanie(){
  38. WYNIIK=$[quiz_wynik + 0]
  39. podsumowanie=$(zenity --list --height $rozmiarY --width $rozmiarX --title $gra --cancel-label "Menu" --text "\n\n" --column "Wyniki:" "${menu_podsumowanie[@]}")
  40. powrot_menu
  41.  
  42. case "$podsumowanie" in
  43. "${menu_podsumowanie[0]}" )
  44.  
  45. wynik=$(zenity --info --title $gra --text "\n\n\nPunktacja zebrane w Quizie: $WYNIIK" --height 300 --width 270 --title $gra)
  46. if [[ $? -eq 0 ]]; then
  47. podsumowanie
  48. fi
  49. ;;
  50. esac
  51. }
  52.  
  53.  
  54. function quiz_panel() {
  55. quiz=$(zenity --list --height $rozmiarY --width $rozmiarX --title $gra --cancel-label "Menu" --text "\n\n\n" --column "Wybór pytania" "${menu_pytania[@]}")
  56. powrot_menu
  57. case "$quiz" in
  58. "${menu_pytania[0]}" )
  59. if [[ $odp1 =~ "BRAK" ]]; then
  60. pytanie=$(zenity --list --title $gra --text "Ktora aktorka zdobyla najwiecej nominacji do Oscarow?\n\t\t $time" --cancel-label "Powrót" --radiolist --column "wybierz" --column " " FALSE "Jessica Lange" FALSE "Meryl Streep" FALSE "Jennifer Lawrence" FALSE "Emma Watson" )
  61. if [[ $pytanie =~ "Meryl Streep" ]]; then
  62. odp1="PRAWIDŁOWA ODPOWIEDŹ"
  63. quiz_wynik=$[quiz_wynik + 1]
  64. else
  65. odp1="ZŁA ODPOWIEDŹ"
  66. fi
  67. quiz_panel
  68. else
  69. odpowiedz_udzielona
  70. quiz_panel
  71. fi
  72. ;;
  73. "${menu_pytania[1]}" )
  74. if [[ $odp2 =~ "BRAK" ]]; then
  75. pytanie=$(zenity --list --title $gra --text "W ktorym roku odbyly sie obrady okraglego stolu?\n\t\t $time" --cancel-label "Powrót" --radiolist --column "wybierz" --column " " FALSE "1991" FALSE "1989" FALSE "1971" FALSE "1999" )
  76. if [[ $pytanie =~ "1989" ]]; then
  77. odp2="PRAWIDŁOWA ODPOWIEDŹ"
  78. quiz_wynik=$[quiz_wynik + 1]
  79. else
  80. odp2="ZŁA ODPOWIEDŹ"
  81. fi
  82. quiz_panel
  83. else
  84. odpowiedz_udzielona
  85. quiz_panel
  86. fi
  87. ;;
  88. "${menu_pytania[2]}" )
  89. if [[ $odp3 =~ "BRAK" ]]; then
  90. pytanie=$(zenity --list --title $gra --text "Ktora z plaent jest najwieksza?\n\t\t $time" --cancel-label "Powrót" --radiolist --column "wybierz" --column " " FALSE "Jowisz" FALSE "Uran" FALSE "Saturn" FALSE "Neptun" )
  91. if [[ $pytanie =~ "Jowisz" ]]; then
  92. odp3="PRAWIDŁOWA ODPOWIEDŹ"
  93. quiz_wynik=$[quiz_wynik + 1]
  94. else
  95. odp3="ZŁA ODPOWIEDŹ"
  96. fi
  97. echo "pytania"
  98. quiz_panel
  99. else
  100. odpowiedz_udzielona
  101. quiz_panel
  102. fi
  103. ;;
  104. "${menu_pytania[3]}" )
  105. if [[ $odp4 =~ "BRAK" ]]; then
  106. pytanie=$(zenity --list --title $gra --text "Ktory film w 2016 wygral Oscara za najlepszy w tym roku?\n\t\t $time" --cancel-label "Powrót" --radiolist --column "wybierz" --column " " FALSE "Pokoj" FALSE "Most Szpiegow" FALSE "Spotlight" FALSE "Mad Max" )
  107. if [[ $pytanie =~ "Spotlight" ]]; then
  108. odp4="PRAWIDŁOWA ODPOWIEDŹ"
  109. quiz_wynik=$[quiz_wynik + 1]
  110. else
  111. odp4="ZŁA ODPOWIEDŹ"
  112. fi
  113. quiz_panel
  114. else
  115. odpowiedz_udzielona
  116. quiz_panel
  117. fi
  118. ;;
  119. "${menu_pytania[4]}" )
  120. if [[ $odp5 =~ "BRAK" ]]; then
  121. pytanie=$(zenity --list --title $gra --text "Czego boginia byla Demeter?\n\t\t $time" --cancel-label "Powrót" --radiolist --column "wybierz" --column " " FALSE "Plodnosci i urodzaju" FALSE "Rodzin i ogniska" FALSE "Zwyciestwa" FALSE "Piekna" )
  122. if [[ $pytanie =~ "Plodnosci i urodzaju" ]]; then
  123. odp5="PRAWIDŁOWA ODPOWIEDŹ"
  124. quiz_wynik=$[quiz_wynik + 1]
  125. else
  126. odp5="ZŁA ODPOWIEDŹ"
  127. fi
  128. quiz_panel
  129. else
  130. odpowiedz_udzielona
  131. quiz_panel
  132. fi
  133. ;;
  134. "${menu_pytania[5]}" )
  135. if [[ $odp6 =~ "BRAK" ]]; then
  136. pytanie=$(zenity --list --title $gra --text "Ile gwiazd widnieje na fladze Stanów zjednoczonych?\n\t\t $time" --cancel-label "Powrót" --radiolist --column "wybierz" --column " " FALSE "48" FALSE "49" FALSE "50" FALSE "51" )
  137. if [[ $pytanie =~ "50" ]]; then
  138. odp6="PRAWIDŁOWA ODPOWIEDŹ"
  139. quiz_wynik=$[quiz_wynik + 1]
  140. else
  141. odp6="ZŁA ODPOWIEDŹ"
  142. fi
  143. quiz_panel
  144. else
  145. odpowiedz_udzielona
  146. quiz_panel
  147. fi
  148. ;;
  149. "${menu_pytania[6]}" )
  150. if [[ $odp7 =~ "BRAK" ]]; then
  151. pytanie=$(zenity --list --title $gra --text "Kogo dotyczą słowa - Zastał Polske drewnianą, a zostawił murowaną?\n\t\t $time" --cancel-label "Powrót" --radiolist --column "wybierz" --column " " FALSE "Bolesław Chrobry" FALSE "Jan III Sobieski" FALSE "Władysław Jagiełło" FALSE "Kazimierz Wielki" )
  152. if [[ $pytanie =~ "Kazimierz Wielki" ]]; then
  153. odp7="PRAWIDŁOWA ODPOWIEDŹ"
  154. quiz_wynik=$[quiz_wynik + 1]
  155. else
  156. odp7="ZŁA ODPOWIEDŹ"
  157. fi
  158. quiz_panel
  159. else
  160. odpowiedz_udzielona
  161. quiz_panel
  162. fi
  163. ;;
  164. "${menu_pytania[7]}" )
  165. if [[ $odp8 =~ "BRAK" ]]; then
  166. pytanie=$(zenity --list --title $gra --text "Ktora z wymienionych substacji jest najbardziej rakotwórcza?\n\t\t $time" --cancel-label "Powrót" --radiolist --column "wybierz" --column " " FALSE "polon" FALSE "akroleina" FALSE "glukoza" FALSE "kodeina" )
  167. if [[ $pytanie =~ "akroleina" ]]; then
  168. odp8="PRAWIDŁOWA ODPOWIEDŹ"
  169. quiz_wynik=$[quiz_wynik + 1]
  170. else
  171. odp8="ZŁA ODPOWIEDŹ"
  172. fi
  173. quiz_panel
  174. else
  175. odpowiedz_udzielona
  176. quiz_panel
  177. fi
  178. ;;
  179. "${menu_pytania[8]}" )
  180. if [[ $odp9 =~ "BRAK" ]]; then
  181. pytanie=$(zenity --list --title $gra --text "Jaką nazwę nosiła potocznie granica pomiędzy państwami wschodnimi a zachodnimi w XX wieku??\n\t\t $time" --cancel-label "Powrót" --radiolist --column "wybierz" --column " " FALSE "Zimna wojna" FALSE "Żelazna Kurtyna" FALSE "Rów katyński" FALSE "Granica zero" )
  182. if [[ $pytanie =~ "Żelazna Kurtyna" ]]; then
  183. odp9="PRAWIDŁOWA ODPOWIEDŹ"
  184. quiz_wynik=$[quiz_wynik + 1]
  185. else
  186. odp9="ZŁA ODPOWIEDŹ"
  187. fi
  188. quiz_panel
  189. else
  190. odpowiedz_udzielona
  191. quiz_panel
  192. fi
  193. ;;
  194. "${menu_pytania[9]}" )
  195. if [[ $odp10 =~ "BRAK" ]]; then
  196. pytanie=$(zenity --list --title $gra --text "Jak nazywał się twórca teorii ewolucji?\n\t\t $time" --cancel-label "Powrót" --radiolist --column "wybierz" --column " " FALSE "Krzyszof Kolumb" FALSE "Freud" FALSE "Hipokrates" FALSE "Karol Darwin" )
  197. if [[ $pytanie =~ "Karol Darwin" ]]; then
  198. odp10="PRAWIDŁOWA ODPOWIEDŹ"
  199. quiz_wynik=$[quiz_wynik + 1]
  200. else
  201. odp10="ZŁA ODPOWIEDŹ"
  202. fi
  203. quiz_panel
  204. else
  205. odpowiedz_udzielona
  206. quiz_panel
  207. fi
  208. ;;
  209. "${menu_pytania[10]}" )
  210. if [[ $odp11 =~ "BRAK" ]]; then
  211. pytanie=$(zenity --list --title $gra --text "Kto jest uważany za największego humaniste czasów renesansu?\n\t\t $time" --cancel-label "Powrót" --radiolist --column "wybierz" --column " " FALSE "Pablo Picasso" FALSE "Van Gogh" FALSE "Leonardo Da Vinci" FALSE "Salvador Dali" )
  212. if [[ $pytanie =~ "Leonardo Da Vinci" ]]; then
  213. odp11="PRAWIDŁOWA ODPOWIEDŹ"
  214. quiz_wynik=$[quiz_wynik + 1]
  215. else
  216. odp11="ZŁA ODPOWIEDŹ"
  217. fi
  218. quiz_panel
  219. else
  220. odpowiedz_udzielona
  221. quiz_panel
  222. fi
  223. ;;
  224. "${menu_pytania[11]}" )
  225. if [[ $odp12 =~ "BRAK" ]]; then
  226. pytanie=$(zenity --list --title $gra --text "Ktora litera jest ostatnia w alfabecie greckim?\n\t\t $time" --cancel-label "Powrót" --radiolist --column "wybierz" --column " " FALSE "Omega" FALSE "Sigma" FALSE "Gamma FALSE "Delta" )
  227. if [[ $pytanie =~ "Omega" ]]; then
  228. odp12="PRAWIDŁOWA ODPOWIEDŹ"
  229. quiz_wynik=$[quiz_wynik + 1]
  230. else
  231. odp12="ZŁA ODPOWIEDŹ"
  232. fi
  233. quiz_panel
  234. else
  235. odpowiedz_udzielona
  236. quiz_panel
  237. fi
  238. ;;
  239. esac
  240. }
  241.  
  242. # wczytywanie imienia gracza
  243. imie=$(zenity --entry --title $gra --text "\n\n\nPodaj swoje imię:" --height 200)
  244. if test -z $imie
  245. then
  246. zenity --error --text "Nie zaakceptowano pustego imienia."
  247. exit
  248. fi
  249.  
  250. quiz_wynik=0
  251.  
  252.  
  253. odp1="BRAK"
  254. odp2="BRAK"
  255. odp3="BRAK"
  256. odp4="BRAK"
  257. odp5="BRAK"
  258. odp6="BRAK"
  259. odp7="BRAK"
  260. odp8="BRAK"
  261. odp9="BRAK"
  262. odp10="BRAK"
  263. odp11="BRAK"
  264. odp12="BRAK"
  265.  
  266. WYNIIK=0
  267.  
  268.  
  269. # pętla główna
  270. while true; do
  271. # pętla w ramach menu głównego
  272. while true; do
  273.  
  274. # wyświetlenie menu głównego
  275. wyswietlanie_wyniku "glowny"
  276. opt=$(zenity --list --height $rozmiarY --width $rozmiarX --title=$gra --text="$informacja" --cancel-label "Wyjdź z gry" --ok-label "Wybierz opcję" --column="Kategorie" "${menu_kategorii[@]}")
  277. if [[ $? -eq 1 ]]; then
  278. echo "koniec gry"
  279. exit
  280. break
  281. fi
  282.  
  283. case "$opt" in
  284. "${menu_kategorii[0]}")
  285. quiz_panel
  286. ;;
  287. "${menu_kategorii[1]}")
  288. podsumowanie
  289. ;;
  290. esac
  291.  
  292.  
  293. done
  294. done
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement