import { _decorator, Component, Node } from 'cc'; import { ConfigManager } from '../Core/ConfigManager'; import { JsonConfigLoader } from '../Core/JsonConfigLoader'; import { BundleLoader } from '../Core/BundleLoader'; const { ccclass, property } = _decorator; @ccclass('EnemyLoadTest') export class EnemyLoadTest extends Component { start() { // 延迟5秒后开始测试,确保所有系统都已初始化 this.scheduleOnce(() => { this.testEnemyLoading(); }, 5); } private async testEnemyLoading() { console.log('=== 开始测试敌人配置加载 ==='); try { // 测试1: 直接使用BundleLoader加载data bundle console.log('测试1: 加载data bundle'); const bundleLoader = BundleLoader.getInstance(); await bundleLoader.loadBundle('data'); console.log('✓ data bundle加载成功'); // 测试2: 使用JsonConfigLoader加载enemies配置 console.log('测试2: 使用JsonConfigLoader加载enemies配置'); const jsonLoader = JsonConfigLoader.getInstance(); const enemiesConfig = await jsonLoader.loadConfig('enemies'); if (enemiesConfig) { console.log('✓ enemies配置加载成功'); console.log('enemies配置类型:', typeof enemiesConfig); console.log('是否为数组:', Array.isArray(enemiesConfig)); if (Array.isArray(enemiesConfig)) { console.log('敌人数量:', enemiesConfig.length); console.log('前3个敌人ID:', enemiesConfig.slice(0, 3).map(e => e.id)); } else { console.log('enemies配置结构:', Object.keys(enemiesConfig)); } } else { console.error('✗ enemies配置加载失败'); } // 测试3: 检查ConfigManager的状态 console.log('测试3: 检查ConfigManager状态'); const configManager = ConfigManager.getInstance(); const allEnemies = configManager.getAllEnemies(); console.log('ConfigManager中的敌人数量:', allEnemies.length); if (allEnemies.length > 0) { console.log('✓ ConfigManager成功获取敌人配置'); console.log('前3个敌人ID:', allEnemies.slice(0, 3).map(e => e.id)); } else { console.error('✗ ConfigManager未能获取敌人配置'); } } catch (error) { console.error('测试过程中发生错误:', error); } console.log('=== 敌人配置加载测试完成 ==='); } }