def build_library_trees(): """Builds the DependencyTrees for the LibraryActions.""" nodes = __build_library_nodes() trees = {} for node in nodes: if ( node.unlock_condition == "True" or node.unlock_condition.find("or True") != -1 or node.unlock_condition == "False" or node.unlock_condition.find("and False") != -1 ): t = DependencyTree() t.create_node(node.action, level=node.level, identifier=node.identifier) trees[node.identifier] = t for node in nodes: slugs = __get_dependent_action_slugs(node) for slug in slugs: for k in list(trees): if trees[k].get_node(slug): trees[k].add_node(node, slug) for node in nodes: slugs = __get_dependent_action_slugs(node) for slug in slugs: for k in list(trees): if trees[k].get_node(slug): trees[k].add_node(node, slug) return trees
def build_designer_grid_trees(draft): """Builds the DependencyTrees for the DesignerActions in the DesignerGrid.""" nodes = __build_designer_grid_nodes(draft) trees = {} for node in nodes: if node.unlock_condition: if ( node.unlock_condition == "True" or node.unlock_condition.find("or True") != -1 or node.unlock_condition == "False" or node.unlock_condition.find("and False") != -1 ): t = DependencyTree() t.create_node(node.action, level=node.level, identifier=node.identifier) trees[node.identifier] = t for i in range(10): _ = i for node in nodes: slugs = __get_dependent_action_slugs(node) for slug in slugs: for k in list(trees): if trees[k].get_node(slug): trees[k].add_node(node, slug) sorted_trees = OrderedDict(sorted(trees.items(), key=lambda t: -len(t[1]))) return sorted_trees
def build_designer_grid_trees(draft): """Builds the DependencyTrees for the DesignerActions in the DesignerGrid.""" nodes = __build_designer_grid_nodes(draft) trees = {} for node in nodes: if node.unlock_condition: if node.unlock_condition == "True" or node.unlock_condition.find("or True") != -1 \ or node.unlock_condition == "False" or node.unlock_condition.find("and False") != -1: t = DependencyTree() t.create_node(node.action, level=node.level, identifier=node.identifier) trees[node.identifier] = t for i in range(10): _ = i for node in nodes: slugs = __get_dependent_action_slugs(node) for slug in slugs: for k in list(trees): if trees[k].get_node(slug): trees[k].add_node(node, slug) sorted_trees = OrderedDict(sorted(trees.items(), key=lambda t: -len(t[1]))) return sorted_trees
def build_library_trees(): """Builds the DependencyTrees for the LibraryActions.""" nodes = __build_library_nodes() trees = {} for node in nodes: if node.unlock_condition == "True" or node.unlock_condition.find("or True") != -1 \ or node.unlock_condition == "False" or node.unlock_condition.find("and False") != -1: t = DependencyTree() t.create_node(node.action, level=node.level, identifier=node.identifier) trees[node.identifier] = t for node in nodes: slugs = __get_dependent_action_slugs(node) for slug in slugs: for k in list(trees): if trees[k].get_node(slug): trees[k].add_node(node, slug) for node in nodes: slugs = __get_dependent_action_slugs(node) for slug in slugs: for k in list(trees): if trees[k].get_node(slug): trees[k].add_node(node, slug) return trees