【问题标题】:Single Jump function单跳功能
【发布时间】:2013-10-16 21:27:58
【问题描述】:

我正在用andengine 开发一款游戏。我希望我的玩家只能跳一次。所以我使用了联系人列表器。但它并不总是有效。大部分都有效,但并非总是如此。请检查代码并告诉我我的错误。

我有播放器对象和十个 box2d 静态对象。我不明白这个联系人监听器如何检测播放器和这些盒子之间的碰撞。因为我也有其他盒子。例如:播放器、方形和圆形。为什么这个接触监听器会在玩家和广场之间检测到?为什么不在圆形和方形之间?

    private ContactListener contactListener()
    {
        ContactListener contactListener = new ContactListener()
        {
            @Override
            public void beginContact(Contact contact)
            {
                player.setJumping(false);
            }

            @Override
            public void endContact(Contact contact)
            {
                player.setJumping(true);

            }   
         };
         return contactListener;
    }

【问题讨论】:

  • 从联系人中,您可以获得碰撞的两个灯具。然后您可以检查它们是哪些灯具。
  • 相信我这个玩家和其他人之间的代码检查。怎么会这样?
  • 您发布的代码根本没有检查任何内容。例如在 beginContact 函数中,您应该在调用 player.setJumping 之前检查其中一个固定装置是播放器,对吗?否则,即使其他一些东西开始接触,玩家状态也会改变。
  • 我同意你的看法。我该如何检查?
  • 就像我在上面的第一条评论中所说的那样。同样的问题:stackoverflow.com/questions/11835981/…

标签: android box2d collision-detection andengine


【解决方案1】:

我认为您想将碰撞体与非碰撞体分开。这link 可以帮助您

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-05
    • 2020-04-25
    相关资源
    最近更新 更多