VersionCategory.py 636 B

123456789101112131415
  1. from Core.project import Project
  2. from Interfaces import script,require
  3. mcv = require('MinecraftVersions') # 需求前置 MinecraftVersions
  4. MANIFSET = mcv.get_manifset()
  5. FULL_VERSIONS = MANIFSET.get('versions')
  6. ID_LIST = [version.get('id') for version in FULL_VERSIONS]
  7. @script('VersionCategory')
  8. def version_category(cat_name,proj:Project,**_):
  9. cards = list(filter(lambda card:isinstance(card.get('cats'),list)
  10. and cat_name in card.get('cats'), proj.get_all_card()))
  11. cardrefs = [card['card_id'] for card in cards]
  12. cardrefs.sort(key=lambda ver:ID_LIST.index(ver.split(':')[1]))
  13. return str.join(';',cardrefs)