AndEngine:如何知道Class(扩展Sprite)是否与另一个类冲突(扩展Sprite)

时间:2015-02-21 11:17:17

标签: android andengine

我有两个类,Enemy.java扩展“Sprite”以及扩展“Sprite”的另一个类Bullet.java。 现在,如果我想检查一个敌人的物体是否与子弹的物体相撞,

EnemyObj.collidesWith(BulletObj)

但是,在我的情况下,我有太多的子弹和太多的敌人。 我可以为每个EnemyObj& BulletObjs。

for(int i=0; i<10; i++){
    for(int i=0; i<10; i++){
        if( EnemyObj[i].collidesWith(BulletObj[j]) ) {
            // Do something
        }
    }
}

但是我想要一个通用的解决方案,如果有这样的话。

if(EnemyClass.collidesWith(BulletClass)){
    // do something
}

1 个答案:

答案 0 :(得分:1)

处理实体之间的碰撞/接触,我们将使用ContactListener。如果你想在Enemy和Bullet之间的联系使用ContactListener

之后执行行动