Files
MaaAssistantArknights/tools/InfrastEfficientCheck/InfrastEfficientCheck.py
2025-09-14 16:20:15 +08:00

61 lines
2.0 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import json
def find_skills_without_efficient(json_data):
"""
分析JSON数据找出所有设施中没有efficient字段的技能
"""
results = {}
# 遍历所有设施
for facility, facility_data in json_data.items():
# 检查是否有skills字段
if 'skills' in facility_data:
skills_without_efficient = []
# 遍历该设施的所有技能
for skill_id, skill_data in facility_data['skills'].items():
# 检查技能是否有efficient字段
if 'efficient' not in skill_data:
skill_info = {
'id': skill_id,
'name': skill_data.get('name', ['未知名称'])[0] # 取第一个名称
}
skills_without_efficient.append(skill_info)
# 如果该设施有缺少efficient的技能添加到结果中
if skills_without_efficient:
results[facility] = skills_without_efficient
return results
def main():
try:
with open('../../resource/infrast.json', 'r', encoding='utf-8') as file:
data = json.load(file)
except FileNotFoundError:
print("未找到 infrast.json 文件")
return
except json.JSONDecodeError:
print("错误JSON 文件格式不正确")
return
# 分析数据
missing_efficient_skills = find_skills_without_efficient(data)
# 输出结果
if not missing_efficient_skills:
print("所有技能都有 efficient 字段")
else:
print("缺少 efficient 字段的技能:")
print("=" * 50)
for facility, skills in missing_efficient_skills.items():
print(f"\n设施: {facility}")
print("-" * 30)
for skill in skills:
print(f"技能 ID: {skill['id']}")
print(f"技能名称: {skill['name']}")
print()
main()