import pygame, sys, random, time from pygame.locals import * pygame.init() rozdzielczosc = (1200, 800) window = pygame.display.set_mode(rozdzielczosc, DOUBLEBUF) pygame.display.set_caption('oczko') tablica_kart = ['czea.png', 'cze2.png', 'cze3.png', 'cze4.png', 'cze5.png', 'cze6.png', 'cze7.png', 'cze8.png', 'cze9.png', 'cze10.png', 'czej.png', 'czed.png', 'czek.png', 'cza.png', 'cz2.png', 'cz3.png', 'cz4.png', 'cz5.png', 'cz6.png', 'cz7.png', 'cz8.png', 'cz9.png', 'cz10.png', 'czj.png', 'czd.png', 'czk.png', 'dza.png', 'dz2.png', 'dz3.png', 'dz4.png', 'dz5.png', 'dz6.png', 'dz7.png', 'dz8.png', 'dz9.png', 'dz10.png', 'dzj.png', 'dzd.png', 'dzk.png', 'rza.png', 'rz2.png', 'rz3.png', 'rz4.png', 'rz5.png', 'rz6.png', 'rz7.png', 'rz8.png', 'rz9.png', 'rz10.png', 'rzj.png', 'rzd.png', 'rzk.png'] punkty_gracza = 0 punkty_komputera = 0 tablica_uzytych_kart = [] tablica_wartosci_kart = [11, 2, 3, 4, 5, 6, 7, 8, 9, 10, 2, 3, 4, 11, 2, 3, 4, 5, 6, 7, 8, 9, 10, 2, 3, 4, 11, 2, 3, 4, 5, 6, 7, 8, 9, 10, 2, 3, 4, 11, 2, 3, 4, 5, 6, 7, 8, 9, 10, 2, 3, 4] czy_PC_gra_dalej = True tekst_Z_P = '' flaga_konca = 0 ilosc_kart_gracz = 0 ilosc_kart_PC = 0 karty_gracz = [] karty_PC = [] def wypelnij(): window.fill((0, 100, 0)) y=0 for x in karty_PC: window.blit(pygame.image.load(x), (400+100*y, 100)) y += 1 y=0 for x in karty_gracz: window.blit(pygame.image.load(x), (400+100*y, 500)) y += 1 font = pygame.font.SysFont(None, 70) tekst = font.render(tekst_Z_P, True, (0, 0, 0)) window.blit(tekst, (400, 400)) font = pygame.font.SysFont(None, 30) tekst = font.render("punkty gracza:", True, (0, 0, 0)) window.blit(tekst, (35, 90)) tekst = font.render(str(punkty_gracza), True, (0, 0, 0)) window.blit(tekst, (35, 115)) tekst = font.render("punkty PC:", True, (0, 0, 0)) window.blit(tekst, (35, 140)) tekst = font.render(str(punkty_komputera), True, (0, 0, 0)) window.blit(tekst, (35, 165)) pygame.draw.rect(window, (118,118,118),(400,650,150,50)) tekst1 = font.render('Spasuj', True, (0,0,0)) window.blit(tekst1, (435, 665)) pygame.draw.rect(window, (118,118,118),(600,650,200,50)) tekst1 = font.render('Dobierz karte', True, (0,0,0)) window.blit(tekst1, (635, 665)) pygame.draw.rect(window, (118,118,118),(30,700,120,50)) tekst1 = font.render('Nowa Gra', True, (0,0,0)) window.blit(tekst1, (35, 715)) wypelnij() def check(): check_PC() check_gracz() global punkty_komputera global punkty_gracza global tekst_Z_P global flaga_konca if flaga_konca != 1: if punkty_komputera > punkty_gracza: tekst_Z_P = "PRZEGRALES" elif punkty_gracza > punkty_komputera: tekst_Z_P = "WYGRALES" else: tekst_Z_P = "REMIS" flaga_konca = 1 def check_gracz(): global punkty_gracza global tekst_Z_P global flaga_konca if punkty_gracza > 21: tekst_Z_P = "PRZEGRALES" flaga_konca = 1 def check_PC(): global punkty_komputera global tekst_Z_P global flaga_konca if punkty_komputera > 21: tekst_Z_P = "WYGRALES" flaga_konca = 1 def dobierz_karte_PC(): global czy_PC_gra_dalej global punkty_komputera global tablica_uzytych_kart global tablica_kart global karty_PC global ilosc_kart_PC a = 0 if czy_PC_gra_dalej: while True: a = random.randrange(1,52) if not a in tablica_uzytych_kart: tablica_uzytych_kart.append(a) ilosc_kart_PC += 1 karty_PC.append(tablica_kart[a-1]) break punkty_komputera += tablica_wartosci_kart[a-1] if punkty_komputera >= 17: b = random.randrange(0, 3) if b > 1: czy_PC_gra_dalej = False check_PC() def Nowa_gra(): global tablica_uzytych_kart global punkty_komputera global punkty_gracza global flaga_konca global tekst_Z_P global czy_PC_gra_dalej global ilosc_kart_gracz global ilosc_kart_PC global karty_gracz global karty_PC czy_PC_gra_dalej = True flaga_konca = 0 tekst_Z_P = '' tablica_uzytych_kart = [] punkty_gracza = 0 punkty_komputera = 0 ilosc_kart_gracz = 0 ilosc_kart_PC = 0 karty_gracz = [] karty_PC = [] def Spasuj(): global czy_PC_gra_dalej while czy_PC_gra_dalej: dobierz_karte_PC() check() def Dobierz_Karte(): global punkty_gracza global tablica_uzytych_kart global karty_gracz global ilosc_kart_gracz global tablica_kart a = 0 while True: a = random.randrange(1,52) if not a in tablica_uzytych_kart: tablica_uzytych_kart.append(a) ilosc_kart_gracz +=1 karty_gracz.append(tablica_kart[a-1]) break punkty_gracza += tablica_wartosci_kart[a-1] check_gracz() dobierz_karte_PC() while True: for event in pygame.event.get(): pos = pygame.mouse.get_pos() if event.type == QUIT: pygame.quit() sys.exit() elif event.type == pygame.MOUSEBUTTONDOWN: if pos[0] >= 400 and pos[0] <=550 and pos[1] >=650 and pos[1] <= 700 and flaga_konca == 0: Spasuj() elif pos[0] >= 600 and pos[0] <=800 and pos[1] >=650 and pos[1] <= 700 and flaga_konca == 0: Dobierz_Karte() elif pos[0] >= 30 and pos[0] <= 150 and pos[1] >= 700 and pos[1] <= 750: Nowa_gra() wypelnij() pygame.display.update()