import multi_dice
from collections import Counter
class Player():
def __init__(self):
self.money: int = 0
self.dice_amount: int = 1
multiplier = {
1:1,
2:2.5,
3:7.5,
4:22.5,
5:67.5,
6:202.5
}
text = {
2: "DOUBLE",
3: "TRIPLE",
4: "QUADRUPLE",
5: "QUINTUPLE",
6: "SEXTUPLE"
}
upgrades: list = [75, 2500, 75000, 2500000, 75000000]
def roll(self):
dice_rolls: list = multi_dice.RollDice(f"{self.dice_amount}d6").rolls
current_die: int = 1
total:int = 0
for roll in dice_rolls:
print(f"Die {current_die}: {roll} (*{self.multiplier[current_die]} = {roll*self.multiplier[current_die]})")
total += roll*self.multiplier[current_die]
current_die += 1
occurence = max(Counter(dice_rolls).values())
if occurence >= 2:
print(f"\033[1;32m{self.text[occurence]}!!! ( {total} x {5**occurence if occurence > 2 else 5} )\033[0m\n")
total *= 5**occurence if occurence > 2 else 5
print(f"Total: ${total}\n")
self.money += total
print(f"Balance: ${self.money}\n")
if self.money >= self.upgrades[0]:
print("NEW DICE!")
self.upgrades.pop(0)
self.dice_amount += 1
game = Player()
while True:
key = input("q to quit, enter to continue:")
if key.lower() == "q":
break
game.roll()