Advertisement
Guest User

Loe ja kirjuta

a guest
Jan 31st, 2016
722
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 18.02 KB | None | 0 0
  1. import random, pygame, sys, os
  2. from pygame.locals import *
  3. from time import sleep
  4.  
  5. #Karoliine Kurvits
  6. #Loe ja kirjuta
  7.  
  8. def vali_sõna():
  9. ava=open('sõnad.txt')
  10. read=ava.readlines()
  11. ava.close()
  12. sõna=read[random.randint(0,len(read)-1)].strip()
  13. return sõna
  14.  
  15. def vali_number():
  16. numbridint=['0','1','2','3','4','5','6','7','8','9','10','100']
  17. numbridstr=['NULL','üKS','KAKS','KOLM','NELI','VIIS','KUUS','SEITSE',
  18. 'KAHEKSA','üHEKSA','KüMME']
  19. number=random.randint(0,100)
  20. if number>=0 and 11>number:
  21. kuva=numbridstr[numbridint.index(str(number))]
  22. elif number==100:
  23. kuva='SADA'
  24. elif str(number)[0]=='1':
  25. kuva=numbridstr[numbridint.index(str(number)[1])]+'TEIST'
  26. else:
  27. kuva=numbridstr[numbridint.index(str(number)[0])]+'KüMMEND'
  28. if str(number)[1]!='0':
  29. kuva=kuva+' '+numbridstr[numbridint.index(str(number)[1])]
  30.  
  31. return kuva, str(number)
  32.  
  33. def loo_kuva_loe(n):
  34. täpid=['ü','õ','ö','ä','š']
  35. ilma=['U','O','O','A','S']
  36. õigedvastused=0
  37. kokku=0
  38. q=45
  39.  
  40. bg=pygame.image.load(os.path.join('avakuva', 'avakuva4.2.1.png'))
  41. DISPLAYSURF.blit(bg, (0, 0))
  42. pygame.display.flip()
  43. pygame.time.delay(5000)
  44.  
  45. while True:
  46. bg=pygame.image.load(os.path.join('avakuva', 'avakuva4.2.2.png'))
  47. DISPLAYSURF.blit(bg, (0, 0))
  48.  
  49. sõna=vali_sõna()
  50. kirjuta=sõna
  51.  
  52. if n==2:
  53. kirjuta=kirjuta.lower()
  54. tekst=põhiFont.render(kirjuta, True, BLACK)
  55. rotatedSurf=pygame.transform.rotate(tekst, 0)
  56. rotatedRect=rotatedSurf.get_rect()
  57. rotatedRect.center=(WW/2, 60)
  58. DISPLAYSURF.blit(rotatedSurf, rotatedRect)
  59.  
  60. pilt1=''
  61. for i in range(len(sõna)):
  62. if not sõna[i] in täpid:
  63. pilt1=pilt1+sõna[i]
  64. else:
  65. pilt1=pilt1+ilma[täpid.index(sõna[i])]
  66. img1=pygame.image.load(os.path.join('pildid', pilt1+'.jpg'))
  67. vale=sõna
  68. while vale==sõna:
  69. vale=vali_sõna()
  70.  
  71. pilt2=''
  72. for i in range(len(vale)):
  73. if not vale[i] in täpid:
  74. pilt2=pilt2+vale[i]
  75. else:
  76. pilt2=pilt2+ilma[täpid.index(vale[i])]
  77. img2=pygame.image.load(os.path.join('pildid', pilt2+'.jpg'))
  78. nr=random.randint(1,2)
  79.  
  80. if nr==1:
  81. DISPLAYSURF.blit(img1, (50,150))
  82. DISPLAYSURF.blit(img2, (450,150))
  83. õige=(50,150)
  84. vale=(450,150)
  85. else:
  86. DISPLAYSURF.blit(img2, (50,150))
  87. DISPLAYSURF.blit(img1, (450,150))
  88. õige=(450,150)
  89. vale=(50,150)
  90.  
  91. tekst=põhiFont.render(str(q), True, RED)
  92. rotatedSurf=pygame.transform.rotate(tekst, 0)
  93. DISPLAYSURF.blit(rotatedSurf, (715,25))
  94.  
  95. pygame.display.flip()
  96.  
  97. i=0
  98. while i==0:
  99. aeg=pygame.time.get_ticks()
  100. if aeg%1000==0:
  101. q=q-1
  102. pygame.draw.rect(DISPLAYSURF, WHITE, [710, 15, 65, 65])
  103.  
  104. tekst=põhiFont.render(str(q), True, RED)
  105. rotatedSurf=pygame.transform.rotate(tekst, 0)
  106. DISPLAYSURF.blit(rotatedSurf, (715,25))
  107. pygame.display.flip()
  108. if q==0:
  109. bg=pygame.image.load(os.path.join('avakuva', 'avakuva.png'))
  110. DISPLAYSURF.blit(bg, (0, 0))
  111. tulemus='SAID '+str(õigedvastused)+' õIGET '+str(kokku)+'ST'
  112. tekst=põhiFont.render(tulemus, True, BLACK)
  113. rotatedSurf=pygame.transform.rotate(tekst, 0)
  114. rotatedRect=rotatedSurf.get_rect()
  115. rotatedRect.center=(WW/2, WH/2)
  116. DISPLAYSURF.blit(rotatedSurf, rotatedRect)
  117. pygame.display.flip()
  118. pygame.time.delay(3000)
  119. return
  120.  
  121. vastus=''
  122. pos=pygame.mouse.get_pos()
  123. if pos[0]>õige[0] and õige[0]+300>pos[0] and pos[1]>õige[1] and õige[1]+300>pos[1]:
  124. vastus='Õige'
  125. elif pos[0]>vale[0] and vale[0]+300>pos[0] and pos[1]>vale[1] and vale[1]+300>pos[1]:
  126. vastus='Vale'
  127. elif pos[0]>55 and 130>pos[0] and pos[1]>55 and 80>pos[1]:
  128. vastus='Lahku'
  129. for event in pygame.event.get():
  130. if event.type==QUIT: #Quit
  131. pygame.quit()
  132. sys.exit()
  133. elif event.type==MOUSEBUTTONDOWN and vastus!='':
  134. i=1
  135.  
  136. bg=pygame.image.load(os.path.join('avakuva', 'avakuva.png'))
  137. DISPLAYSURF.blit(bg, (0, 0))
  138. if vastus=='Õige':
  139. tekst=põhiFont.render('TUBLI!', True, BLACK)
  140. rotatedSurf=pygame.transform.rotate(tekst, 0)
  141. rotatedRect=rotatedSurf.get_rect()
  142. rotatedRect.center=(WW/2, WH/2)
  143. DISPLAYSURF.blit(rotatedSurf, rotatedRect)
  144. õigedvastused+=1
  145. kokku+=1
  146. pygame.display.flip()
  147. pygame.time.delay(1000)
  148. elif vastus=='Vale':
  149. tekst=põhiFont.render('VALE VASTUS!', True, BLACK)
  150. rotatedSurf=pygame.transform.rotate(tekst, 0)
  151. rotatedRect=rotatedSurf.get_rect()
  152. rotatedRect.center=(WW/2, WH/2)
  153. DISPLAYSURF.blit(rotatedSurf, rotatedRect)
  154. kokku+=1
  155. pygame.display.flip()
  156. pygame.time.delay(1000)
  157. else:
  158. tulemus='SAID '+str(õigedvastused)+' õIGET '+str(kokku)+'ST'
  159. tekst=põhiFont.render(tulemus, True, BLACK)
  160. rotatedSurf=pygame.transform.rotate(tekst, 0)
  161. rotatedRect=rotatedSurf.get_rect()
  162. rotatedRect.center=(WW/2, WH/2)
  163. DISPLAYSURF.blit(rotatedSurf, rotatedRect)
  164. pygame.display.flip()
  165. pygame.time.delay(3000)
  166. return
  167.  
  168. pygame.display.flip()
  169.  
  170. def loo_kuva_kirjuta(n):
  171. q=45
  172. d=0
  173. õigedvastused=0
  174. kokku=0
  175.  
  176. if n==1:
  177. bg=pygame.image.load(os.path.join('avakuva', 'avakuva4.2.4.png'))
  178. else:
  179. bg=pygame.image.load(os.path.join('avakuva', 'avakuva4.2.3.png'))
  180. DISPLAYSURF.blit(bg, (0, 0))
  181. pygame.display.flip()
  182. pygame.time.delay(5000)
  183.  
  184. while True:
  185. if n==1:
  186. sõna=vali_sõna()
  187. täpid=['ü','õ','ö','ä','š']
  188. ilma=['U','O','O','A','S']
  189. else:
  190. sõna, number=vali_number()
  191.  
  192. välju=''
  193. vastus=''
  194. i=0
  195. while i==0:
  196. bg=pygame.image.load(os.path.join('avakuva', 'avakuva4.2.5.png'))
  197. DISPLAYSURF.blit(bg, (0, 0))
  198.  
  199. if n==1:
  200. pilt=''
  201. for j in range(len(sõna)):
  202. if not sõna[j] in täpid:
  203. pilt=pilt+sõna[j]
  204. else:
  205. pilt=pilt+ilma[täpid.index(sõna[j])]
  206.  
  207. img=pygame.image.load(os.path.join('pildid', pilt+'.jpg'))
  208. DISPLAYSURF.blit(img, (250,30))
  209. else:
  210. kirjuta=põhiFont.render(sõna, True, BLACK)
  211. lahkuSurf=pygame.transform.rotate(kirjuta, 0)
  212. lahkuRect=lahkuSurf.get_rect()
  213. lahkuRect.center=(WW/2, 200)
  214. DISPLAYSURF.blit(lahkuSurf, lahkuRect)
  215.  
  216. pos=pygame.mouse.get_pos()
  217. if pos[0]>10 and 120>pos[0] and pos[1]>10 and 60>pos[1]:
  218. välju='Lahku'
  219. for event in pygame.event.get():
  220. if event.type==QUIT: #Quit
  221. pygame.quit()
  222. sys.exit()
  223. elif event.type==MOUSEBUTTONDOWN and välju!='':
  224. tulemus='SAID '+str(õigedvastused)+' õIGET '+str(kokku)+'ST'
  225. tekst=põhiFont.render(tulemus, True, BLACK)
  226. rotatedSurf=pygame.transform.rotate(tekst, 0)
  227. rotatedRect=rotatedSurf.get_rect()
  228. rotatedRect.center=(WW/2, WH/2)
  229. bg=pygame.image.load(os.path.join('avakuva', 'avakuva.png'))
  230. DISPLAYSURF.blit(bg, (0, 0))
  231. DISPLAYSURF.blit(rotatedSurf, rotatedRect)
  232. pygame.display.flip()
  233. pygame.time.delay(3000)
  234. return
  235. elif event.type==KEYDOWN:
  236. if event.key==K_a:
  237. vastus=vastus+'A'
  238. elif event.key==K_b:
  239. vastus=vastus+'B'
  240. elif event.key==K_d:
  241. vastus=vastus+'D'
  242. elif event.key==K_e:
  243. vastus=vastus+'E'
  244. elif event.key==K_f:
  245. vastus=vastus+'F'
  246. elif event.key==K_g:
  247. vastus=vastus+'G'
  248. elif event.key==K_h:
  249. vastus=vastus+'H'
  250. elif event.key==K_i:
  251. vastus=vastus+'I'
  252. elif event.key==K_j:
  253. vastus=vastus+'J'
  254. elif event.key==K_k:
  255. vastus=vastus+'K'
  256. elif event.key==K_l:
  257. vastus=vastus+'L'
  258. elif event.key==K_m:
  259. vastus=vastus+'M'
  260. elif event.key==K_n:
  261. vastus=vastus+'N'
  262. elif event.key==K_o:
  263. vastus=vastus+'O'
  264. elif event.key==K_p:
  265. vastus=vastus+'P'
  266. elif event.key==K_r:
  267. vastus=vastus+'R'
  268. elif event.key==K_s:
  269. vastus=vastus+'S'
  270. elif event.key==K_t:
  271. vastus=vastus+'T'
  272. elif event.key==K_u:
  273. vastus=vastus+'U'
  274. elif event.key==K_v:
  275. vastus=vastus+'V'
  276. elif event.key==K_BACKSPACE:
  277. vastus=vastus[0:len(vastus)-1]
  278. elif event.key==K_RIGHTBRACKET:
  279. vastus=vastus+'õ'
  280. elif event.key==K_SEMICOLON:
  281. vastus=vastus+'ö'
  282. elif event.key==K_QUOTE:
  283. vastus=vastus+'ä'
  284. elif event.key==K_LEFTBRACKET:
  285. vastus=vastus+'ü'
  286. elif event.key==K_SPACE:
  287. i=1
  288. elif event.key==K_1:
  289. vastus=vastus+'1'
  290. elif event.key==K_2:
  291. vastus=vastus+'2'
  292. elif event.key==K_3:
  293. vastus=vastus+'3'
  294. elif event.key==K_4:
  295. vastus=vastus+'4'
  296. elif event.key==K_5:
  297. vastus=vastus+'5'
  298. elif event.key==K_6:
  299. vastus=vastus+'6'
  300. elif event.key==K_7:
  301. vastus=vastus+'7'
  302. elif event.key==K_8:
  303. vastus=vastus+'8'
  304. elif event.key==K_9:
  305. vastus=vastus+'9'
  306. elif event.key==K_0:
  307. vastus=vastus+'0'
  308.  
  309. kirjutatud=põhiFont.render(vastus, True, BLACK)
  310. rotatedSurf=pygame.transform.rotate(kirjutatud, 0)
  311. rotatedRect=rotatedSurf.get_rect()
  312. rotatedRect.center=(400, 370)
  313. DISPLAYSURF.blit(rotatedSurf, rotatedRect)
  314.  
  315. if i==1:
  316. bg=pygame.image.load(os.path.join('avakuva', 'avakuva.png'))
  317. DISPLAYSURF.blit(bg, (0, 0))
  318. if n==1:
  319. if vastus==sõna:
  320. tekst=põhiFont.render('TUBLI!', True, BLACK)
  321. rotatedSurf=pygame.transform.rotate(tekst, 0)
  322. rotatedRect=rotatedSurf.get_rect()
  323. rotatedRect.center=(WW/2, WH/2)
  324. DISPLAYSURF.blit(rotatedSurf, rotatedRect)
  325. õigedvastused+=1
  326. kokku+=1
  327. else:
  328. kiri='õIGE SõNA OLI '+str(sõna)
  329. tekst=põhiFont.render(kiri, True, BLACK)
  330. rotatedSurf=pygame.transform.rotate(tekst, 0)
  331. rotatedRect=rotatedSurf.get_rect()
  332. rotatedRect.center=(WW/2, WH/2)
  333. DISPLAYSURF.blit(rotatedSurf, rotatedRect)
  334. kokku+=1
  335. else:
  336. if vastus==number:
  337. tekst=põhiFont.render('TUBLI!', True, BLACK)
  338. rotatedSurf=pygame.transform.rotate(tekst, 0)
  339. rotatedRect=rotatedSurf.get_rect()
  340. rotatedRect.center=(WW/2, WH/2)
  341. DISPLAYSURF.blit(rotatedSurf, rotatedRect)
  342. õigedvastused+=1
  343. kokku+=1
  344. else:
  345. kiri='õIGE NUMBER OLI '+str(number)
  346. tekst=põhiFont.render(kiri, True, BLACK)
  347. rotatedSurf=pygame.transform.rotate(tekst, 0)
  348. rotatedRect=rotatedSurf.get_rect()
  349. rotatedRect.center=(WW/2, WH/2)
  350. DISPLAYSURF.blit(rotatedSurf, rotatedRect)
  351. kokku+=1
  352. pygame.display.flip()
  353. pygame.time.delay(1000)
  354.  
  355. aeg=pygame.time.get_ticks()
  356. if aeg//1000!=d:
  357. d=aeg//1000
  358. q=q-1
  359. if q==0:
  360. bg=pygame.image.load(os.path.join('avakuva', 'avakuva.png'))
  361. DISPLAYSURF.blit(bg, (0, 0))
  362. tulemus='SAID '+str(õigedvastused)+' õIGET '+str(kokku)+'ST'
  363. tekst=põhiFont.render(tulemus, True, BLACK)
  364. rotatedSurf=pygame.transform.rotate(tekst, 0)
  365. rotatedRect=rotatedSurf.get_rect()
  366. rotatedRect.center=(WW/2, WH/2)
  367. DISPLAYSURF.blit(rotatedSurf, rotatedRect)
  368. pygame.display.flip()
  369. pygame.time.delay(3000)
  370. return
  371.  
  372. pygame.draw.rect(DISPLAYSURF, WHITE, [710, 15, 65, 65])
  373.  
  374. tekst=põhiFont.render(str(q), True, RED)
  375. rotatedSurf=pygame.transform.rotate(tekst, 0)
  376. DISPLAYSURF.blit(rotatedSurf, (715,25))
  377.  
  378. pygame.display.flip()
  379.  
  380. def loo_avakuva():
  381. for i in range(2):
  382. if i==0:
  383. taust=pygame.image.load(os.path.join('avakuva','avakuva4.0.png'))
  384. DISPLAYSURF.blit(taust, (0,0))
  385. pygame.display.flip()
  386. pygame.time.delay(4000)
  387. else:
  388. while True:
  389. tulemus=''
  390. taust=pygame.image.load(os.path.join('avakuva','avakuva4.1.png'))
  391. DISPLAYSURF.blit(taust, (0,0))
  392. pos=pygame.mouse.get_pos()
  393. if pos[0]>90 and 715>pos[0] and pos[1]>60 and 110>pos[1]:
  394. mängi=pygame.image.load(os.path.join('avakuva','avakuva4.1.1.png'))
  395. DISPLAYSURF.blit(mängi, (0,0))
  396. tulemus='mängi1'
  397. elif pos[0]>100 and 705>pos[0] and pos[1]>145 and 195>pos[1]:
  398. mängi=pygame.image.load(os.path.join('avakuva','avakuva4.1.2.png'))
  399. DISPLAYSURF.blit(mängi, (0,0))
  400. tulemus='mängi2'
  401. elif pos[0]>125 and 675>pos[0] and pos[1]>235 and 285>pos[1]:
  402. mängi=pygame.image.load(os.path.join('avakuva','avakuva4.1.3.png'))
  403. DISPLAYSURF.blit(mängi, (0,0))
  404. tulemus='mängi3'
  405. elif pos[0]>35 and 770>pos[0] and pos[1]>325 and 370>pos[1]:
  406. mängi=pygame.image.load(os.path.join('avakuva','avakuva4.1.4.png'))
  407. DISPLAYSURF.blit(mängi, (0,0))
  408. tulemus='mängi4'
  409. elif pos[0]>185 and 625>pos[0] and pos[1]>405 and 440>pos[1]:
  410. lahku=pygame.image.load(os.path.join('avakuva','avakuva4.1.5.png'))
  411. DISPLAYSURF.blit(lahku, (0,0))
  412. tulemus='lahku'
  413. for event in pygame.event.get():
  414. if event.type==QUIT: #Quit
  415. pygame.quit()
  416. sys.exit()
  417. elif event.type==MOUSEBUTTONDOWN and tulemus=='lahku':
  418. pygame.quit()
  419. sys.exit()
  420. elif event.type==MOUSEBUTTONDOWN and tulemus=='mängi1':
  421. loo_kuva_loe(1)
  422. elif event.type==MOUSEBUTTONDOWN and tulemus=='mängi2':
  423. loo_kuva_loe(2)
  424. elif event.type==MOUSEBUTTONDOWN and tulemus=='mängi3':
  425. loo_kuva_kirjuta(1)
  426. elif event.type==MOUSEBUTTONDOWN and tulemus=='mängi4':
  427. loo_kuva_kirjuta(2)
  428. pygame.display.flip()
  429.  
  430.  
  431.  
  432. #MÄNG
  433. pygame.init()
  434. WW=800 #Akna laius
  435. WH=500 #Akna kõrgus
  436. WHITE=(255, 255, 255)
  437. BLACK=( 0, 0, 0)
  438. RED =(255, 0, 0)
  439. põhiFont=pygame.font.Font('freesansbold.ttf', 50)
  440. kõrvalFont=pygame.font.Font('freesansbold.ttf', 20)
  441. DISPLAYSURF=pygame.display.set_mode((WW, WH))
  442.  
  443. pygame.display.set_caption('Loe ja kirjuta')
  444.  
  445. loo_avakuva()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement