在2D java游戏中交叉和矩形的麻烦

时间:2018-03-14 04:30:29

标签: java java-2d rectangles

我的游戏在循环中运行。我在制作游戏的地板时遇到了麻烦,我目前有重力效应所以if(falling = true)玩家会向下移动。我在我的角色中制作了矩形,以检测顶部getTop(),底部getBottom(),右getRight()和左getLeft()交叉点。问题是我不知道如何使用矩形创建我的地板。我不知道如何创建每32个可检测到的像素的矩形。

for(int i = 0; i < 10; i++){
    Rectangle block = new Rectangle(blockX + 32 * i, blockY, 32, 32)
}

这成功地创建了矩形并正确渲染它们。但是当我在我的tick()方法中测试交集时,它只适用于最后创建的矩形。 (我的勾选方法的例子)

if(getBottom().intersects(block)){
   falling = false;
   playerY = blockY+32;
}

if(!getTop().intersects(block)){
   falling = true;
}

无论如何我可以制作多个(可能数百个)具有相同属性的矩形,但都可以检测到它们的相交。

0 个答案:

没有答案