This commit is contained in:
Dominik Jagosz 2022-12-17 10:25:27 +01:00
parent 7c2f48fbfb
commit d82a3483d9

31
main.py
View File

@ -186,6 +186,8 @@ def ustaw_Czerwone_Czerwone_do_Czerwone_Zielone():
global swiatlo_B global swiatlo_B
swiatlo_B = Swiatlo.CZERWONE swiatlo_B = Swiatlo.CZERWONE
ustaw_czerwone(sygnalizator_B) ustaw_czerwone(sygnalizator_B)
global poprzednio
poprzednio = "A"
def ustaw_Czerwone_Czerwone_do_Zielone_Czerwone(): def ustaw_Czerwone_Czerwone_do_Zielone_Czerwone():
@ -195,6 +197,8 @@ def ustaw_Czerwone_Czerwone_do_Zielone_Czerwone():
global swiatlo_B global swiatlo_B
swiatlo_B = Swiatlo.CZERWONE swiatlo_B = Swiatlo.CZERWONE
ustaw_czerwone(sygnalizator_B) ustaw_czerwone(sygnalizator_B)
global poprzednio
poprzednio = "B"
def ustaw_CzerwoneZZoltym_Czerwone(): def ustaw_CzerwoneZZoltym_Czerwone():
@ -214,7 +218,7 @@ def ustaw_Zielone_Czerwone_1():
swiatlo_B = Swiatlo.CZERWONE swiatlo_B = Swiatlo.CZERWONE
ustaw_czerwone(sygnalizator_B) ustaw_czerwone(sygnalizator_B)
global poprzednio global poprzednio
poprzednio = "A" poprzednio = "B"
def ustaw_Zielone_Czerwone_2(): def ustaw_Zielone_Czerwone_2():
@ -253,8 +257,6 @@ def ustaw_Czerwone_Zielone():
global swiatlo_B global swiatlo_B
swiatlo_B = Swiatlo.ZIELONE swiatlo_B = Swiatlo.ZIELONE
ustaw_zielone(sygnalizator_B) ustaw_zielone(sygnalizator_B)
global poprzednio
poprzednio = "B"
def ustaw_Czerwone_Zolte(): def ustaw_Czerwone_Zolte():
@ -281,10 +283,17 @@ poprzednio = "B"
while True: while True:
# print(droga_A[indeks_petli_A][0],droga_B[indeks_petli_B][0]) # print(droga_A[indeks_petli_A][0],droga_B[indeks_petli_B][0])
print(Czerwone_Czerwone_do_Zielone_Czerwone(), Czerwone_Czerwone_do_Czerwone_Zielone()) if O_O():
print(A_O()) print("O - O")
elif A_O():
print("A - O")
elif A_B():
print("A - B")
elif O_B():
print("O - B")
czas_od_ostatniej_zmiany_swiatel = pygame.time.get_ticks() - czas_ostatniej_zmiany_swiatel czas_od_ostatniej_zmiany_swiatel = pygame.time.get_ticks() - czas_ostatniej_zmiany_swiatel
if Czerwone_Czerwone_do_Zielone_Czerwone(): if Czerwone_Czerwone_do_Zielone_Czerwone():
print("Czerwone - Czerwone do Zielone - Czerwone")
if czas_od_ostatniej_zmiany_swiatel >= CZAS_ZMIANY_NA_SYGNALIZATORZE: if czas_od_ostatniej_zmiany_swiatel >= CZAS_ZMIANY_NA_SYGNALIZATORZE:
czas_ostatniej_zmiany_swiatel = pygame.time.get_ticks() czas_ostatniej_zmiany_swiatel = pygame.time.get_ticks()
if O_O() or A_O() or A_B(): if O_O() or A_O() or A_B():
@ -292,9 +301,11 @@ while True:
elif O_B(): elif O_B():
ustaw_Czerwone_CzerwoneZZoltym() ustaw_Czerwone_CzerwoneZZoltym()
elif CzerwoneZZoltym_Czerwone(): elif CzerwoneZZoltym_Czerwone():
print("Czerwone z Zoltym - Czerwone")
if czas_od_ostatniej_zmiany_swiatel >= CZAS_ZMIANY_NA_SYGNALIZATORZE: if czas_od_ostatniej_zmiany_swiatel >= CZAS_ZMIANY_NA_SYGNALIZATORZE:
ustaw_Zielone_Czerwone_1() ustaw_Zielone_Czerwone_1()
elif Zielone_Czerwone_1(): elif Zielone_Czerwone_1():
print("Zielone - Czerwone 1")
if czas_od_ostatniej_zmiany_swiatel >= CZAS_CYKLU: if czas_od_ostatniej_zmiany_swiatel >= CZAS_CYKLU:
czas_ostatniej_zmiany_swiatel = pygame.time.get_ticks() czas_ostatniej_zmiany_swiatel = pygame.time.get_ticks()
if O_O() or A_O() or A_B(): if O_O() or A_O() or A_B():
@ -302,6 +313,7 @@ while True:
elif O_B(): elif O_B():
ustaw_Zolte_Czerwone() ustaw_Zolte_Czerwone()
elif Zielone_Czerwone_2(): elif Zielone_Czerwone_2():
print("Zielone - Czerwone 2")
if czas_od_ostatniej_zmiany_swiatel >= CZAS_CYKLU: if czas_od_ostatniej_zmiany_swiatel >= CZAS_CYKLU:
czas_ostatniej_zmiany_swiatel = pygame.time.get_ticks() czas_ostatniej_zmiany_swiatel = pygame.time.get_ticks()
if O_O() or A_O(): if O_O() or A_O():
@ -309,13 +321,16 @@ while True:
elif O_B() or A_B(): elif O_B() or A_B():
ustaw_Zolte_Czerwone() ustaw_Zolte_Czerwone()
elif Zolte_Czerwone(): elif Zolte_Czerwone():
print("Zolte - Czerwone")
if czas_od_ostatniej_zmiany_swiatel >= CZAS_ZMIANY_NA_SYGNALIZATORZE: if czas_od_ostatniej_zmiany_swiatel >= CZAS_ZMIANY_NA_SYGNALIZATORZE:
czas_ostatniej_zmiany_swiatel = pygame.time.get_ticks() czas_ostatniej_zmiany_swiatel = pygame.time.get_ticks()
ustaw_Czerwone_Czerwone_do_Czerwone_Zielone() ustaw_Czerwone_Czerwone_do_Czerwone_Zielone()
elif Czerwone_CzerwoneZZoltym(): elif Czerwone_CzerwoneZZoltym():
print("Czerwone - Czerwone z Zoltym")
if czas_od_ostatniej_zmiany_swiatel >= CZAS_ZMIANY_NA_SYGNALIZATORZE: if czas_od_ostatniej_zmiany_swiatel >= CZAS_ZMIANY_NA_SYGNALIZATORZE:
ustaw_Czerwone_Zielone() ustaw_Czerwone_Zielone()
elif Czerwone_Zielone(): elif Czerwone_Zielone():
print("Czerwone - Zielone")
if czas_od_ostatniej_zmiany_swiatel >= CZAS_CYKLU: if czas_od_ostatniej_zmiany_swiatel >= CZAS_CYKLU:
czas_ostatniej_zmiany_swiatel = pygame.time.get_ticks() czas_ostatniej_zmiany_swiatel = pygame.time.get_ticks()
if O_B(): if O_B():
@ -323,10 +338,12 @@ while True:
elif O_O() or A_O() or A_B(): elif O_O() or A_O() or A_B():
ustaw_Czerwone_Zolte() ustaw_Czerwone_Zolte()
elif Czerwone_Zolte(): elif Czerwone_Zolte():
print("Czerwone - Zolte")
if czas_od_ostatniej_zmiany_swiatel >= CZAS_ZMIANY_NA_SYGNALIZATORZE: if czas_od_ostatniej_zmiany_swiatel >= CZAS_ZMIANY_NA_SYGNALIZATORZE:
czas_ostatniej_zmiany_swiatel = pygame.time.get_ticks() czas_ostatniej_zmiany_swiatel = pygame.time.get_ticks()
ustaw_Czerwone_Czerwone_do_Zielone_Czerwone() ustaw_Czerwone_Czerwone_do_Zielone_Czerwone()
elif Czerwone_Czerwone_do_Czerwone_Zielone(): elif Czerwone_Czerwone_do_Czerwone_Zielone():
print("Czerwone - Czerwone do Czerwone - Zielone")
if czas_od_ostatniej_zmiany_swiatel >= CZAS_ZMIANY_NA_SYGNALIZATORZE: if czas_od_ostatniej_zmiany_swiatel >= CZAS_ZMIANY_NA_SYGNALIZATORZE:
czas_ostatniej_zmiany_swiatel = pygame.time.get_ticks() czas_ostatniej_zmiany_swiatel = pygame.time.get_ticks()
if A_O(): if A_O():
@ -341,12 +358,12 @@ while True:
los = random.random() los = random.random()
liczba_samochodow = len([x for x in droga_A if x[0]]) liczba_samochodow = len([x for x in droga_A if x[0]])
maks_samochodow = 7 maks_samochodow = 7
szansa = (maks_samochodow - liczba_samochodow) / maks_samochodow szansa = (maks_samochodow - liczba_samochodow) / maks_samochodow -0.7
if los < szansa: if los < szansa:
droga_A[len(droga_A) - 1][0] = True droga_A[len(droga_A) - 1][0] = True
# #
liczba_samochodow = len([x for x in droga_B if x[0]]) liczba_samochodow = len([x for x in droga_B if x[0]])
maks_samochodow = 6 maks_samochodow = 6
szansa = (maks_samochodow - liczba_samochodow) / maks_samochodow - 0.5 szansa = (maks_samochodow - liczba_samochodow) / maks_samochodow - 0.4
if los < szansa: if los < szansa:
droga_B[len(droga_B) - 1][0] = True droga_B[len(droga_B) - 1][0] = True