Пример #1
0
    def __init__(self, attBonusRange=range(5), defTargetRange=range(4,13), vantage=None):
        rl(Attacks)
        self.repetitions = 100
        self.attBonusRange = attBonusRange
        self.defTargetRange = defTargetRange
        self.vantage = vantage

        self.tests = {}
        count = 0
        for attBonus in attBonusRange:
            self.tests[attBonus] = {}
            for defTarget in defTargetRange:
                attempts = [Attacks.Attack(targetDefence=defTarget,attackBonus=attBonus,vantage=vantage) for x in range(self.repetitions)]
                successes = [attempt.hitResult for attempt in attempts].count(True)
                failures = [attempt.hitResult for attempt in attempts].count(False)
                percent = successes/self.repetitions
                self.tests[attBonus][defTarget] = {'attempts':attempts,'successes':successes,'failures':failures,'percent':percent}
                count = count + 1
                sys.stdout.write("Test progress: %d   \r" % (count))
                sys.stdout.flush()