我目前正在AndEngine中构建游戏,但是碰撞检测似乎有些偏离。 它在大多数情况下都起作用,但是似乎与一个对象发生碰撞时,它不会做其他事情。 这很难解释,而且非常不可预测。 如果汽车上雪了,它应该减速。 如果汽车结冰,则应加快速度。

for (int i = 0; i < rManager.carArray.length; i++)
{
if (rManager.getInstance().snowArray[0].getSnowSprite().collidesWith(rManager.getInstance().carArray[i].getCarSprite()))
{
    Log.e("SNOW", "snow 0 collided with " + rManager.getInstance().carArray[i].ToString());
    rManager.getInstance().carArray[i].setCarSpeed(0.1f);
    break;
}

if (rManager.getInstance().iceArray[0].getIceSprite().collidesWith(rManager.getInstance().carArray[i].getCarSprite()))
{
    Log.e("ICE", "ice 0 collided with " + rManager.getInstance().carArray[i].ToString());
    rManager.getInstance().carArray[i].setCarSpeed(1f);
    break;
}

else
{
    rManager.getInstance().carArray[i].setCarSpeed(0.5f);
}
}

我的代码有什么问题吗? 目前,两个敌方阵只有1个元素。 这就是为什么我只检查0。谢谢!

===============>>#1 票数:0 已采纳

您应该删除break; 碰撞检测中if测试。 (或者,如果您只想下雪或冰,而不是同一辆车都想要冰或冰,则将其更改为继续操作...不确定在这方面游戏的工作方式)。

  ask by opposite of you translate from so

未解决问题?本站智能推荐:

1回复

两个实体之间的碰撞

我正在学习和学习引擎。 我正在创建一个示例游戏。 在这个游戏中有一架直升机,可以吃午餐。 有一台随直升机的运动改变其旋转的出租枪。 有一个导弹午餐按钮。 导弹午餐按钮发射导弹。 我想检测出租赁枪和通货膨胀之间的碰撞。 但是我所知道的所有冲突都必须在onupdatemanaged()
1回复

如何检测碰撞并在碰撞后移除身体和图像

我是AndEngine的新手,试图检测碰撞并在碰撞时破坏车身。 到目前为止,我已经尝试过了。 但是它不起作用,并且总是进入其他部分。 我该怎么办? 我已经尝试使用contactListener,但是它变得太凌乱且难以控制。 我目前正在andengine中使用eclipse和phy
2回复

andengine gles2中的碰撞检测

我试图在andengine Gles2的TMXmap示例中的所有仙人掌上的仙人掌属性项上设置碰撞检测。 我尝试了各种方法-谁能给我一种有效的方法? 原始代码Tmxmaps和引擎 一种建议的解决方案: 碰撞检测 另一个建议的解决方案: from andengine.org
2回复

使用LinkedList中的sprite检测碰撞

嘿家伙,所以这里是我的困境。 我有一个动画精灵,我正在使用动画监听器来知道动画何时结束或最后一帧。 当动画在最后一帧时,我想删除它碰撞的任何物体。 所以这就是我现在遇到的问题: 我正在使用TimeHandler来检测碰撞,但问题是我有一个随机数量的可移动对象添加到游戏中,
1回复

物理物体的碰撞检测

我有从xml级别文件加载的级别。 我添加了块。 块的数量取决于级别。 我想做的是,如果这些块中的任何一个相互碰撞,或者任何其他物体发出声音。 我将如何去做呢? 我有一个循环将对象添加到关卡的方法。
1回复

在Andengine中发生一定次数的碰撞后,如何分离精灵?

我正在从事这款游戏,在这种游戏中,您可以防止发射塔被发射的导弹击中3次。 变量g是计数器。 一旦达到3,我希望塔消失。 相反,它会被击中一次然后消失。 我猜这是因为g = g +! 可能循环很多次,而不是一次循环一次。 有什么更好的解决办法? 我将不胜感激。
1回复

池回收错误2个精灵同时碰撞到一个精灵

我有一个射击游戏,您向相反的方向射击两枚子弹,因此,如果敌人靠近子弹的起点(敌人在子弹的起点附近),则会发生错误, 这是我的代码: 错误日志:
2回复

BOX2D-与Monster正确碰撞

我正在使用AndEngine及其BOX2D扩展程序来开发2D侧滚动Android游戏。 我有播放器机身,带有2个“脚”和“头”传感器,因此我可能确切知道播放器的哪一侧碰到了不同的物体,等等。下面的图像显示了它是如何工作的: 它可以很好地检查玩家当前是否正在用脚接触地面,因此他可以跳
2回复

如何防止碰撞后身体移动[Box2D] [AndEngine]

我正在使用AndEngine和Box2D制作游戏。 我正在制作一种乒乓球式的足球比赛,我希望门将在球撞击时表现得像一个静止的身体。 当它们碰撞时,keper也会移动,这使我的游戏无法进行。 我尝试使用contactListener进行操作,但是它不起作用。
2回复

TMX Tiled Andengine Android-致命意外-

刚开始使用tmx平铺的地图文件作为2d平台游戏的地图。 这是我到目前为止的代码。 但这给了我这个错误-致命异常:UpdateThread和java.lang.IllegalArgumenetException:未找到属性“宽度”的值 我的tmx文件有问题吗? 如何编码或如何设置