// 导入游戏的基础配置文件,该文件包含游戏的宽度、高度、渲染模式等基本设置 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'; // 创建游戏的最终配置对象 const config = { // 使用扩展运算符(...)将gameConfig中的所有配置项复制到当前对象中 // 这相当于把gameConfig的内容合并到这个新的config对象里 ...gameConfig, // 指定游戏使用的场景列表,包括主场景和所有测试场景 scene: [ BootScene, GameScene, MovementTestScene1, MovementTestScene2, MovementTestScene3, MovementTestScene4, MovementTestScene5, MovementTestScene6, ItemTestScene ] }; // 创建一个新的Phaser游戏实例,并将配置对象传入 // 同时将游戏实例赋值给window.game,这样在浏览器的开发者工具中可以直接访问游戏实例 window.game = new Phaser.Game(config); // 添加一个函数,用于从控制台切换到测试场景 window.startMovementTest = function(sceneIndex = 1) { const sceneKey = `MovementTestScene${sceneIndex}`; if (window.game.scene.getIndex(sceneKey) !== -1) { window.game.scene.start(sceneKey); console.log(`已切换到测试场景${sceneIndex}`); } else { console.error(`测试场景${sceneIndex}不存在`); } };