SHOW:
|
|
- or go back to the newest paste.
1 | import pygame | |
2 | ||
3 | #szerokość i wysokość ekranu | |
4 | SZEROKOSC_EKRANU = 1280 | |
5 | WYSOKOSC_EKRANU = 960 | |
6 | ||
7 | pygame.init() | |
8 | ekran = pygame.display.set_mode([SZEROKOSC_EKRANU, WYSOKOSC_EKRANU]) | |
9 | zegar = pygame.time.Clock() | |
10 | obraz_tla = pygame.image.load('images/mountain.png') | |
11 | czcionka = pygame.font.SysFont('Comic Sans MS', 35) #nazwa i rozmiar czcionki | |
12 | obrazki_kosci = [] | |
13 | for i in range(4): | |
14 | obrazki_kosci.append(pygame.image.load('images/kosc-1.png')) | |
15 | ||
16 | teksty = ["Naciśnij Spacje"] | |
17 | liczba_pol = [3,5,7,9,11,13,11,9,7,5,3] | |
18 | skok_x = 70 | |
19 | skok_y = 50 | |
20 | start_x = 240 | |
21 | start_y = 900 | |
22 | ||
23 | def budowa_planszy(): | |
24 | #współrzędne pierwszego pola | |
25 | x = start_x | |
26 | y = start_y | |
27 | #numer kolumny | |
28 | num = 2 | |
29 | #Operacje wykonywane dla każdej kolumny | |
30 | for kolumna in liczba_pol: | |
31 | #modyfikacja współrzędnych | |
32 | #przesuwamy x w prawo po każdej zbudowanej kolumnie | |
33 | x += skok_x | |
34 | #Wracamy na dół kolumny aby zacząć budować nową | |
35 | y = start_y | |
36 | #budowa jednej kolumny | |
37 | for i in range(kolumna): | |
38 | #Przesuwamy współrzędną y w górę | |
39 | y -= skok_y | |
40 | #rysowanie koła które będzie czarną obwódką | |
41 | pygame.draw.circle(ekran, (0, 0, 0), (x,y), 22) | |
42 | #rysowanie środka pola - kolor dowolny | |
43 | #ważne aby dać inne kolory graczom potem | |
44 | pygame.draw.circle(ekran, (255, 230, 0), (x,y), 20) | |
45 | #przekształcamy liczbę na tekst | |
46 | numer_kolumny = czcionka.render(str(num), True,(0,0,0)) | |
47 | #Wyświetlamy to nad kolumną | |
48 | #cofamy x odrobinę aby wyśrodkować napis | |
49 | ekran.blit(numer_kolumny, (x-10,y-70)) | |
50 | #Przechodzimy do kolejnej kolumny | |
51 | num += 1 | |
52 | ||
53 | def pokaz_teksty(): | |
54 | #współrzędne tekstu | |
55 | x_tekstu = 800 | |
56 | y_tekstu = 40 | |
57 | #przesunięcie tekstu między linijkami | |
58 | skok_tekstu = 50 | |
59 | for tekst in teksty: | |
60 | #stworzenie linijki. | |
61 | #Kolor potem zmienimy na kolor aktywnego gracza | |
62 | linijka = czcionka.render(tekst, True,(0,0,0)) | |
63 | ekran.blit(linijka, (x_tekstu,y_tekstu)) | |
64 | y_tekstu += skok_tekstu | |
65 | ||
66 | program_dziala = True | |
67 | while program_dziala: | |
68 | for zdarzenie in pygame.event.get(): | |
69 | if zdarzenie.type == pygame.KEYDOWN: | |
70 | if zdarzenie.key == pygame.K_ESCAPE: | |
71 | program_dziala = False | |
72 | elif zdarzenie.type == pygame.QUIT: | |
73 | program_dziala = False | |
74 | ||
75 | ||
76 | #wyświetl tło | |
77 | ekran.blit(obraz_tla, (0,0)) | |
78 | #Kosci | |
79 | ekran.blit(obrazki_kosci[0], (16,16)) | |
80 | ekran.blit(obrazki_kosci[1], (116,16)) | |
81 | ekran.blit(obrazki_kosci[2], (16,116)) | |
82 | ekran.blit(obrazki_kosci[3], (116,116)) | |
83 | #Plansza | |
84 | budowa_planszy() | |
85 | #Teksty | |
86 | pokaz_teksty() | |
87 | #odśwież ekran | |
88 | pygame.display.flip() | |
89 | zegar.tick(60) #liczba klatek na sekunde | |
90 | ||
91 | pygame.quit() |