import random lista_opcji = ["100 punktów za 1", "50 punktów za 5","Punkty za 3 kości"] trzy_kosci = 0 liczba_kosci = 5 mozliwe_opcje = [] wyrzucone_kosci = [] punkty = [0,0] punkty_tury = 0 gracz = 0 def rzut_koscmi(ile_kosci): wyrzucone_kosci.clear() for i in range(ile_kosci): wyrzucone_kosci.append(random.randint(1,6)) pokaz_kosci() def pokaz_kosci(): print("____________________") print("Wyniki rzutu koścmi:") for i in range(len(wyrzucone_kosci)): print(f"Kość {i+1}: {wyrzucone_kosci[i]} oczek ") def mozliwe_punktowania(): mozliwe_opcje.clear() if 1 in wyrzucone_kosci: mozliwe_opcje.append(0) if 5 in wyrzucone_kosci: mozliwe_opcje.append(1) if len(wyrzucone_kosci) >= 3: for i in range(1,7): if wyrzucone_kosci.count(i) >= 3: global trzy_kosci trzy_kosci = i mozliwe_opcje.append(2) def kontynuacja_tury(): global liczba_kosci while liczba_kosci > 0: pokaz_kosci() mozliwe_punktowania() if len(mozliwe_opcje) >=1: print("0. Przydziel więcej punktów z tego rzutu") print("1. Przerzuć niezapunktowane kości, jeśli wykorzystałeś wszystkie to rzuć ponownie wszystkimi") print("2. Zakończ ture i dopisz punkty") wybor = int(input("Podaj wybor:")) if wybor == 0: przydziel_punkty() elif wybor == 1: if liczba_kosci == 0: liczba_kosci = 5 return True elif wybor == 2: return False def przydziel_punkty(): i = 1 for opcja in mozliwe_opcje: tekst = lista_opcji[opcja] print(f"{i}. {tekst}") i += 1 wpisany_wybor = 0 while not 0 < wpisany_wybor <= len(mozliwe_opcje): wpisany_wybor = int(input("Podaj wybor: ")) wpisany_wybor -= 1 global liczba_kosci global punkty_tury if mozliwe_opcje[wpisany_wybor] == 0: liczba_kosci -= 1 punkty_tury += 100 wyrzucone_kosci.remove(1) elif mozliwe_opcje[wpisany_wybor] == 1: liczba_kosci -= 1 punkty_tury += 50 wyrzucone_kosci.remove(5) elif mozliwe_opcje[wpisany_wybor] == 2: liczba_kosci -= 3 if trzy_kosci == 1: punkty_tury += 1000 else: punkty_tury += trzy_kosci*100 for i in range(3): wyrzucone_kosci.remove(trzy_kosci) czy_ktos_wygral = False while not czy_ktos_wygral: liczba_kosci = 5 punkty_tury = 0 czy_kontynuowac = True print(f"Punkty: gracz 1 - {punkty[0]}| gracz 2 - {punkty[1]}") print(f"Tura Gracza {gracz+1}") while czy_kontynuowac: rzut_koscmi(liczba_kosci) mozliwe_punktowania() if len(mozliwe_opcje) == 0: print("Niestety nie możesz zdobyć punktów. Twoja tura kończy się") punkty_tury = 0 break else: przydziel_punkty() print(f"Punkty zdobyte w tej turze: {punkty_tury}") czy_kontynuowac = kontynuacja_tury() punkty[gracz] += punkty_tury if punkty[gracz] >= 10000: print("Wygrałeś!!!") czy_ktos_wygral = True if gracz == 0: gracz = 1 else: gracz = 0