// 导入游戏的基础配置文件,该文件包含游戏的宽度、高度、渲染模式等基本设置 import gameConfig from './config/gameConfig.js'; // 导入游戏场景类 import BootScene from './scenes/BootScene.js'; import GameScene from './scenes/GameScene.js'; // 导入移动测试场景 import MovementTestScene1 from './scenes/MovementTestScene1.js'; import MovementTestScene2 from './scenes/MovementTestScene2.js'; import MovementTestScene3 from './scenes/MovementTestScene3.js'; import MovementTestScene4 from './scenes/MovementTestScene4.js'; import MovementTestScene5 from './scenes/MovementTestScene5.js'; import MovementTestScene6 from './scenes/MovementTestScene6.js'; // 导入物品系统测试场景 import ItemTestScene from './scenes/ItemTestScene.js'; // 导入背包系统测试场景 import InventoryTestScene from './scenes/InventoryTestScene.js'; // 导入物品列表菜单测试场景 import ItemListTestScene from './scenes/ItemListTestScene.js'; // 导入资源包测试场景 import ResourceTestScene from './scenes/ResourceTestScene.js'; // 导入地图编辑测试场景 import MapEditTestScene from './scenes/MapEditTestScene.js'; // 导入角色动画测试场景 import CharacterAnimationTestScene from './scenes/CharacterAnimationTestScene.js'; // 创建游戏的最终配置对象 const config = { // 使用扩展运算符(...)将gameConfig中的所有配置项复制到当前对象中 // 这相当于把gameConfig的内容合并到这个新的config对象里 ...gameConfig, // 指定游戏使用的场景列表,包括主场景和所有测试场景 scene: [ BootScene, GameScene, MovementTestScene1, MovementTestScene2, MovementTestScene3, MovementTestScene4, MovementTestScene5, MovementTestScene6, ItemTestScene, InventoryTestScene, ItemListTestScene, ResourceTestScene, MapEditTestScene, CharacterAnimationTestScene ] }; // 创建一个新的Phaser游戏实例,并将配置对象传入 // 同时将游戏实例赋值给window.game,这样在浏览器的开发者工具中可以直接访问游戏实例 window.game = new Phaser.Game(config); // 添加一个函数,用于从控制台切换到测试场景 window.startTest = function(sceneIndex = 1) { const scenes = window.game.scene.scenes; if (sceneIndex >= 0 && sceneIndex < scenes.length) { window.game.scene.start(scenes[sceneIndex]); console.log(`已切换到测试场景${sceneIndex}`); } else { console.error(`测试场景${sceneIndex}不存在`); } };