来自不同方向的重力奇怪行为很重要js Phaser 3

Odd behaviour in gravity from different directions matter js phaser 3

我正在制作一款平台游戏,我在其中有一个可以让你飞翔的道具。在碰撞时,我使用 powerup.gameObject.destroy() 移除了能量提升并使用 player.setIgnoreGravity(true) 禁用了重力。现在,当我从不同方向触摸 powerup 时,它会产生不同的结果,如下所示。

这是一个最小的例子:https://jsfiddle.net/prateek_1/rsoj0h2z/

非常感谢任何帮助。谢谢!

好吧,代码可以正常工作,原因如下:

场景 1)
你触摸 powerup 没有 触摸 platform (playertouchingground==false) -> 没有重力,玩家不会掉到地上。并且因为玩家在空中你不能跳。

场景 2)
你在触摸 platform 的同时触摸 powerup (playertouchingground==true) -> 没有重力,现在你可以跳跃,当你跳跃时你会飞走,因为没有任何东西“拉”下玩家.

问题是,当物体碰撞时,你希望发生什么?