如何创建一个敌人,当它从屏幕顶部落下时,你可以通过敲击来击败它



我正在使用android eclipse(java)制作一个游戏,敌人从屏幕顶部掉到底部。我已经成功地让它们摔倒了(有点太快,但目前已经足够好了),但我没能让它们对敲击做出正确的反应。起初,无论在哪里发生接触,所有的敌人都被击败了,但现在根本没有任何反应。我的问题是如何正确阅读玩家输入。感谢所有读到这篇文章的人。这是我的第一篇帖子,所以如果问题提出错误,我深表歉意。

public boolean onTouchEvent(MotionEvent e) {
    switch (e.getAction() & MotionEvent.ACTION_MASK) {
    // Player has touched the screen
    case MotionEvent.ACTION_DOWN:
        paused = false;
        // Has the player tapped an alien
        for (int i = 0; i < enemyNumb; i++) {
            if (aliens[i].getVisibility() & aliens[i].getX() == e.getX() & aliens[i].getY() == e.getY()) {  // Enemy defeated code goes here        

好吧,我通过使用一个框来检测里面的点击来实现它。这是我以前用的,但外星人被放在同一个盒子里,所以他们都消失了,这让我相信这是错误的。感谢cricket_007的建议。

    if ( aliens[i].getRect().contains(e.getX(), e.getY()))

最新更新