Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用精灵的X和Y位置;“扔”;相位器3中的物理?_Javascript_Collision Detection_Phaser Framework_Matter.js - Fatal编程技术网

Javascript 如何使用精灵的X和Y位置;“扔”;相位器3中的物理?

Javascript 如何使用精灵的X和Y位置;“扔”;相位器3中的物理?,javascript,collision-detection,phaser-framework,matter.js,Javascript,Collision Detection,Phaser Framework,Matter.js,我正在用Phaser3做一个游戏,特别是物质物理引擎。我试着按照这篇关于fling物理学的教程学习 编辑-我越来越近了。现在没有错误,但是,没有绳索被射出您可以获得精灵位置X&Y,如下所示: hero.body.position.x hero.body.position.y 让我们看看这个英雄 “无法读取未定义的属性“x”表示在this.hero.position.x中x之前声明的属性未找到,并且可能不存在于其父属性中。在本例中,this.hero不包含position属性 我们可以在代码运行

我正在用Phaser3做一个游戏,特别是物质物理引擎。我试着按照这篇关于fling物理学的教程学习


编辑-我越来越近了。现在没有错误,但是,没有绳索被射出

您可以获得
精灵
位置X&Y,如下所示:

hero.body.position.x
hero.body.position.y

让我们看看这个英雄

“无法读取未定义的属性“x”表示在this.hero.position.x中x之前声明的属性未找到,并且可能不存在于其父属性中。在本例中,this.hero不包含position属性

我们可以在代码运行时在控制台中键入this.hero的属性来查看它:

您可以看到,位置不作为可访问属性存在

在您的情况下,需要使用body属性

此属性包括包含x和y坐标的位置属性

作为结论,使用以下行访问this.hook的x和y坐标:

this.hero.body.position.x
这个。英雄。身体。位置。y

(这个答案是对这个问题答案的回应)

还是不走运。我仍然得到
game.js:88未捕获类型错误:无法读取initialize.h.emit(phaser.min.js:1)initialize.processDownEvents(phaser.min.js:1)initialize.update(phaser.min.js:1)initialize.updateInputPlugins(phaser.min.js:1)中未定义的属性“x”在HtmlCanvaseElement.onMouseDown(phaser.min.js:1)的initialize.queueMouseDown(phaser.min.js:1)
Add-in-console.log(this.hero)中的某个地方,查看this.hero是否有body属性和position属性。仍然没有运气。我仍然得到
game.js:88未捕获类型错误:无法读取initialize.h.emit(phaser.min.js:1)initialize.processDownEvents(phaser.min.js:1)initialize.update(phaser.min.js:1)initialize.updateInputPlugins(phaser.min.js:1)中未定义的属性“x”在initialize.queueMouseDown(phaser.min.js:1)在htmlcanvaseelement.onMouseDown(phaser.min.js:1)
@robertmith我现在正在工作,如果你把它放在你的github repo中,我今晚可以看一看。让我知道…我能做到。我会让你知道,一旦我更新它。谢谢,这是回购协议。game.js是我试图复制并用精灵实现的代码,而spiderman_game.js是当前的代码。谢谢你,我不想麻烦你,只是想让你保持更新。现在,我的精灵射出球,但不射出球后的绳子。回购协议中的当前代码中没有显示错误。您所说的“没有绳索被射出”是什么意思?我需要更多的上下文和解释来帮助您调试。@ManuelAbascal拦网或“钩子”是被射出和粘住的,但是,应该攻击玩家和钩子之间的绳子没有出现。老师在聊天中回答你,这会让你更开心吗
hero.body.position.x
hero.body.position.y