コード例 #1
0
 def build_requirement_set(self) -> Optional[RequirementSet]:
     return RequirementSet([
         RequirementList.without_misc_resources(
             [row.current_individual
              for row in element.rows], self.resource_database)
         for element in self._elements
     ])
コード例 #2
0
def read_requirement_list(
    data: List[Dict],
    resource_database: ResourceDatabase,
) -> Optional[RequirementList]:
    individuals = read_array(
        data, lambda x: read_individual_requirement(
            x, resource_database=resource_database))
    return RequirementList.without_misc_resources(individuals,
                                                  resource_database)
コード例 #3
0
 def _replace(alternative: RequirementList) -> RequirementList:
     if alternative.get(resource) is not None:
         return RequirementList.without_misc_resources(
             database=database,
             items=[
                 (individual if individual.resource != database.difficulty_resource
                  else IndividualRequirement(database.difficulty_resource, new_difficulty, False))
                 for individual in alternative.values()
             ]
         )
     else:
         return alternative