Java中的碰撞问题(使用矩形)

时间:2016-05-21 06:33:22

标签: java collision-detection collision rectangles

我在Java中使用矩形之间的碰撞时遇到了麻烦。

我对编程很陌生,这是我的第一个“严肃”项目(它是pong lol的再创造)但无论如何,到目前为止,这是我的方法:

public static void Collision(){

    if(ballArea().intersects(Background.gameTop())){
        isGoingUp = false;
        System.out.println("hit");
    } else if(ballArea().intersects(Background.gameBottom())){
        isGoingUp = true;
        System.out.println("hit");
    } else if(ballArea().intersects(Background.gameRight())){
        isGoingRight = false;
        System.out.println("hit");
    } else if(ballArea().intersects(Background.gameLeft())){
        isGoingUp = true;
        System.out.println("hit");
    } 
}

public static Rectangle ballArea(){

    return new Rectangle(ballXPos, ballYPos, ballXSize, ballYSize);
}

到目前为止,屏幕两侧都有矩形,但我无法让碰撞工作。谢谢您的帮助。 :)

//编辑,如果您需要更多

,我可以发布更多内容

1 个答案:

答案 0 :(得分:0)

我发现了问题。

矩形的定位有一个简单的错误,我在if语句中有一个错误。还在学习! = d