コード例 #1
0
ファイル: check_maker.py プロジェクト: nirvana-game/arxcode
    def get_roll_value_for_stat(self) -> int:
        if not self.stat:
            return 0

        only_stat = not self.skill
        return StatWeight.get_weighted_value_for_stat(self.stat_value,
                                                      only_stat)
コード例 #2
0
ファイル: check_maker.py プロジェクト: nirvana-game/arxcode
 def get_roll_value_for_stat(self) -> int:
     """
     Looks up how much to modify our roll by based on our stat. We use a lookup table to
     determine how much each level of the stat is weighted by. Weight may be different if
     there is no skills for this roll.
     """
     if not self.stat:
         return 0
     base = self.character.traits.get_stat_value(self.stat)
     # if we don't have a skill defined, we're rolling stat alone, and the weight may be different
     only_stat = not self.skill
     return StatWeight.get_weighted_value_for_stat(base, only_stat)
コード例 #3
0
    def get_total_for_attack_check(self):
        from world.stat_checks.models import StatWeight

        value = 0
        if self.attack_stat:
            stat_only = not self.attack_skill
            level = self.char.traits.get_stat_value(self.attack_stat)
            value += StatWeight.get_weighted_value_for_stat(
                level, stat_only, True)
        if self.attack_skill:
            level = self.char.traits.get_skill_value(self.attack_skill)
            value += StatWeight.get_weighted_value_for_skill(level, True)
        return value
コード例 #4
0
ファイル: check_maker.py プロジェクト: nirvana-game/arxcode
    def get_roll_value_for_stat(self) -> int:
        if not self.stat:
            return 0

        stat_val = self.retainer.dbobj.traits.get_stat_value(self.stat)
        return StatWeight.get_weighted_value_for_stat(stat_val, not self.skill)