| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- #!/usr/bin/env python3
- # -*- coding: utf-8 -*-
- import pandas as pd
- import json
- from config_manager import ConfigManagerGUI
- def test_weapon_upgrade_parsing():
- """测试武器升级费用配置解析"""
- print("=== 测试武器升级费用配置解析 ===")
-
- # 创建配置管理器实例
- config_manager = ConfigManagerGUI()
-
- # 读取Excel文件
- excel_file = "方块武器配置/方块武器配置表.xlsx"
-
- try:
- # 读取所有工作表
- all_sheets = pd.read_excel(excel_file, sheet_name=None)
- print(f"找到工作表: {list(all_sheets.keys())}")
-
- # 解析武器配置
- weapon_config = config_manager.parse_weapon_multi_sheet_data(all_sheets, excel_file)
-
- print(f"\n解析结果: 共{len(weapon_config.get('weapons', []))}个武器")
-
- # 检查每个武器的升级配置
- for weapon in weapon_config.get('weapons', []):
- weapon_id = weapon.get('ID', weapon.get('id', 'Unknown'))
- weapon_name = weapon.get('名称', weapon.get('name', 'Unknown'))
- has_upgrade = 'upgradeConfig' in weapon
-
- print(f"武器: {weapon_id} ({weapon_name}) - 升级配置: {'✓' if has_upgrade else '✗'}")
-
- if has_upgrade:
- upgrade_config = weapon['upgradeConfig']
- levels = upgrade_config.get('levels', {})
- print(f" 最大等级: {upgrade_config.get('maxLevel', 0)}")
- print(f" 升级等级数: {len(levels)}")
- if levels:
- # 显示前3个等级的费用
- for level in sorted(levels.keys())[:3]:
- cost = levels[level].get('cost', 0)
- print(f" 等级{level}费用: {cost}")
- else:
- print(" 无升级配置")
- print()
-
- # 特别检查毛豆射手
- pea_shooter = None
- for weapon in weapon_config.get('weapons', []):
- if weapon.get('ID') == 'pea_shooter' or weapon.get('id') == 'pea_shooter':
- pea_shooter = weapon
- break
-
- if pea_shooter:
- print("=== 毛豆射手详细信息 ===")
- print(f"原始数据: {json.dumps(pea_shooter, indent=2, ensure_ascii=False)}")
- else:
- print("未找到毛豆射手配置")
-
- except Exception as e:
- print(f"测试失败: {e}")
- import traceback
- traceback.print_exc()
- if __name__ == "__main__":
- test_weapon_upgrade_parsing()
|