# data[].attributes.attachment_link.readable_text
import random
import funkcja
import pygame

pygame.init()
okno = pygame.display.set_mode((800,600))
pygame.display.set_caption("Moja gra")
timer = pygame.time.Clock()
font = pygame.font.SysFont("arial",40)#czcionka
font20 = pygame.font.SysFont("arial",20)#czcionka
pygame.mixer.init()
FPS = 60

okno.fill("black") #kolorowanie tÅa
FAZA = 0 #zmienna odpowiedzialna za faze gry
# 0 - menu
# 1 - gra
# 2 - opcje gry
# 3 - game over
tloGrafika = pygame.image.load("grafiki/tlo.png")
graczGrafika = pygame.image.load("grafiki/statek.png")
serceGrafika = pygame.image.load("grafiki/serce.png")
podwojnyGrafika = pygame.image.load("grafiki/podwojny_strzal.png")
asteroidaGrafika = pygame.image.load("grafiki/asteroida.png")
kamikazeGrafika = pygame.image.load("grafiki/enemy1.png")
snajperGrafika = pygame.image.load("grafiki/enemy2.png")
boss1Grafika = pygame.image.load("grafiki/boss1.png")
laserGrafika = pygame.image.load("grafiki/laser.png")
overGrafika = pygame.image.load("grafiki/game over.png")
wybuchGrafika = pygame.image.load("grafiki/wybuch.png")
wybuchDzwiek = pygame.mixer.Sound("dzwieki/wybuch.wav")
wybuchEnemyDzwiek = pygame.mixer.Sound("dzwieki/lumora_studios-pixel-explosion-319166.mp3")
laserDzwiek = pygame.mixer.Sound("dzwieki/laser.mp3")
gameOver = False
x = 100
y = 300
speed = 7
hp = 5
graczGrafika.set_colorkey((255,255,255))
serceGrafika.set_colorkey("white")
asteroidaGrafika.set_colorkey("white")
kamikazeGrafika.set_colorkey("white")
snajperGrafika.set_colorkey("white")
wybuchGrafika.set_colorkey("white")
#[x,y,hp,czas]
#[x,y,v]
#asteroidy = [[x,y,v],[x,y,v],[x,y,v],[x,y,v]]
asteroidy = []
kamikaze = []
snajperzy = []
liczbaAsteroid = 5
liczbaKamikaze = 0
liczbaSnajperow = 0
speedLasera = 8
#lasery = [[x,y],[x,y],[x,y],[x,y]]
lasery = []
laseryEnemy = []
czas = pygame.time.get_ticks()
dwaLasery = False
czasTrwaniaBonusu = 0
pauza = 300
punkty = 0
runda = 1
#wybuchy = [[x,y,klatka,czas],[x,y,klatka,czas]]
wybuchy = []
wysokoscKlatki = wybuchGrafika.get_height()
szerokoscKlatki = wybuchGrafika.get_width()//6
bonus = 0
szansaNaBonus = 0
xb = 0
yb = 0
czasBonusy = pygame.time.get_ticks()
poTrafieniu = False
czasPotrafieniu = 0
czasMigotanie = pygame.time.get_ticks()
wyswietl = True
# 1 - trwa 1 minute, 5 asteroid
# 2 - trwa 1 minute, 3 asteroid, 3 samobÃ³jcÃ³w
czasGry = pygame.time.get_ticks()
#[x,y,aktualneHP,maxHP,faza,czas,predkoscY]
# faza bossa: 0 - brak bossa, 1 strzela laserami, 2 - promieÅ , 3 respi kamikadze
boss1 = [810,200,150,150,0,pygame.time.get_ticks(),2]

for i in range(liczbaAsteroid):
    asteroida = [900,random.randint(10,510),random.randint(3,6)]
    asteroidy.append(asteroida)


xa = 900
ya = 300
#czas pomiÄdzy rundami 1000 = 1sekunda
CZAS_RUNDY = 5000

run = True
while run: #gÅÃ³wna pÄtla odswiezajÄca okno programu

    timer.tick(FPS)
    klawisze = pygame.key.get_pressed()#klawiatura
    myszPozycja = pygame.mouse.get_pos()#pozycja kursora myszki
    myszKlik = pygame.mouse.get_pressed()#klik PPM, LPM

    for zdarzenie in pygame.event.get():
        if zdarzenie.type == pygame.QUIT:
            run = False

    if FAZA == 0:#menu
        okno.fill("dodgerblue2")  # kolor tÅa


        #przycisk1
        pygame.draw.rect(okno, "orange", (300, 100, 200, 100), 0, 10)#rysuj przycisk
        if pygame.Rect((300, 100, 200, 100)).collidepoint(myszPozycja):#jeÅli jest kolizja przycisku z kursorem myszy
            pygame.draw.rect(okno, "yellow", (300, 100, 200, 100), 0, 10)#rysuj aktywny przycisk
            if myszKlik[0]:#jeÅli klikniÄto LPM
                FAZA = 1
                liczbaKamikaze = 0
                liczbaAsteroid = 5
                runda = 1
                hp = 5
                punkty = 0
                gameOver = False
                asteroidy.clear()
                kamikaze.clear()
                snajperzy.clear()
                lasery.clear()
                laseryEnemy.clear()
                x = 100
                y = 300
                czasGry = pygame.time.get_ticks()
                szansaNaBonus = 0
                czasMigotanie = pygame.time.get_ticks()
                boss1[4] = 0


        okno.blit(font.render("GRAJ", True, "black"), (350, 125))#napis na przycisku
        # koniec przycisku1

        #przycisk2
        pygame.draw.rect(okno, "orange", (300, 250, 200, 100), 0, 10)
        if pygame.Rect((300, 250, 200, 100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (300, 250, 200, 100), 0, 10)
            if myszKlik[0]:
                FAZA = 2
        okno.blit(font.render("OPCJE", True, "black"), (340, 275))
        # koniec przycisku2

        # przycisk3
        pygame.draw.rect(okno,"orange",(300,400,200,100),0,10)
        if pygame.Rect((300,400,200,100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (300, 400, 200, 100),0,10)
            if myszKlik[0]:
                run = False
        okno.blit(font.render("KONIEC",True,"black"),(340,425))
    # koniec przycisku3

    if FAZA == 3: #game over
        okno.blit(overGrafika,(0,0))
        pygame.draw.rect(okno, "orange", (100, 450, 200, 100), 0, 10)
        if pygame.Rect((100, 450, 200, 100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (100, 450, 200, 100), 0, 10)
            if myszKlik[0]:
                FAZA = 0
        okno.blit(font.render("MENU", True, "black"), (140, 475))

        pygame.draw.rect(okno, "orange", (550, 450, 200, 100), 0, 10)
        if pygame.Rect((550, 450, 200, 100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (550, 450, 200, 100), 0, 10)
            if myszKlik[0]:
                run = False
        okno.blit(font.render("KONIEC", True, "black"), (590, 475))


    if FAZA == 1: #gra

        if pygame.time.get_ticks() - czasGry > CZAS_RUNDY:
            czasGry = pygame.time.get_ticks()
            runda += 1
            if runda == 2:
                liczbaAsteroid = 3
                liczbaKamikaze = 3
            if runda == 3:
                liczbaAsteroid = 2
                liczbaKamikaze = 1
                liczbaSnajperow = 1
            if runda == 4:
                liczbaAsteroid = 2
                liczbaKamikaze = 0
                liczbaSnajperow = 2
            if runda == 5:
                boss1[4] = 1
                liczbaAsteroid = 0
                liczbaKamikaze = 0
                liczbaSnajperow = 0

        okno.blit(tloGrafika, (0, 0))

        if boss1[4] != 0:
            okno.blit(boss1Grafika,(boss1[0],boss1[1]))
            funkcja.pasek(okno,10,570,780,25,boss1[3],boss1[2])
            if boss1[0] > 530:
                boss1[0] -= 2
            else:
                boss1[1] += boss1[6]
                if boss1[1] < 30 or boss1[1]+boss1Grafika.get_height() > 570:
                    boss1[6] *= (-1)

            for l in lasery:
                if pygame.Rect(boss1[0], boss1[1]+80, boss1Grafika.get_width()-10, 60).colliderect(pygame.Rect(l[0], l[1], laserGrafika.get_width(), laserGrafika.get_height())) or pygame.Rect(boss1[0]+105, boss1[1], 140,30).colliderect(pygame.Rect(l[0], l[1], laserGrafika.get_width(), laserGrafika.get_height())) or pygame.Rect(boss1[0]+105, boss1[1]+185, 140,30).colliderect(pygame.Rect(l[0], l[1], laserGrafika.get_width(), laserGrafika.get_height())) or pygame.Rect(boss1[0]+180, boss1[1]+30, 70,50).colliderect(pygame.Rect(l[0], l[1], laserGrafika.get_width(), laserGrafika.get_height())) or pygame.Rect(boss1[0]+180, boss1[1]+170, 70,50).colliderect(pygame.Rect(l[0], l[1], laserGrafika.get_width(), laserGrafika.get_height())):
                    lasery.remove(l)
                    boss1[2] -= 1
                    wybuchDzwiek.play()
                    if boss1[2] <= 0:
                        boss1[4] = 0



        if not poTrafieniu:
            okno.blit(graczGrafika,(x,y))
        else:
            if pygame.time.get_ticks() - czasMigotanie > 100:
                czasMigotanie = pygame.time.get_ticks()
                wyswietl = not wyswietl
                if wyswietl:
                    okno.blit(graczGrafika, (x, y))


        for i in range(hp):
            okno.blit(serceGrafika, (10 + i * 35 , 5))
        okno.blit(font20.render("Punkty: " + str(punkty),True,"white"),(20,40))
        #obsÅuga bonunsÃ³w
        if pygame.time.get_ticks() - czasBonusy > 1000:
            czasBonusy = pygame.time.get_ticks()
            szansaNaBonus += 1

        if bonus == 0 and random.randint(1, 100) < szansaNaBonus:
            szansaNaBonus = 0
            bonus = random.randint(1,2)
            yb = -50
            xb = random.randint(600,650)

        if bonus == 1:
            okno.blit(serceGrafika,(xb,yb))
            yb += 3
            if yb > 600:
                bonus = 0

        if bonus == 2:
            okno.blit(podwojnyGrafika,(xb,yb))
            yb += 3
            if yb > 600:
                bonus = 0

        #animacja asteroid
        for a in asteroidy:
            okno.blit(asteroidaGrafika,(a[0],a[1]))
            a[0] -= a[2]
            if a[0] < -40:
               asteroidy.remove(a)

        # animacja kamikaze
        for k in kamikaze:
            okno.blit(kamikazeGrafika, (k[0], k[1]))
            k[0] -= k[2]
            k[2] += 0.1
            if k[1] > y + 25:
                k[1] -= 1
            if k[1] < y + 25:
                k[1] += 1

            if k[0] < -40:
                kamikaze.remove(k)

        # animacja snajperÃ³w
        for s in snajperzy:
            okno.blit(snajperGrafika, (s[0], s[1]))
            funkcja.pasek(okno,s[0],s[1]-8,47,5,5,s[2])
            if s[0] > 650:
                s[0] -= 3
            else:
                if pygame.time.get_ticks() - s[3] > random.randint(700,1000):
                    s[3] = pygame.time.get_ticks()
                    laseryEnemy.append([s[0],s[1]+snajperGrafika.get_height()//2])
                    laserDzwiek.play()
                s[1] += s[4]
                if s[1] < 0 or s[1] + snajperGrafika.get_height() > 600:
                    s[4] *= (-1)



        while len(asteroidy) < liczbaAsteroid:
            asteroida = [900, random.randint(10, 510), random.randint(3, 6)]
            asteroidy.append(asteroida)

        while len(kamikaze) < liczbaKamikaze:
            enemy = [random.randint(900, 950), random.randint(10, 510),3]
            kamikaze.append(enemy)

        while len(snajperzy) < liczbaSnajperow:
            enemy = [random.randint(900, 950), random.randint(10, 510),5,pygame.time.get_ticks(),random.choice([3,-3])]
            snajperzy.append(enemy)


        #kolizja gracz - asteroidy
        hitBoxGracza = pygame.Rect(x, y, graczGrafika.get_width(), graczGrafika.get_height())
        for a in asteroidy:
            if pygame.Rect(a[0], a[1], asteroidaGrafika.get_width(), asteroidaGrafika.get_height()).colliderect(hitBoxGracza):
                if not poTrafieniu:
                    hp -= 1
                    wybuchDzwiek.play()
                poTrafieniu = True
                czasPotrafieniu = pygame.time.get_ticks()

                if hp == 0:
                    gameOver = True
                asteroidy.remove(a)

        for k in kamikaze:
            if pygame.Rect(k[0], k[1], kamikazeGrafika.get_width(), kamikazeGrafika.get_height()).colliderect(hitBoxGracza):
                if not poTrafieniu:
                    hp -= 1
                    wybuchDzwiek.play()
                poTrafieniu = True
                czasPotrafieniu = pygame.time.get_ticks()

                if hp == 0:
                    gameOver = True
                kamikaze.remove(k)

        for s in snajperzy:
            if pygame.Rect(s[0], s[1], snajperGrafika.get_width(), snajperGrafika.get_height()).colliderect(hitBoxGracza):
                if not poTrafieniu:
                    hp -= 1
                    wybuchDzwiek.play()
                poTrafieniu = True
                czasPotrafieniu = pygame.time.get_ticks()

                if hp == 0:
                    gameOver = True
                snajperzy.remove(s)

        #animacja laserÃ³w
        for l in lasery:
            okno.blit(laserGrafika,(l[0],l[1]))
            l[0] += speedLasera
            if l[0] > 800:
                lasery.remove(l)
                break
        # animacja laserÃ³w przeciwnikÃ³w
        for l in laseryEnemy:
            okno.blit(laserGrafika, (l[0], l[1]))
            l[0] -= speedLasera
            if l[0] < 0:
                laseryEnemy.remove(l)
                break
            if pygame.Rect(hitBoxGracza).colliderect((l[0],l[1],25,2)):
                if not poTrafieniu:
                    hp -= 1
                    poTrafieniu = True
                    czasPotrafieniu = pygame.time.get_ticks()

                if hp == 0:
                    gameOver = True
                laseryEnemy.remove(l)
                break


        if poTrafieniu and pygame.time.get_ticks() - czasPotrafieniu > 1000:
            poTrafieniu = False

        if not gameOver:
            if klawisze[pygame.K_d] and x + graczGrafika.get_width() < 800:
               x += speed
            if klawisze[pygame.K_a] and x > 0:
               x -= speed
            if klawisze[pygame.K_s] and y + graczGrafika.get_height() < 600:
               y += speed
            if klawisze[pygame.K_w] and y > 0:
               y -= speed
            # strzelanie laserem
            if (klawisze[pygame.K_SPACE] or myszKlik[0]) and pygame.time.get_ticks() - czas > pauza:
                   laserDzwiek.play()
                   czas = pygame.time.get_ticks()
                   if dwaLasery:
                       lasery.append([x + graczGrafika.get_width(), y + 10])
                       lasery.append([x + graczGrafika.get_width(), y + graczGrafika.get_height() -10])
                   else:
                        lasery.append([x + graczGrafika.get_width(), y + graczGrafika.get_height() // 2])

        if gameOver:
            y += 3
            x += 3
            if y > 600:
                FAZA = 3

        #kolizja lasery - asteroidy,kamikadze, bonusy,snajperzy
        for l in lasery:
            for a in asteroidy:
                if pygame.Rect(a[0], a[1], asteroidaGrafika.get_width(), asteroidaGrafika.get_height()).colliderect(pygame.Rect(l[0],l[1],laserGrafika.get_width(),laserGrafika.get_height())):
                    wybuchy.append([a[0], a[1],0,pygame.time.get_ticks()])
                    asteroidy.remove(a)
                    wybuchEnemyDzwiek.play()
                    lasery.remove(l)
                    punkty += 10
                    break

        for l in lasery:
            for k in kamikaze:
                if pygame.Rect(k[0], k[1], kamikazeGrafika.get_width(), kamikazeGrafika.get_height()).colliderect(pygame.Rect(l[0],l[1],laserGrafika.get_width(),laserGrafika.get_height())):
                    wybuchy.append([k[0], k[1], 0, pygame.time.get_ticks()])
                    kamikaze.remove(k)
                    wybuchEnemyDzwiek.play()
                    lasery.remove(l)
                    punkty += 20
                    break

        for l in lasery:
            for s in snajperzy:
                if pygame.Rect(s[0], s[1], snajperGrafika.get_width(), snajperGrafika.get_height()).colliderect(pygame.Rect(l[0],l[1],laserGrafika.get_width(),laserGrafika.get_height())):
                    s[2] -= 1
                    lasery.remove(l)
                    break
                if s[2] <= 0:
                    wybuchy.append([s[0], s[1], 0, pygame.time.get_ticks()])
                    snajperzy.remove(s)
                    wybuchEnemyDzwiek.play()
                    punkty += 50
                    break

            if bonus > 0 and pygame.Rect(xb, yb, serceGrafika.get_width(), serceGrafika.get_height()).colliderect(pygame.Rect(l[0], l[1], laserGrafika.get_width(), laserGrafika.get_height())):
                if bonus == 1:
                    hp += 1
                if bonus == 2:
                    dwaLasery = True
                    czasTrwaniaBonusu = pygame.time.get_ticks()
                bonus = 0

            if bonus > 0 and pygame.time.get_ticks() - czasTrwaniaBonusu > 5000:
                dwaLasery = False
        #obsÅuga wybuchÃ³w
        for w in wybuchy:
            okno.blit(wybuchGrafika.subsurface([w[2]*szerokoscKlatki,0,szerokoscKlatki,wysokoscKlatki]),(w[0],w[1]))
            if pygame.time.get_ticks() - w[3] > 70:
                w[2] += 1
                if w[2] == 6:
                    wybuchy.remove(w)
                w[3] = pygame.time.get_ticks()



        if klawisze[pygame.K_ESCAPE]: FAZA = 0



    if FAZA == 2: #opcje
        okno.fill("black")  # kolor tÅa
        if klawisze[pygame.K_ESCAPE]: FAZA = 0
        okno.blit(font.render("OPCJE GRY      Esc = powrÃ³t", True, "white"), (20, 20))


    pygame.display.update()

pygame.quit()

# data[].attributes.attachment_link.readable_text
import random

import pygame

pygame.init()
okno = pygame.display.set_mode((800,600))
pygame.display.set_caption("Moja gra")
timer = pygame.time.Clock()
font = pygame.font.SysFont("arial",40)#czcionka
font20 = pygame.font.SysFont("arial",20)#czcionka
pygame.mixer.init()
FPS = 60

okno.fill("black") #kolorowanie tÅa
FAZA = 0 #zmienna odpowiedzialna za faze gry
# 0 - menu
# 1 - gra
# 2 - opcje gry
# 3 - game over
tloGrafika = pygame.image.load("grafiki/tlo.png")
graczGrafika = pygame.image.load("grafiki/statek.png")
serceGrafika = pygame.image.load("grafiki/serce.png")
asteroidaGrafika = pygame.image.load("grafiki/asteroida.png")
kamikazeGrafika = pygame.image.load("grafiki/enemy1.png")
laserGrafika = pygame.image.load("grafiki/laser.png")
overGrafika = pygame.image.load("grafiki/game over.png")
wybuchGrafika = pygame.image.load("grafiki/wybuch.png")
wybuchDzwiek = pygame.mixer.Sound("dzwieki/wybuch.wav")
laserDzwiek = pygame.mixer.Sound("dzwieki/laser.mp3")
gameOver = False
x = 100
y = 300
speed = 7
hp = 5
graczGrafika.set_colorkey((255,255,255))
serceGrafika.set_colorkey("white")
asteroidaGrafika.set_colorkey("white")
kamikazeGrafika.set_colorkey("white")
wybuchGrafika.set_colorkey("white")
#[x,y,v]
#asteroidy = [[x,y,v],[x,y,v],[x,y,v],[x,y,v]]
asteroidy = []
kamikaze = []
liczbaAsteroid = 5
liczbaKamikaze = 0
speedLasera = 8
#lasery = [[x,y],[x,y],[x,y],[x,y]]
lasery = []
czas = pygame.time.get_ticks()
pauza = 300
punkty = 0
runda = 1
#wybuchy = [[x,y,klatka,czas],[x,y,klatka,czas]]
wybuchy = []
wysokoscKlatki = wybuchGrafika.get_height()
szerokoscKlatki = wybuchGrafika.get_width()//6
bonus1 = False
szansaNaBonus = 0
xb = 0
yb = 0
czasBonusy = pygame.time.get_ticks()

# 1 - trwa 1 minute, 5 asteroid
# 2 - trwa 1 minute, 3 asteroid, 3 samobÃ³jcÃ³w
czasGry = pygame.time.get_ticks()


for i in range(liczbaAsteroid):
    asteroida = [900,random.randint(10,510),random.randint(3,6)]
    asteroidy.append(asteroida)


xa = 900
ya = 300
#czas pomiÄdzy rundami 1000 = 1sekunda
CZAS_RUNDY = 5000

run = True
while run: #gÅÃ³wna pÄtla odswiezajÄca okno programu

    timer.tick(FPS)
    klawisze = pygame.key.get_pressed()#klawiatura
    myszPozycja = pygame.mouse.get_pos()#pozycja kursora myszki
    myszKlik = pygame.mouse.get_pressed()#klik PPM, LPM

    for zdarzenie in pygame.event.get():
        if zdarzenie.type == pygame.QUIT:
            run = False

    if FAZA == 0:#menu
        okno.fill("dodgerblue2")  # kolor tÅa


        #przycisk1
        pygame.draw.rect(okno, "orange", (300, 100, 200, 100), 0, 10)#rysuj przycisk
        if pygame.Rect((300, 100, 200, 100)).collidepoint(myszPozycja):#jeÅli jest kolizja przycisku z kursorem myszy
            pygame.draw.rect(okno, "yellow", (300, 100, 200, 100), 0, 10)#rysuj aktywny przycisk
            if myszKlik[0]:#jeÅli klikniÄto LPM
                FAZA = 1
                liczbaKamikaze = 0
                liczbaAsteroid = 5
                runda = 1
                hp = 5
                punkty = 0
                gameOver = False
                asteroidy.clear()
                kamikaze.clear()
                lasery.clear()
                x = 100
                y = 300
                czasGry = pygame.time.get_ticks()
                szansaNaBonus = 0


        okno.blit(font.render("GRAJ", True, "black"), (350, 125))#napis na przycisku
        # koniec przycisku1

        #przycisk2
        pygame.draw.rect(okno, "orange", (300, 250, 200, 100), 0, 10)
        if pygame.Rect((300, 250, 200, 100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (300, 250, 200, 100), 0, 10)
            if myszKlik[0]:
                FAZA = 2
        okno.blit(font.render("OPCJE", True, "black"), (340, 275))
        # koniec przycisku2

        # przycisk3
        pygame.draw.rect(okno,"orange",(300,400,200,100),0,10)
        if pygame.Rect((300,400,200,100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (300, 400, 200, 100),0,10)
            if myszKlik[0]:
                run = False
        okno.blit(font.render("KONIEC",True,"black"),(340,425))
    # koniec przycisku3

    if FAZA == 3: #game over
        okno.blit(overGrafika,(0,0))
        pygame.draw.rect(okno, "orange", (100, 450, 200, 100), 0, 10)
        if pygame.Rect((100, 450, 200, 100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (100, 450, 200, 100), 0, 10)
            if myszKlik[0]:
                FAZA = 0
        okno.blit(font.render("MENU", True, "black"), (140, 475))

        pygame.draw.rect(okno, "orange", (550, 450, 200, 100), 0, 10)
        if pygame.Rect((550, 450, 200, 100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (550, 450, 200, 100), 0, 10)
            if myszKlik[0]:
                run = False
        okno.blit(font.render("KONIEC", True, "black"), (590, 475))


    if FAZA == 1: #gra

        if pygame.time.get_ticks() - czasGry > CZAS_RUNDY:
            czasGry = pygame.time.get_ticks()
            runda += 1
            if runda == 2:
                liczbaAsteroid = 3
                liczbaKamikaze = 3







        okno.blit(tloGrafika,(0,0))
        okno.blit(graczGrafika,(x,y))
        for i in range(hp):
            okno.blit(serceGrafika, (10 + i * 35 , 5))
        okno.blit(font20.render("Punkty: " + str(punkty),True,"white"),(20,40))
        #obsÅuga bonunsÃ³w
        if pygame.time.get_ticks() - czasBonusy > 1000:
            czasBonusy = pygame.time.get_ticks()
            szansaNaBonus += 1

        if not bonus1 and random.randint(1,100) < szansaNaBonus:
            szansaNaBonus = 0
            bonus1 = True
            yb = -50
            xb = random.randint(600,650)

        if bonus1:
            okno.blit(serceGrafika,(xb,yb))
            yb += 3
            if yb > 600:
                bonus1 = False

        #animacja asteroid
        for a in asteroidy:
            okno.blit(asteroidaGrafika,(a[0],a[1]))
            a[0] -= a[2]
            if a[0] < -40:
               asteroidy.remove(a)

        # animacja kamikaze
        for k in kamikaze:
            okno.blit(kamikazeGrafika, (k[0], k[1]))
            k[0] -= k[2]
            k[2] += 0.1
            if k[1] > y + 25:
                k[1] -= 1
            if k[1] < y + 25:
                k[1] += 1

            if k[0] < -40:
                kamikaze.remove(k)

        while len(asteroidy) < liczbaAsteroid:
            asteroida = [900, random.randint(10, 510), random.randint(3, 6)]
            asteroidy.append(asteroida)

        while len(kamikaze) < liczbaKamikaze:
            enemy = [random.randint(900, 950), random.randint(10, 510),3]
            kamikaze.append(enemy)

        #kolizja gracz - asteroidy
        hitBoxGracza = pygame.Rect(x, y, graczGrafika.get_width(), graczGrafika.get_height())
        for a in asteroidy:
            if pygame.Rect(a[0], a[1], asteroidaGrafika.get_width(), asteroidaGrafika.get_height()).colliderect(hitBoxGracza):
                hp -= 1
                wybuchDzwiek.play()
                if hp == 0:
                    gameOver = True
                asteroidy.remove(a)

        for k in kamikaze:
            if pygame.Rect(k[0], k[1], kamikazeGrafika.get_width(), kamikazeGrafika.get_height()).colliderect(hitBoxGracza):
                hp -= 1
                wybuchDzwiek.play()
                if hp == 0:
                    gameOver = True
                kamikaze.remove(k)

        #animacja laserÃ³w
        for l in lasery:
            okno.blit(laserGrafika,(l[0],l[1]))
            l[0] += speedLasera
            if l[0] > 800:
                lasery.remove(l)

        if not gameOver:
            if klawisze[pygame.K_d] and x + graczGrafika.get_width() < 800:
               x += speed
            if klawisze[pygame.K_a] and x > 0:
               x -= speed
            if klawisze[pygame.K_s] and y + graczGrafika.get_height() < 600:
               y += speed
            if klawisze[pygame.K_w] and y > 0:
               y -= speed
            # strzelanie laserem
            if (klawisze[pygame.K_SPACE] or myszKlik[0]) and pygame.time.get_ticks() - czas > pauza:
                   laserDzwiek.play()
                   czas = pygame.time.get_ticks()
                   lasery.append([x + graczGrafika.get_width(), y + graczGrafika.get_height() // 2])

        if gameOver:
            y += 3
            x += 3
            if y > 600:
                FAZA = 3

        #kolizja lasery - asteroidy,kamikadze, bonusy
        for l in lasery:
            for a in asteroidy:
                if pygame.Rect(a[0], a[1], asteroidaGrafika.get_width(), asteroidaGrafika.get_height()).colliderect(pygame.Rect(l[0],l[1],laserGrafika.get_width(),laserGrafika.get_height())):
                    wybuchy.append([a[0], a[1],0,pygame.time.get_ticks()])
                    asteroidy.remove(a)
                    lasery.remove(l)
                    punkty += 10
                    break
            for k in kamikaze:
                if pygame.Rect(k[0], k[1], kamikazeGrafika.get_width(), kamikazeGrafika.get_height()).colliderect(pygame.Rect(l[0],l[1],laserGrafika.get_width(),laserGrafika.get_height())):
                    wybuchy.append([k[0], k[1], 0, pygame.time.get_ticks()])
                    kamikaze.remove(k)
                    lasery.remove(l)
                    punkty += 20
                    break
            if bonus1 and pygame.Rect(xb,yb,serceGrafika.get_width(),serceGrafika.get_height()).colliderect(pygame.Rect(l[0],l[1],laserGrafika.get_width(),laserGrafika.get_height())):
                bonus1 = False
                hp += 1

        #obsÅuga wybuchÃ³w
        for w in wybuchy:
            okno.blit(wybuchGrafika.subsurface([w[2]*szerokoscKlatki,0,szerokoscKlatki,wysokoscKlatki]),(w[0],w[1]))
            if pygame.time.get_ticks() - w[3] > 70:
                w[2] += 1
                if w[2] == 6:
                    wybuchy.remove(w)
                w[3] = pygame.time.get_ticks()



        if klawisze[pygame.K_ESCAPE]: FAZA = 0



    if FAZA == 2: #opcje
        okno.fill("black")  # kolor tÅa
        if klawisze[pygame.K_ESCAPE]: FAZA = 0
        okno.blit(font.render("OPCJE GRY      Esc = powrÃ³t", True, "white"), (20, 20))


    pygame.display.update()

pygame.quit()

# data[].attributes.attachment_link.readable_text
import random

import pygame

pygame.init()
okno = pygame.display.set_mode((800,600))
pygame.display.set_caption("Moja gra")
timer = pygame.time.Clock()
font = pygame.font.SysFont("arial",40)#czcionka
font20 = pygame.font.SysFont("arial",20)#czcionka
pygame.mixer.init()
FPS = 60

okno.fill("black") #kolorowanie tÅa
FAZA = 0 #zmienna odpowiedzialna za faze gry
# 0 - menu
# 1 - gra
# 2 - opcje gry
# 3 - game over
tloGrafika = pygame.image.load("grafiki/tlo.png")
graczGrafika = pygame.image.load("grafiki/statek.png")
serceGrafika = pygame.image.load("grafiki/serce.png")
asteroidaGrafika = pygame.image.load("grafiki/asteroida.png")
kamikazeGrafika = pygame.image.load("grafiki/enemy1.png")
laserGrafika = pygame.image.load("grafiki/laser.png")
overGrafika = pygame.image.load("grafiki/game over.png")
wybuchDzwiek = pygame.mixer.Sound("dzwieki/wybuch.wav")
laserDzwiek = pygame.mixer.Sound("dzwieki/laser.mp3")
gameOver = False
x = 100
y = 300
speed = 7
hp = 5
graczGrafika.set_colorkey((255,255,255))
serceGrafika.set_colorkey("white")
asteroidaGrafika.set_colorkey("white")
kamikazeGrafika.set_colorkey("white")
#[x,y,v]
#asteroidy = [[x,y,v],[x,y,v],[x,y,v],[x,y,v]]
asteroidy = []
kamikaze = []
liczbaAsteroid = 5
liczbaKamikaze = 0
speedLasera = 8
#lasery = [[x,y],[x,y],[x,y],[x,y]]
lasery = []
czas = pygame.time.get_ticks()
pauza = 300
punkty = 0
runda = 1

# 1 - trwa 1 minute, 5 asteroid
# 2 - trwa 1 minute, 3 asteroid, 3 samobÃ³jcÃ³w
czasGry = pygame.time.get_ticks()


for i in range(liczbaAsteroid):
    asteroida = [900,random.randint(10,510),random.randint(3,6)]
    asteroidy.append(asteroida)


xa = 900
ya = 300
#czas pomiÄdzy rundami 1000 = 1sekunda
CZAS_RUNDY = 5000

run = True
while run: #gÅÃ³wna pÄtla odswiezajÄca okno programu

    timer.tick(FPS)
    klawisze = pygame.key.get_pressed()#klawiatura
    myszPozycja = pygame.mouse.get_pos()#pozycja kursora myszki
    myszKlik = pygame.mouse.get_pressed()#klik PPM, LPM

    for zdarzenie in pygame.event.get():
        if zdarzenie.type == pygame.QUIT:
            run = False

    if FAZA == 0:#menu
        okno.fill("dodgerblue2")  # kolor tÅa


        #przycisk1
        pygame.draw.rect(okno, "orange", (300, 100, 200, 100), 0, 10)#rysuj przycisk
        if pygame.Rect((300, 100, 200, 100)).collidepoint(myszPozycja):#jeÅli jest kolizja przycisku z kursorem myszy
            pygame.draw.rect(okno, "yellow", (300, 100, 200, 100), 0, 10)#rysuj aktywny przycisk
            if myszKlik[0]:#jeÅli klikniÄto LPM
                FAZA = 1
                liczbaKamikaze = 0
                liczbaAsteroid = 5
                runda = 1
                hp = 5
                punkty = 0
                gameOver = False
                asteroidy.clear()
                kamikaze.clear()
                lasery.clear()
                x = 100
                y = 300

        okno.blit(font.render("GRAJ", True, "black"), (350, 125))#napis na przycisku
        # koniec przycisku1

        #przycisk2
        pygame.draw.rect(okno, "orange", (300, 250, 200, 100), 0, 10)
        if pygame.Rect((300, 250, 200, 100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (300, 250, 200, 100), 0, 10)
            if myszKlik[0]:
                FAZA = 2
        okno.blit(font.render("OPCJE", True, "black"), (340, 275))
        # koniec przycisku2

        # przycisk3
        pygame.draw.rect(okno,"orange",(300,400,200,100),0,10)
        if pygame.Rect((300,400,200,100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (300, 400, 200, 100),0,10)
            if myszKlik[0]:
                run = False
        okno.blit(font.render("KONIEC",True,"black"),(340,425))
    # koniec przycisku3

    if FAZA == 3: #game over
        okno.blit(overGrafika,(0,0))
        pygame.draw.rect(okno, "orange", (100, 450, 200, 100), 0, 10)
        if pygame.Rect((100, 450, 200, 100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (100, 450, 200, 100), 0, 10)
            if myszKlik[0]:
                FAZA = 0
        okno.blit(font.render("MENU", True, "black"), (140, 475))

        pygame.draw.rect(okno, "orange", (550, 450, 200, 100), 0, 10)
        if pygame.Rect((550, 450, 200, 100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (550, 450, 200, 100), 0, 10)
            if myszKlik[0]:
                run = False
        okno.blit(font.render("KONIEC", True, "black"), (590, 475))


    if FAZA == 1: #gra

        if pygame.time.get_ticks() - czasGry > CZAS_RUNDY:
            czasGry = pygame.time.get_ticks()
            runda += 1
            if runda == 2:
                liczbaAsteroid = 3
                liczbaKamikaze = 3



        okno.blit(tloGrafika,(0,0))
        okno.blit(graczGrafika,(x,y))
        for i in range(hp):
            okno.blit(serceGrafika, (10 + i * 35 , 5))
        okno.blit(font20.render("Punkty: " + str(punkty),True,"white"),(20,40))

        #animacja asteroid
        for a in asteroidy:
            okno.blit(asteroidaGrafika,(a[0],a[1]))
            a[0] -= a[2]
            if a[0] < -40:
               asteroidy.remove(a)

        # animacja kamikaze
        for k in kamikaze:
            okno.blit(kamikazeGrafika, (k[0], k[1]))
            k[0] -= k[2]
            k[2] += 0.1
            if k[1] > y + 25:
                k[1] -= 1
            if k[1] < y + 25:
                k[1] += 1

            if k[0] < -40:
                kamikaze.remove(k)

        while len(asteroidy) < liczbaAsteroid:
            asteroida = [900, random.randint(10, 510), random.randint(3, 6)]
            asteroidy.append(asteroida)

        while len(kamikaze) < liczbaKamikaze:
            enemy = [random.randint(900, 950), random.randint(10, 510),3]
            kamikaze.append(enemy)

        #kolizja gracz - asteroidy
        hitBoxGracza = pygame.Rect(x, y, graczGrafika.get_width(), graczGrafika.get_height())
        for a in asteroidy:
            if pygame.Rect(a[0], a[1], asteroidaGrafika.get_width(), asteroidaGrafika.get_height()).colliderect(hitBoxGracza):
                hp -= 1
                wybuchDzwiek.play()
                if hp == 0:
                    gameOver = True
                asteroidy.remove(a)

        for k in kamikaze:
            if pygame.Rect(k[0], k[1], kamikazeGrafika.get_width(), kamikazeGrafika.get_height()).colliderect(hitBoxGracza):
                hp -= 1
                wybuchDzwiek.play()
                if hp == 0:
                    gameOver = True
                kamikaze.remove(k)

        #animacja laserÃ³w
        for l in lasery:
            okno.blit(laserGrafika,(l[0],l[1]))
            l[0] += speedLasera
            if l[0] > 800:
                lasery.remove(l)

        if not gameOver:
            if klawisze[pygame.K_d] and x + graczGrafika.get_width() < 800:
               x += speed
            if klawisze[pygame.K_a] and x > 0:
               x -= speed
            if klawisze[pygame.K_s] and y + graczGrafika.get_height() < 600:
               y += speed
            if klawisze[pygame.K_w] and y > 0:
               y -= speed
            # strzelanie laserem
            if (klawisze[pygame.K_SPACE] or myszKlik[0]) and pygame.time.get_ticks() - czas > pauza:
                   laserDzwiek.play()
                   czas = pygame.time.get_ticks()
                   lasery.append([x + graczGrafika.get_width(), y + graczGrafika.get_height() // 2])

        if gameOver:
            y += 3
            x += 3
            if y > 600:
                FAZA = 3

        #kolizja lasery - asteroidy
        for l in lasery:
            for a in asteroidy:
                if pygame.Rect(a[0], a[1], asteroidaGrafika.get_width(), asteroidaGrafika.get_height()).colliderect(pygame.Rect(l[0],l[1],laserGrafika.get_width(),laserGrafika.get_height())):
                    asteroidy.remove(a)
                    lasery.remove(l)
                    punkty += 10
                    break
            for k in kamikaze:
                if pygame.Rect(k[0], k[1], kamikazeGrafika.get_width(), kamikazeGrafika.get_height()).colliderect(pygame.Rect(l[0],l[1],laserGrafika.get_width(),laserGrafika.get_height())):
                    kamikaze.remove(k)
                    lasery.remove(l)
                    punkty += 20
                    break


        if klawisze[pygame.K_ESCAPE]: FAZA = 0



    if FAZA == 2: #opcje
        okno.fill("black")  # kolor tÅa
        if klawisze[pygame.K_ESCAPE]: FAZA = 0
        okno.blit(font.render("OPCJE GRY      Esc = powrÃ³t", True, "white"), (20, 20))


    pygame.display.update()

pygame.quit()

# data[].attributes.attachment_link.readable_text
import random

import pygame

pygame.init()
okno = pygame.display.set_mode((800,600))
pygame.display.set_caption("Moja gra")
timer = pygame.time.Clock()
font = pygame.font.SysFont("arial",40)#czcionka
font20 = pygame.font.SysFont("arial",20)#czcionka
pygame.mixer.init()
FPS = 60

okno.fill("black") #kolorowanie tÅa
FAZA = 0 #zmienna odpowiedzialna za faze gry
# 0 - menu
# 1 - gra
# 2 - opcje gry
tloGrafika = pygame.image.load("grafiki/tlo.png")
graczGrafika = pygame.image.load("grafiki/statek.png")
serceGrafika = pygame.image.load("grafiki/serce.png")
asteroidaGrafika = pygame.image.load("grafiki/asteroida.png")
kamikazeGrafika = pygame.image.load("grafiki/enemy1.png")
laserGrafika = pygame.image.load("grafiki/laser.png")
wybuchDzwiek = pygame.mixer.Sound("dzwieki/wybuch.wav")
laserDzwiek = pygame.mixer.Sound("dzwieki/laser.mp3")
x = 100
y = 300
speed = 7
hp = 5
graczGrafika.set_colorkey((255,255,255))
serceGrafika.set_colorkey("white")
asteroidaGrafika.set_colorkey("white")
kamikazeGrafika.set_colorkey("white")
#[x,y,v]
#asteroidy = [[x,y,v],[x,y,v],[x,y,v],[x,y,v]]
asteroidy = []
kamikaze = []
liczbaAsteroid = 5
liczbaKamikaze = 0
speedLasera = 8
#lasery = [[x,y],[x,y],[x,y],[x,y]]
lasery = []
czas = pygame.time.get_ticks()
pauza = 300
punkty = 0
runda = 1
# 1 - trwa 1 minute, 5 asteroid
# 2 - trwa 1 minute, 3 asteroid, 3 samobÃ³jcÃ³w
czasGry = pygame.time.get_ticks()


for i in range(liczbaAsteroid):
    asteroida = [900,random.randint(10,510),random.randint(3,6)]
    asteroidy.append(asteroida)


xa = 900
ya = 300
#czas pomiÄdzy rundami 1000 = 1sekunda
CZAS_RUNDY = 5000

run = True
while run: #gÅÃ³wna pÄtla odswiezajÄca okno programu

    timer.tick(FPS)
    klawisze = pygame.key.get_pressed()#klawiatura
    myszPozycja = pygame.mouse.get_pos()#pozycja kursora myszki
    myszKlik = pygame.mouse.get_pressed()#klik PPM, LPM

    for zdarzenie in pygame.event.get():
        if zdarzenie.type == pygame.QUIT:
            run = False

    if FAZA == 0:#menu
        okno.fill("dodgerblue2")  # kolor tÅa


        #przycisk1
        pygame.draw.rect(okno, "orange", (300, 100, 200, 100), 0, 10)#rysuj przycisk
        if pygame.Rect((300, 100, 200, 100)).collidepoint(myszPozycja):#jeÅli jest kolizja przycisku z kursorem myszy
            pygame.draw.rect(okno, "yellow", (300, 100, 200, 100), 0, 10)#rysuj aktywny przycisk
            if myszKlik[0]:#jeÅli klikniÄto LPM
                FAZA = 1

        okno.blit(font.render("GRAJ", True, "black"), (350, 125))#napis na przycisku
        # koniec przycisku1

        #przycisk2
        pygame.draw.rect(okno, "orange", (300, 250, 200, 100), 0, 10)
        if pygame.Rect((300, 250, 200, 100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (300, 250, 200, 100), 0, 10)
            if myszKlik[0]:
                FAZA = 2
        okno.blit(font.render("OPCJE", True, "black"), (340, 275))
        # koniec przycisku2

        # przycisk3
        pygame.draw.rect(okno,"orange",(300,400,200,100),0,10)
        if pygame.Rect((300,400,200,100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (300, 400, 200, 100),0,10)
            if myszKlik[0]:
                run = False
        okno.blit(font.render("KONIEC",True,"black"),(340,425))
    # koniec przycisku3




    if FAZA == 1: #gra

        if pygame.time.get_ticks() - czasGry > CZAS_RUNDY:
            czasGry = pygame.time.get_ticks()
            runda += 1
            if runda == 2:
                liczbaAsteroid = 3
                liczbaKamikaze = 3



        okno.blit(tloGrafika,(0,0))
        okno.blit(graczGrafika,(x,y))
        for i in range(hp):
            okno.blit(serceGrafika, (10 + i * 35 , 5))
        okno.blit(font20.render("Punkty: " + str(punkty),True,"white"),(20,40))

        #animacja asteroid
        for a in asteroidy:
            okno.blit(asteroidaGrafika,(a[0],a[1]))
            a[0] -= a[2]
            if a[0] < -40:
               asteroidy.remove(a)

        # animacja kamikaze
        for k in kamikaze:
            okno.blit(kamikazeGrafika, (k[0], k[1]))
            k[0] -= k[2]
            k[2] += 0.1
            if k[1] > y + 25:
                k[1] -= 1
            if k[1] < y + 25:
                k[1] += 1

            if k[0] < -40:
                kamikaze.remove(k)

        while len(asteroidy) < liczbaAsteroid:
            asteroida = [900, random.randint(10, 510), random.randint(3, 6)]
            asteroidy.append(asteroida)

        while len(kamikaze) < liczbaKamikaze:
            enemy = [random.randint(900, 950), random.randint(10, 510),3]
            kamikaze.append(enemy)

        #kolizja gracz - asteroidy
        hitBoxGracza = pygame.Rect(x, y, graczGrafika.get_width(), graczGrafika.get_height())
        for a in asteroidy:
            if pygame.Rect(a[0], a[1], asteroidaGrafika.get_width(), asteroidaGrafika.get_height()).colliderect(hitBoxGracza):
                hp -= 1
                wybuchDzwiek.play()
                if hp == 0:
                    run = False
                asteroidy.remove(a)

        for k in kamikaze:
            if pygame.Rect(k[0], k[1], kamikazeGrafika.get_width(), kamikazeGrafika.get_height()).colliderect(hitBoxGracza):
                hp -= 1
                wybuchDzwiek.play()
                if hp == 0:
                    run = False
                kamikaze.remove(k)

        #animacja laserÃ³w
        for l in lasery:
            okno.blit(laserGrafika,(l[0],l[1]))
            l[0] += speedLasera
            if l[0] > 800:
                lasery.remove(l)


        if klawisze[pygame.K_d] and x + graczGrafika.get_width() < 800:
           x += speed
        if klawisze[pygame.K_a] and x > 0:
           x -= speed
        if klawisze[pygame.K_s] and y + graczGrafika.get_height() < 600:
           y += speed
        if klawisze[pygame.K_w] and y > 0:
           y -= speed
        #strzelanie laserem
        if (klawisze[pygame.K_SPACE] or myszKlik[0]) and pygame.time.get_ticks() - czas > pauza:
            laserDzwiek.play()
            czas = pygame.time.get_ticks()
            lasery.append([x+graczGrafika.get_width(),y+graczGrafika.get_height()//2])


        #kolizja lasery - asteroidy
        for l in lasery:
            for a in asteroidy:
                if pygame.Rect(a[0], a[1], asteroidaGrafika.get_width(), asteroidaGrafika.get_height()).colliderect(pygame.Rect(l[0],l[1],laserGrafika.get_width(),laserGrafika.get_height())):
                    asteroidy.remove(a)
                    lasery.remove(l)
                    punkty += 10
                    break
            for k in kamikaze:
                if pygame.Rect(k[0], k[1], kamikazeGrafika.get_width(), kamikazeGrafika.get_height()).colliderect(pygame.Rect(l[0],l[1],laserGrafika.get_width(),laserGrafika.get_height())):
                    kamikaze.remove(k)
                    lasery.remove(l)
                    punkty += 20
                    break


        if klawisze[pygame.K_ESCAPE]: FAZA = 0



    if FAZA == 2: #opcje
        okno.fill("black")  # kolor tÅa
        if klawisze[pygame.K_ESCAPE]: FAZA = 0
        okno.blit(font.render("OPCJE GRY      Esc = powrÃ³t", True, "white"), (20, 20))


    pygame.display.update()

pygame.quit()

# data[].attributes.attachment_link.readable_text
import random

import pygame

pygame.init()
okno = pygame.display.set_mode((800,600))
pygame.display.set_caption("Moja gra")
timer = pygame.time.Clock()
font = pygame.font.SysFont("arial",40)#czcionka
font20 = pygame.font.SysFont("arial",20)#czcionka
pygame.mixer.init()
FPS = 60

okno.fill("black") #kolorowanie tÅa
FAZA = 0 #zmienna odpowiedzialna za faze gry
# 0 - menu
# 1 - gra
# 2 - opcje gry
tloGrafika = pygame.image.load("grafiki/tlo.png")
graczGrafika = pygame.image.load("grafiki/statek.png")
serceGrafika = pygame.image.load("grafiki/serce.png")
asteroidaGrafika = pygame.image.load("grafiki/asteroida.png")
laserGrafika = pygame.image.load("grafiki/laser.png")
wybuchDzwiek = pygame.mixer.Sound("dzwieki/wybuch.wav")
laserDzwiek = pygame.mixer.Sound("dzwieki/laser.mp3")
x = 100
y = 300
speed = 7
hp = 5
graczGrafika.set_colorkey((255,255,255))
serceGrafika.set_colorkey("white")
asteroidaGrafika.set_colorkey("white")
#[x,y,v]
#asteroidy = [[x,y,v],[x,y,v],[x,y,v],[x,y,v]]
asteroidy = []
liczbaAsteroid = 4
speedLasera = 8
#lasery = [[x,y],[x,y],[x,y],[x,y]]
lasery = []
czas = pygame.time.get_ticks()
pauza = 300
punkty = 0


for i in range(liczbaAsteroid):
    asteroida = [900,random.randint(10,510),random.randint(3,6)]
    asteroidy.append(asteroida)


xa = 900
ya = 300

run = True
while run: #gÅÃ³wna pÄtla odswiezajÄca okno programu

    timer.tick(FPS)
    klawisze = pygame.key.get_pressed()#klawiatura
    myszPozycja = pygame.mouse.get_pos()#pozycja kursora myszki
    myszKlik = pygame.mouse.get_pressed()#klik PPM, LPM

    for zdarzenie in pygame.event.get():
        if zdarzenie.type == pygame.QUIT:
            run = False

    if FAZA == 0:#menu
        okno.fill("dodgerblue2")  # kolor tÅa


        #przycisk1
        pygame.draw.rect(okno, "orange", (300, 100, 200, 100), 0, 10)#rysuj przycisk
        if pygame.Rect((300, 100, 200, 100)).collidepoint(myszPozycja):#jeÅli jest kolizja przycisku z kursorem myszy
            pygame.draw.rect(okno, "yellow", (300, 100, 200, 100), 0, 10)#rysuj aktywny przycisk
            if myszKlik[0]:#jeÅli klikniÄto LPM
                FAZA = 1

        okno.blit(font.render("GRAJ", True, "black"), (350, 125))#napis na przycisku
        # koniec przycisku1

        #przycisk2
        pygame.draw.rect(okno, "orange", (300, 250, 200, 100), 0, 10)
        if pygame.Rect((300, 250, 200, 100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (300, 250, 200, 100), 0, 10)
            if myszKlik[0]:
                FAZA = 2
        okno.blit(font.render("OPCJE", True, "black"), (340, 275))
        # koniec przycisku2

        # przycisk3
        pygame.draw.rect(okno,"orange",(300,400,200,100),0,10)
        if pygame.Rect((300,400,200,100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (300, 400, 200, 100),0,10)
            if myszKlik[0]:
                run = False
        okno.blit(font.render("KONIEC",True,"black"),(340,425))
    # koniec przycisku3




    if FAZA == 1: #gra
        okno.blit(tloGrafika,(0,0))
        okno.blit(graczGrafika,(x,y))
        for i in range(hp):
            okno.blit(serceGrafika, (10 + i * 35 , 5))
        okno.blit(font20.render("Punkty: " + str(punkty),True,"white"),(20,40))

        #animacja steroid
        for a in asteroidy:
            okno.blit(asteroidaGrafika,(a[0],a[1]))
            a[0] -= a[2]
            if a[0] < -40:
               asteroidy.remove(a)

        while len(asteroidy) < liczbaAsteroid:
            asteroida = [900, random.randint(10, 510), random.randint(3, 6)]
            asteroidy.append(asteroida)

        #kolizja gracz - asteroidy
        hitBoxGracza = pygame.Rect(x, y, graczGrafika.get_width(), graczGrafika.get_height())
        for a in asteroidy:
            if pygame.Rect(a[0], a[1], asteroidaGrafika.get_width(), asteroidaGrafika.get_height()).colliderect(hitBoxGracza):
                hp -= 1
                wybuchDzwiek.play()
                if hp == 0:
                    run = False
                asteroidy.remove(a)

        #animacja laserÃ³w
        for l in lasery:
            okno.blit(laserGrafika,(l[0],l[1]))
            l[0] += speedLasera
            if l[0] > 800:
                lasery.remove(l)


        if klawisze[pygame.K_d] and x + graczGrafika.get_width() < 800:
           x += speed
        if klawisze[pygame.K_a] and x > 0:
           x -= speed
        if klawisze[pygame.K_s] and y + graczGrafika.get_height() < 600:
           y += speed
        if klawisze[pygame.K_w] and y > 0:
           y -= speed
        #strzelanie laserem
        if (klawisze[pygame.K_SPACE] or myszKlik[0]) and pygame.time.get_ticks() - czas > pauza:
            laserDzwiek.play()
            czas = pygame.time.get_ticks()
            lasery.append([x+graczGrafika.get_width(),y+graczGrafika.get_height()//2])


        #kolizja lasery - asteroidy
        for a in asteroidy:
            for l in lasery:
                if pygame.Rect(a[0], a[1], asteroidaGrafika.get_width(), asteroidaGrafika.get_height()).colliderect(pygame.Rect(l[0],l[1],laserGrafika.get_width(),laserGrafika.get_height())):
                    asteroidy.remove(a)
                    lasery.remove(l)
                    punkty += 10
                    break



        if klawisze[pygame.K_ESCAPE]: FAZA = 0



    if FAZA == 2: #opcje
        okno.fill("black")  # kolor tÅa
        if klawisze[pygame.K_ESCAPE]: FAZA = 0
        okno.blit(font.render("OPCJE GRY      Esc = powrÃ³t", True, "white"), (20, 20))


    pygame.display.update()

pygame.quit()

# data[].attributes.attachment_link.readable_text
import random

import pygame

pygame.init()
okno = pygame.display.set_mode((800,600))
pygame.display.set_caption("Moja gra")
timer = pygame.time.Clock()
font = pygame.font.SysFont("arial",40)#czcionka
pygame.mixer.init()
FPS = 60

okno.fill("black") #kolorowanie tÅa
FAZA = 0 #zmienna odpowiedzialna za faze gry
# 0 - menu
# 1 - gra
# 2 - opcje gry
tloGrafika = pygame.image.load("grafiki/tlo.png")
graczGrafika = pygame.image.load("grafiki/statek.png")
serceGrafika = pygame.image.load("grafiki/serce.png")
asteroidaGrafika = pygame.image.load("grafiki/asteroida.png")
wybuchDzwiek = pygame.mixer.Sound("dzwieki/wybuch.wav")
x = 100
y = 300
speed = 7
hp = 5
graczGrafika.set_colorkey((255,255,255))
serceGrafika.set_colorkey("white")
asteroidaGrafika.set_colorkey("white")
#[x,y,v]
#asteroidy = [[x,y,v],[x,y,v],[x,y,v],[x,y,v]]
asteroidy = []
liczbaAsteroid = 4

for i in range(liczbaAsteroid):
    asteroida = [900,random.randint(10,510),random.randint(3,6)]
    asteroidy.append(asteroida)


xa = 900
ya = 300

run = True
while run: #gÅÃ³wna pÄtla odswiezajÄca okno programu

    timer.tick(FPS)
    klawisze = pygame.key.get_pressed()#klawiatura
    myszPozycja = pygame.mouse.get_pos()#pozycja kursora myszki
    myszKlik = pygame.mouse.get_pressed()#klik PPM, LPM

    for zdarzenie in pygame.event.get():
        if zdarzenie.type == pygame.QUIT:
            run = False

    if FAZA == 0:#menu
        okno.fill("dodgerblue2")  # kolor tÅa


        #przycisk1
        pygame.draw.rect(okno, "orange", (300, 100, 200, 100), 0, 10)#rysuj przycisk
        if pygame.Rect((300, 100, 200, 100)).collidepoint(myszPozycja):#jeÅli jest kolizja przycisku z kursorem myszy
            pygame.draw.rect(okno, "yellow", (300, 100, 200, 100), 0, 10)#rysuj aktywny przycisk
            if myszKlik[0]:#jeÅli klikniÄto LPM
                FAZA = 1

        okno.blit(font.render("GRAJ", True, "black"), (350, 125))#napis na przycisku
        # koniec przycisku1

        #przycisk2
        pygame.draw.rect(okno, "orange", (300, 250, 200, 100), 0, 10)
        if pygame.Rect((300, 250, 200, 100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (300, 250, 200, 100), 0, 10)
            if myszKlik[0]:
                FAZA = 2
        okno.blit(font.render("OPCJE", True, "black"), (340, 275))
        # koniec przycisku2

        # przycisk3
        pygame.draw.rect(okno,"orange",(300,400,200,100),0,10)
        if pygame.Rect((300,400,200,100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (300, 400, 200, 100),0,10)
            if myszKlik[0]:
                run = False
        okno.blit(font.render("KONIEC",True,"black"),(340,425))
    # koniec przycisku3




    if FAZA == 1: #gra
        okno.blit(tloGrafika,(0,0))
        okno.blit(graczGrafika,(x,y))
        for i in range(hp):
            okno.blit(serceGrafika, (10 + i * 35 , 5))
        #animacja steroid
        for a in asteroidy:
            okno.blit(asteroidaGrafika,(a[0],a[1]))
            a[0] -= a[2]
            if a[0] < -40:
               asteroidy.remove(a)

        while len(asteroidy) < liczbaAsteroid:
            asteroida = [900, random.randint(10, 510), random.randint(3, 6)]
            asteroidy.append(asteroida)

        #kolizja gracz - asteroidy
        hitBoxGracza = pygame.Rect(x, y, graczGrafika.get_width(), graczGrafika.get_height())
        for a in asteroidy:
            if pygame.Rect(a[0], a[1], asteroidaGrafika.get_width(), asteroidaGrafika.get_height()).colliderect(hitBoxGracza):
                hp -= 1
                wybuchDzwiek.play()
                if hp == 0:
                    run = False
                asteroidy.remove(a)


        if klawisze[pygame.K_d] and x + graczGrafika.get_width() < 800:
           x += speed
        if klawisze[pygame.K_a] and x > 0:
           x -= speed
        if klawisze[pygame.K_s] and y + graczGrafika.get_height() < 600:
           y += speed
        if klawisze[pygame.K_w] and y > 0:
           y -= speed


        if klawisze[pygame.K_ESCAPE]: FAZA = 0



    if FAZA == 2: #opcje
        okno.fill("black")  # kolor tÅa
        if klawisze[pygame.K_ESCAPE]: FAZA = 0
        okno.blit(font.render("OPCJE GRY      Esc = powrÃ³t", True, "white"), (20, 20))


    pygame.display.update()

pygame.quit()

# data[].attributes.attachment_link.readable_text
import random

import pygame

pygame.init()
okno = pygame.display.set_mode((800,600))
pygame.display.set_caption("Moja gra")
timer = pygame.time.Clock()
font = pygame.font.SysFont("arial",40)#czcionka

FPS = 60

okno.fill("black") #kolorowanie tÅa
FAZA = 0 #zmienna odpowiedzialna za faze gry
# 0 - menu
# 1 - gra
# 2 - opcje gry
tloGrafika = pygame.image.load("grafiki/tlo.png")
graczGrafika = pygame.image.load("grafiki/statek.png")
serceGrafika = pygame.image.load("grafiki/serce.png")
asteroidaGrafika = pygame.image.load("grafiki/asteroida.png")
x = 100
y = 300
speed = 7
hp = 5
graczGrafika.set_colorkey((255,255,255))
serceGrafika.set_colorkey("white")
asteroidaGrafika.set_colorkey("white")

xa = 900
ya = 300

run = True
while run: #gÅÃ³wna pÄtla odswiezajÄca okno programu

    timer.tick(FPS)
    klawisze = pygame.key.get_pressed()#klawiatura
    myszPozycja = pygame.mouse.get_pos()#pozycja kursora myszki
    myszKlik = pygame.mouse.get_pressed()#klik PPM, LPM

    for zdarzenie in pygame.event.get():
        if zdarzenie.type == pygame.QUIT:
            run = False

    if FAZA == 0:#menu
        okno.fill("dodgerblue2")  # kolor tÅa


        #przycisk1
        pygame.draw.rect(okno, "orange", (300, 100, 200, 100), 0, 10)#rysuj przycisk
        if pygame.Rect((300, 100, 200, 100)).collidepoint(myszPozycja):#jeÅli jest kolizja przycisku z kursorem myszy
            pygame.draw.rect(okno, "yellow", (300, 100, 200, 100), 0, 10)#rysuj aktywny przycisk
            if myszKlik[0]:#jeÅli klikniÄto LPM
                FAZA = 1
        okno.blit(font.render("GRAJ", True, "black"), (350, 125))#napis na przycisku
        # koniec przycisku1

        #przycisk2
        pygame.draw.rect(okno, "orange", (300, 250, 200, 100), 0, 10)
        if pygame.Rect((300, 250, 200, 100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (300, 250, 200, 100), 0, 10)
            if myszKlik[0]:
                FAZA = 2
        okno.blit(font.render("OPCJE", True, "black"), (340, 275))
        # koniec przycisku2

        # przycisk3
        pygame.draw.rect(okno,"orange",(300,400,200,100),0,10)
        if pygame.Rect((300,400,200,100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (300, 400, 200, 100),0,10)
            if myszKlik[0]:
                run = False
        okno.blit(font.render("KONIEC",True,"black"),(340,425))
    # koniec przycisku3



    if FAZA == 1: #gra
        okno.blit(tloGrafika,(0,0))
        okno.blit(graczGrafika,(x,y))
        for i in range(hp):
            okno.blit(serceGrafika, (10 + i * 35 , 5))

        okno.blit(asteroidaGrafika, (xa, ya))
        xa -= 6

        if xa < -40:
            xa = 900
            ya = random.randint(10,550)


        if klawisze[pygame.K_d] and x + graczGrafika.get_width() < 800:
           x += speed
        if klawisze[pygame.K_a] and x > 0:
           x -= speed
        if klawisze[pygame.K_s] and y + graczGrafika.get_height() < 600:
           y += speed
        if klawisze[pygame.K_w] and y > 0:
           y -= speed


        if klawisze[pygame.K_ESCAPE]: FAZA = 0



    if FAZA == 2: #opcje
        okno.fill("black")  # kolor tÅa
        if klawisze[pygame.K_ESCAPE]: FAZA = 0
        okno.blit(font.render("OPCJE GRY      Esc = powrÃ³t", True, "white"), (20, 20))


    pygame.display.update()

pygame.quit()

# data[].attributes.attachment_link.readable_text
import pygame

pygame.init()
okno = pygame.display.set_mode((800,600))
pygame.display.set_caption("Moja gra")
timer = pygame.time.Clock()
font = pygame.font.SysFont("arial",40)#czcionka
FPS = 60

okno.fill("black") #kolorowanie tÅa
FAZA = 0 #zmienna odpowiedzialna za faze gry
# 0 - menu
# 1 - gra
# 2 - opcje gry


run = True
while run: #gÅÃ³wna pÄtla odswiezajÄca okno programu

    timer.tick(FPS)
    klawisze = pygame.key.get_pressed()#klawiatura
    myszPozycja = pygame.mouse.get_pos()#pozycja kursora myszki
    myszKlik = pygame.mouse.get_pressed()#klik PPM, LPM

    for zdarzenie in pygame.event.get():
        if zdarzenie.type == pygame.QUIT:
            run = False

    if FAZA == 0:#menu
        okno.fill("black")  # kolor tÅa
        #przycisk1
        pygame.draw.rect(okno, "orange", (300, 100, 200, 100), 0, 10)#rysuj przycisk
        if pygame.Rect((300, 100, 200, 100)).collidepoint(myszPozycja):#jeÅli jest kolizja przycisku z kursorem myszy
            pygame.draw.rect(okno, "yellow", (300, 100, 200, 100), 0, 10)#rysuj aktywny przycisk
            if myszKlik[0]:#jeÅli klikniÄto LPM
                FAZA = 1
        okno.blit(font.render("GRAJ", True, "black"), (350, 125))#napis na przycisku
        # koniec przycisku1

        #przycisk2
        pygame.draw.rect(okno, "orange", (300, 250, 200, 100), 0, 10)
        if pygame.Rect((300, 250, 200, 100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (300, 250, 200, 100), 0, 10)
            if myszKlik[0]:
                FAZA = 2
        okno.blit(font.render("OPCJE", True, "black"), (340, 275))
        # koniec przycisku2

        # przycisk3
        pygame.draw.rect(okno,"orange",(300,400,200,100),0,10)
        if pygame.Rect((300,400,200,100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (300, 400, 200, 100),0,10)
            if myszKlik[0]:
                run = False
        okno.blit(font.render("KONIEC",True,"black"),(340,425))
    # koniec przycisku3



    if FAZA == 1: #gra
        okno.fill("black")  # kolor tÅa
        if klawisze[pygame.K_ESCAPE]: FAZA = 0



    if FAZA == 2: #opcje
        okno.fill("black")  # kolor tÅa
        if klawisze[pygame.K_ESCAPE]: FAZA = 0
        okno.blit(font.render("OPCJE GRY      Esc = powrÃ³t", True, "white"), (20, 20))


    pygame.display.update()

pygame.quit()

# data[].attributes.attachment_link.readable_text
import pygame

pygame.init()
okno = pygame.display.set_mode((800,600))
pygame.display.set_caption("Moja gra")
timer = pygame.time.Clock()
font = pygame.font.SysFont("arial",40)#czcionka
FPS = 60
x = 400 #wspÃ³ÅrzÄdna Årodka kulki w osi poziomej
y = 300 #wspÃ³ÅrzÄdna Årodka kulki w osi pionowej
r = 30 #promieÅ kulki
speedX = -4  #prÄdkoÅÄ w osi poziomej
speedY = 2  #prÄdkoÅÄ w osi pionowej
xp = 200
yp = 570
szerokosc = 200
wysokosc = 20
speedP = 8
kolor = "red"
punkty1 = 0


xp2 = 200
yp2 = 10
szerokosc2 = 200
wysokosc2 = 20
speedP2 = 8
punkty2 = 0

okno.fill("mediumpurple1") #kolorowanie tÅa
FAZA = 0 #zmienna odpowiedzialna za faze gry
# 0 - menu
# 1 - gra dla 1 gracza
# 2 - gra dla 2 graczy

run = True
while run: #gÅÃ³wna pÄtla odswiezajÄca okno programu
    okno.fill("mediumpurple1")#kolor tÅa
    timer.tick(FPS)
    klawisze = pygame.key.get_pressed()
    myszPozycja = pygame.mouse.get_pos()
    myszKlik = pygame.mouse.get_pressed()

    for zdarzenie in pygame.event.get():
        if zdarzenie.type == pygame.QUIT:
            run = False

    if klawisze[pygame.K_ESCAPE]: run = False

    if FAZA == 0:#menu
        #przycisk1
        pygame.draw.rect(okno, "orange", (300, 100, 200, 100), 0, 10)#rysuj przycisk
        if pygame.Rect((300, 100, 200, 100)).collidepoint(myszPozycja):#jeÅli jest kolizja przycisku z kursorem myszy
            pygame.draw.rect(okno, "black", (300, 100, 200, 100), 0, 10)#rysuj aktywny przycisk
            if myszKlik[0]:#jeÅli klikniÄto LPM
                FAZA = 1
        okno.blit(font.render("1 GRACZ", True, "black"), (310, 125))#napis na przycisku
        # koniec przycisku1
        
        #przycisk2
        pygame.draw.rect(okno, "orange", (300, 250, 200, 100), 0, 10)
        if pygame.Rect((300, 250, 200, 100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (300, 250, 200, 100), 0, 10)
            if myszKlik[0]:
                FAZA = 2
        okno.blit(font.render("2 GRACZY", True, "black"), (310, 275))
        # koniec przycisku2
        
        # przycisk3
        pygame.draw.rect(okno,"orange",(300,400,200,100),0,10)
        if pygame.Rect((300,400,200,100)).collidepoint(myszPozycja):
            pygame.draw.rect(okno, "yellow", (300, 400, 200, 100),0,10)
            if myszKlik[0]:
                run = False
        okno.blit(font.render("KONIEC",True,"black"),(330,425))
    # koniec przycisku3

    if FAZA == 1 or FAZA == 2:#elementy wspÃ³lne dla 1 i 2 graczy
        okno.blit(font.render("Punkty: " + str(punkty2),True,"green"),(10,200))
        okno.blit(font.render("Punkty: " + str(punkty1),True,kolor),(10,300))

        #rysowanie kulki
        pygame.draw.circle(okno,"blue",(x,y),r,2)
        pygame.draw.rect(okno,kolor,[xp,yp,szerokosc,wysokosc],0,8)
        pygame.draw.rect(okno,"green",[xp2,yp2,szerokosc2,wysokosc2],0,8)
        #przesuwanie kulki
        x += speedX
        y += speedY
        #odbijanie kulki od krawÄdzi ekranu
        if x - r < 0 or x + r > 800:
            speedX = speedX * (-1)
        if y - r < 0 or y + r > 600:
            speedY = speedY * (-1)

        """if klawisze[pygame.K_w]:
            yp -= speedP
        elif klawisze[pygame.K_s]:
            yp += speedP"""
        
        if pygame.Rect(xp,yp,szerokosc,2).collidepoint(x,y+r):
            speedY = -2
            punkty1 += 1
            print(punkty1,punkty2)


        if pygame.Rect(xp2,yp2+18,szerokosc2,2).collidepoint(x,y-r):
            speedY = 2
            punkty2 += 1
            print(punkty1, punkty2)

        if klawisze[pygame.K_a] and xp > 0:
            xp -= speedP
        elif klawisze[pygame.K_d] and xp + szerokosc < 800:
            xp += speedP

    if FAZA == 2:#dla 2 graczy przeciwnik sterowany strzaÅakmi
        if klawisze[pygame.K_LEFT] and xp2 > 0:
            xp2 -= speedP2
        elif klawisze[pygame.K_RIGHT]and xp2 + szerokosc < 800:
            xp2 += speedP2

    if FAZA == 1:#dla 1 gracza bot ÅcigajÄcy piÅkÄ
        if xp2 + szerokosc2//2 > x:
            xp2 -= 3
        if xp2 + szerokosc2//2 < x:
            xp2 += 3

    pygame.display.update()

pygame.quit()

# data[].attributes.attachment_link.readable_text
import pygame

pygame.init()
okno = pygame.display.set_mode((800,600))
pygame.display.set_caption("Moja gra")
timer = pygame.time.Clock()
FPS = 60
x = 400 #wspÃ³ÅrzÄdna Årodka kulki w osi poziomej
y = 300 #wspÃ³ÅrzÄdna Årodka kulki w osi pionowej
r = 30 #promieÅ kulki
speedX = -4  #prÄdkoÅÄ w osi poziomej
speedY = 2  #prÄdkoÅÄ w osi pionowej
xp = 200
yp = 570
szerokosc = 200
wysokosc = 20
speedP = 8
kolor = "red"
punkty1 = 0


xp2 = 200
yp2 = 10
szerokosc2 = 200
wysokosc2 = 20
speedP2 = 8
punkty2 = 0

okno.fill("mediumpurple1") #kolorowanie tÅa

run = True
while run: #gÅÃ³wna pÄtla odswiezajÄca okno programu
    okno.fill("mediumpurple1")
    timer.tick(FPS)
    klawisze = pygame.key.get_pressed()
    myszPozycja = pygame.mouse.get_pos()
    myszKlik = pygame.mouse.get_pressed()

    for zdarzenie in pygame.event.get():
        if zdarzenie.type == pygame.QUIT:
            run = False

    if klawisze[pygame.K_ESCAPE]: run = False

    #rysowanie kulki
    pygame.draw.circle(okno,"blue",(x,y),r,2)
    pygame.draw.rect(okno,kolor,[xp,yp,szerokosc,wysokosc],0,8)
    pygame.draw.rect(okno,"green",[xp2,yp2,szerokosc2,wysokosc2],0,8)
    #przesuwanie kulki
    x += speedX
    y += speedY
    #odbijanie kulki od krawÄdzi ekranu
    if x - r < 0 or x + r > 800:
        speedX = speedX * (-1)
    if y - r < 0 or y + r > 600:
        speedY = speedY * (-1)

    """if klawisze[pygame.K_w]:
        yp -= speedP
    elif klawisze[pygame.K_s]:
        yp += speedP"""

    if klawisze[pygame.K_a] and xp > 0:
        xp -= speedP
    elif klawisze[pygame.K_d] and xp + szerokosc < 800:
        xp += speedP

    if klawisze[pygame.K_LEFT] and xp2 > 0:
        xp2 -= speedP2
    elif klawisze[pygame.K_RIGHT]and xp2 + szerokosc < 800:
        xp2 += speedP2

    if pygame.Rect(xp,yp,szerokosc,wysokosc).collidepoint(x,y+r):
        speedY = -2
        punkty1 += 1
        print(punkty1,punkty2)


    if pygame.Rect(xp2,yp2,szerokosc2,wysokosc2).collidepoint(x,y-r):
        speedY = 2
        punkty2 += 1
        print(punkty1, punkty2)









    pygame.display.update()

pygame.quit()

# data[].attributes.attachment_link.readable_text
import pygame

pygame.init()
okno = pygame.display.set_mode((800,600))
pygame.display.set_caption("Moja gra")
timer = pygame.time.Clock()
FPS = 60
x = 400
y = 300
r = 50
speedX = -7
speedY = 7
okno.fill("mediumpurple1")
run = True
while run:
    okno.fill("mediumpurple1")
    timer.tick(FPS)
    klawisze = pygame.key.get_pressed()
    myszPozycja = pygame.mouse.get_pos()
    myszKlik = pygame.mouse.get_pressed()

    for zdarzenie in pygame.event.get():
        if zdarzenie.type == pygame.QUIT:
            run = False

    if klawisze[pygame.K_ESCAPE]: run = False
    pygame.draw.circle(okno,"blue",(x,y),r)
    x += speedX
    y += speedY


    if x - r < 0 or x + r > 800:
        speedX = speedX * (-1)

    if y - r < 0 or y + r > 600:
        speedY = speedY * (-1)




    pygame.display.update()

pygame.quit()

# data[].attributes.attachment_link.description
WARNING: Taking art from OpenGameArt.org to be sold as NFTs? You may be committing FRAUD. Visit this link for legal details: https://opengameart.org/content/warning-taking-art-from-opengameartorg-t... Note of caution to NFT purchasers or those interested in trading NFTs: You could be getting scammed! Please visit this link for more information: https://opengameart.org/content/note-of-caution-to-nft-purchasers-or-tho...

# data[].attributes.attachment_link.title
Named Colors - pygame v2.6.0 documentation

# data[].attributes.attachment_link.description
pygame.Color pygame object for color representations lets you specify any of these named colors when creating a new pygame.Color (taken from the colordict module).

# data[].attributes.attachment_link.readable_text
import pygame

pygame.init()
okno = pygame.display.set_mode([800,600])
pygame.display.set_caption("Moja GRA")
timer = pygame.time.Clock()
FPS = 60

run = True
while run:
    timer.tick(FPS)
    klawisze  = pygame.key.get_pressed()
    myszPozycja = pygame.mouse.get_pos()
    myszKlik = pygame.mouse.get_pressed()
    
    for zdarzenie in pygame.event.get():
        if zdarzenie.type == pygame.QUIT:
            run = False
            
    if klawisze[pygame.K_ESCAPE]: run = False


    pygame.display.update()

pygame.quit()
