Exemplo n.º 1
0
def load_corridors() -> None:
    """Parse corridors out of the config file."""
    corridor_conf = COMPILE_CFG['CorridorNames']
    config = {}
    for group, length in CORRIDOR_COUNTS.items():
        for i in range(1, length + 1):
            config[group, i] = CorrDesc(
                name=corridor_conf.get('{}_{}_name'.format(group, i), ''),
                icon=corridor_conf.get('{}_{}_icon'.format(group, i), ''),
                desc=corridor_conf.get('{}_{}_desc'.format(group, i), ''),
            )
    set_corridors(config)
Exemplo n.º 2
0
def set_corridors(config: Dict[Tuple[str, int], CorrDesc]):
    """Set the corridor data based on the passed in config."""
    CORRIDOR_DATA.clear()
    CORRIDOR_DATA.update(config)

    default_icon = img.icon('clean/portal_door')

    corridor_conf = COMPILE_CFG['CorridorNames']

    for group, length in CORRIDOR_COUNTS.items():
        selector = CORRIDOR[group]
        for item in selector.item_list:
            if item.name == '<NONE>':
                continue  # No customisation for this.
            ind = int(item.name)

            data = config[group, ind]

            corridor_conf['{}_{}_name'.format(group, ind)] = data.name
            corridor_conf['{}_{}_desc'.format(group, ind)] = data.desc
            corridor_conf['{}_{}_icon'.format(group, ind)] = data.icon

            # Note: default corridor description
            desc = data.name or _('Corridor')
            item.longName = item.shortName = item.context_lbl = item.name + ': ' + desc

            if data.icon:
                item.large_icon = img.png(
                    'corr/' + data.icon,
                    resize_to=selectorWin.ICON_SIZE_LRG,
                    error=default_icon,
                )
                item.icon = img.png(
                    'corr/' + data.icon,
                    resize_to=selectorWin.ICON_SIZE,
                    error=default_icon,
                )
            else:
                item.icon = item.large_icon = default_icon

            if data.desc:
                item.desc = tkMarkdown.convert(data.desc)
            else:
                item.desc = CORRIDOR_DESC

        selector.set_disp()

    COMPILE_CFG.save_check()