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)
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)
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
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)