mc_version_category.py 669 B

1234567891011121314151617
  1. """
  2. 获取版本分类的卡片ID列表
  3. """
  4. from homepagebuilder.interfaces import script,require
  5. mcv = require('minecraft_version') # 需求前置 MinecraftVersions
  6. MANIFSET = mcv.get_manifset()
  7. FULL_VERSIONS = MANIFSET.get('versions')
  8. ID_LIST = [version.get('id') for version in FULL_VERSIONS]
  9. @script('VersionCategory')
  10. def version_category(cat_name,context,**_):
  11. cards = list(filter(lambda card:isinstance(card.get('cats'),list)
  12. and cat_name in card.get('cats'), context.project.get_all_card()))
  13. cardrefs = [card['card_id'] for card in cards]
  14. cardrefs.sort(key=lambda ver:ID_LIST.index(ver.split(':')[1]))
  15. return str.join(';',cardrefs)