gpt4 book ai didi

javascript - Phaser3 添加状态会引发错误。无法读取未定义的属性 'add'

转载 作者:行者123 更新时间:2023-12-03 02:02:16 31 4
gpt4 key购买 nike

我目前正在尝试使用 Phaser 制作游戏,并且正在遵循在线教程。即使我们有相同的代码,视频中的人也没有收到此错误。会不会和Phaser版本有关?或者是什么导致了这个错误?

这是错误:未捕获类型错误:无法读取未定义的属性“add”

这是抛出该问题的 html 文件的代码。 @ game.state.add('启动', Game.Boot);

<!doctype html>
<html>
<meta charset="UTF-8" />
<title>My example game</title>
<!-- <script src="//cdn.jsdelivr.net/npm/phaser@3.2.1/dist/phaser.js"></script> -->
<script src="phaser.js"></script>
<script src="Boot.js"></script>
<script src="Preloader.js"></script>
<script src="MainMenu.js"></script>
<script src="Level1.js"></script>
<body>
<script type="text/javascript">
window.onload = function() {
var game = new Phaser.Game(800, 600, Phaser.CANVAS, '');

game.state.add('Boot', Game.Boot); // <----
game.state.add('Preloader', Game.Preloader);
game.state.add('MainMenu', Game.MainMenu);
game.state.add('Level1', Game.Level1);

game.state.start('Boot');

console.log("Done!");
};
</script>
</body>
</html>

最佳答案

根据您失踪的评论head还有个问题,您似乎正在使用 Phaser 3。

在 Phaser 3 中,状态管理器被场景取代。所以我会验证您引用的是 Phaser 2(理想情况下为 CE)或 3。自 phaser.state未定义,这表明正在使用版本 3。

如果您想继续使用 Phaser 3,请查看官方教程:https://phaser.io/tutorials/making-your-first-phaser-3-game .

您还应该添加 <head></head>到你的标记。我相信浏览器应该处理这些缺失的事实,但即使是教程工作也应该遵循良好的做法。

关于javascript - Phaser3 添加状态会引发错误。无法读取未定义的属性 'add',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49956348/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com