from turtle import *
from math import *
from random import *
from time import sleep
Liste_L_niv = [575, 438, 354, 290, 250, 210, 180, 152]
Liste_e_imm = [39, 16, 10, 15, 10, 20, 32, 35]
liste_e_bord = [40, 40, 40, 40, 40, 40, 20, 40]
liste_taille_pinceau = [10, 9, 8, 7, 6, 5, 4, 3]

def fenetre_rideau(taille, x, y):
    penup()
    setposition(x,y)
    pendown()

    for i in range(4):
        forward(taille)
        left(90)
    
    setposition(x+taille/2, y+taille)
    setposition(x+taille, y)
    
    penup()


def fenetre_deux_carre(taille, x, y):
    penup()
    setposition(x,y)
    pendown()
    for i in range(4):
        forward(taille)
        left(90)
    penup()
    left(90)
    forward(taille)
    right(90)
    pendown()
    for i in range(4):
        forward(taille/2)
        right(90)
    penup()
    forward(taille/2)
    pendown()
    for i in range(4):
        forward(taille/2)
        right(90)
    
    penup()

def porte(larg,long,x,y,couleur):
    for i in range(2):
        forward(larg)
        left(90)
        forward(long)
        left(90)
    
        
def porte_fenetre(larg,long,x,y,couleur):
    for i in range(2):
        forward(larg)
        left(90)
        forward(long)
        left(90)
    left(90)
    forward(long/2)
    for i in range(5):
        right(90)
        forward(larg/10)
        right(90)
        forward(long/2)
        left(90)
        forward(larg/10)
        left(90)
        forward(long/2)
    width(5)
    for i in range(2):
        left(90)
        forward(larg)
        left(90)
        forward(long/2)
    penup()
    setpos(0,0)


def niveau(taille_h, taille_l):
    penup()
    forward(taille_l)
    left(90)
    pendown()
    forward(taille_h)
    left(90)
    penup()
    forward(taille_l)
    left(90)
    pendown()
    forward(taille_h)
    left(90)


def tracer_rue(taille_pinceau):
    penup()
    setposition(-900, -500)
    pensize(taille_pinceau)
    pendown()
    forward(1800)
    penup()
    left(180)
    forward(1800)
    left(180)



while(1):
    nb_imm = randint(3,10)
    L_niv = Liste_L_niv[nb_imm - 3]
    E_imm = Liste_e_imm[nb_imm - 3]
    E_bord = liste_e_bord[nb_imm - 3]
    taille_pinceau = liste_taille_pinceau[nb_imm - 3]
    tracer_rue(taille_pinceau)
    forward(E_bord)
    for i in range(nb_imm - 1):
        niveau(L_niv, L_niv/2)
        forward(L_niv)
        forward(E_imm)
    niveau(L_niv, L_niv/2)
    forward(L_niv)
    forward(E_imm)
    sleep(10)
    reset()