import turtle     #tuodaan turtle-kirjasto


#Apumuuttujien esittelyt
screenx = 10   #ruudun x-akselin suuntainen alkuleveys
screeny = 10   #ruudun y-akselin suuntainen alkuleveys

px = 0  #pelaajan alkukoordinaatti x-akselin suhteen
py = -250  #pelaajan alkukoordinaatti y-akselin suhteen

x = 0    #pallon alkukoordinaatti x-akselin suhteen
y = -200   #pallon alkukoordinaatti y-akselin suhteen

#Pelialueen luominen
wn = turtle.Screen()   #luodaan ikkuna-objekti
wn.title("Brick Breaker")   #ikkunassa näkyvä otsikko
wn.bgcolor("black")     #asetetaan ikkunan taustaväriksi musta
wn.setup(screenx, screeny)   #asetetaan ikkunan koko muuttjien avulla


#Pelaaja-objektin luominen
player = turtle.Turtle()  #luodaan pelaaja-objekti
player.penup()  #nostetaan kynä näytöltä ylös
player.speed(0)   #objektin animaation nopeus
player.color("blue")  #objektin väri
player.shape("square")  #annetaan objektille muoto
player.shapesize(0.5,5,5)  #muokataan alkuperäisen neliön muotoa
player.setpos(px, py)  #asetetaan pelaajan x- ja y-koordinaatit


#Pallo-objektin luominen
ball = turtle.Turtle()      #luodaan pallo-objekti
ball.penup()                 #nostetaan kynä näytöltä ylös
ball.speed(0)               #objektin animaation nopeus
ball.color("yellow")      #objektin väri
ball.shape("circle")      #annetaan objektille muoto
ball.setpos(x, y)           #asetetaan pallon x- ja y-koordinaatit

#Mailan liikkumiseen tarvittavat funktiot
def right():
    px = player.xcor()      #selvitetään pelaajan x-koordinaatti
    px += 50                    #kasvatetaan sen arvoa viidelläkymmenellä
    player.setpos(px, py)   #asetetaan pelaajan uusi x-koordinaatti

def left():
    px = player.xcor()      #selvitetään pelaajan x-koordinaatti
    px -= 50                     #kasvatetaan sen arvoa viidelläkymmenellä
    player.setpos(px, py)  #asetetaan pelaajan uusi x-koordinaatti

wn.listen()                                     #asetetaan ikkuna "kuuntelemaan" käyttäjän toimia
wn.onkeypress(left, "Left")         #jos painetaan <-, niin kutsutaan aliohjelmaa nimeltä left
wn.onkeypress(right, "Right")     #jos painetaan ->, niin kutsutaan aliohjelmaa nimeltä right



dscreenx = 5   #muuttuja, jonka arvon mukaisesti kasvatetaan x-akselin suuntaan
dscreeny = 5   #muuttuja, jonka arvon mukaisesti kasvatetaan y-akselin suuntaan


while True:
    screenx +=dscreenx        #kasvatetaan ikkunan x-koordinaatin arvoa 
    screeny +=dscreeny        #kasvatetaan ikkunan y-koordinaatin arvoa 
    if screenx > 600 and screeny > 600:    #kun ikkunan mitat saavuttavat annetut rajat lopetetaan sen kasvataminen
        dscreenx = 0
        dscreeny = 0

    wn.setup(screenx, screeny)     #asetetaan ikkunan leveys (x) ja korkeus (y)
    wn.update()                               #päivitetään ikkuna
