// 创建配置管理器实例
ConfigManager configManager;

// 显示所有配置
std::cout << std::endl;
configManager.printAllConfigs();

// 显示分类配置
std::cout << std::endl;
configManager.printHitEffectConfigs();

std::cout << std::endl;
configManager.printModelScaleConfigs();

// 测试配置获取
std::cout << std::endl << "=== 配置获取测试 ===" << std::endl;
float hitEffectScale = configManager.getFloatConfig("CharacterHitEffectScale");
bool hitboxEnabled = configManager.getBoolConfig("CharacterHitboxScale");
float modelScale = configManager.getFloatConfig("CharacterModelScale");

std::cout << "当前受击特效缩放: " << hitEffectScale << std::endl;
std::cout << "命中框缩放状态: " << (hitboxEnabled ? "已启用" : "已禁用") << std::endl;
std::cout << "模型缩放倍数: " << modelScale << "x" << std::endl;

// 测试配置修改
std::cout << std::endl << "=== 配置修改测试 ===" << std::endl;
configManager.setFloatConfig("CharacterModelScale", 2.0f);
configManager.setBoolConfig("CharacterHitModelRangeBoost", false);

std::cout << "修改后模型缩放: " << configManager.getFloatConfig("CharacterModelScale") << "x" << std::endl;
std::cout << "修改后受击模型范围提升: " << 
    (configManager.getBoolConfig("CharacterHitModelRangeBoost") ? "开启" : "关闭") << std::endl;

// 测试配置保存和加载
std::cout << std::endl << "=== 配置文件操作测试 ===" << std::endl;
configManager.saveToFile("game_config.ini");

// 创建新的配置管理器并加载配置
ConfigManager newConfigManager;
newConfigManager.loadFromFile("game_config.ini");
newConfigManager.printModelScaleConfigs();
