diff --git a/exercises/ex06/ex06b.py b/exercises/ex06/ex06b.py index e69de29..85da8e7 100644 --- a/exercises/ex06/ex06b.py +++ b/exercises/ex06/ex06b.py @@ -0,0 +1,51 @@ +import random +import zombiedice + + +class MyZombie: + def __init__(self, name): + self.name = name + + def turn(self, gameState): + diceRollResults = zombiedice.roll() + turns = 0 + brains = 0 + shotgun = 0 + while diceRollResults is not None: + turns += 1 + brains += diceRollResults["brains"] + shotgun += diceRollResults["shotgun"] + again = True if random.randrange(0, 1) == 1 else False + roll_again = True + match self.name: + case "bot1": + roll_again = again + case "bot2": + if brains >= 2: + roll_again = False + case "bot3": + if shotgun >= 2: + roll_again = False + case "bot4": + if shotgun >= 2 or turns == 4: + roll_again = False + else: + roll_again = again + case "bot5": + if shotgun > brains: + roll_again = False + if roll_again: + diceRollResults = zombiedice.roll() + else: + break + + +zombies = ( + MyZombie(name="bot1"), + MyZombie(name="bot2"), + MyZombie(name="bot3"), + MyZombie(name="bot4"), + MyZombie(name="bot5"), +) + +zombiedice.runTournament(zombies=zombies, numGames=1000)