#!/usr/bin/env python3 # -*- coding: utf-8 -*- import pandas as pd import json from config_manager import ConfigManagerGUI def generate_weapon_config(): """生成武器配置文件""" print("=== 开始生成武器配置 ===") try: # 创建配置管理器实例 config_manager = ConfigManagerGUI() # 读取Excel文件 excel_file = "方块武器配置/方块武器配置表.xlsx" all_sheets = pd.read_excel(excel_file, sheet_name=None) # 解析武器配置 weapon_config = config_manager.parse_weapon_multi_sheet_data(all_sheets, excel_file) # 保存到JSON文件 output_file = "../weapons.json" with open(output_file, 'w', encoding='utf-8') as f: json.dump(weapon_config, f, indent=2, ensure_ascii=False) print(f"配置已保存到: {output_file}") print(f"共生成 {len(weapon_config.get('weapons', []))} 个武器配置") # 检查毛豆射手的配置 for weapon in weapon_config.get('weapons', []): if weapon.get('ID') == 'pea_shooter' or weapon.get('id') == 'pea_shooter': print("\n=== 毛豆射手配置 ===") print(f"武器ID: {weapon.get('ID', weapon.get('id'))}") print(f"武器名称: {weapon.get('名称', weapon.get('name'))}") has_upgrade = 'upgradeConfig' in weapon print(f"包含升级配置: {'是' if has_upgrade else '否'}") if has_upgrade: upgrade_config = weapon['upgradeConfig'] print(f"最大等级: {upgrade_config.get('maxLevel')}") levels = upgrade_config.get('levels', {}) print(f"升级等级数: {len(levels)}") if levels: print("前3个等级费用:") for level in sorted(levels.keys())[:3]: cost = levels[level].get('cost', 0) print(f" 等级{level}: {cost}") break else: print("未找到毛豆射手配置") except Exception as e: print(f"生成配置失败: {e}") import traceback traceback.print_exc() if __name__ == "__main__": generate_weapon_config()