我对java很陌生。我正在努力做到这一点,以便我可以用箭头键控制一个球,然后如果你与另一个球碰撞,它会在控制台中打印一条线,说“你输了”或类似的东西。
我已经完成了移动,但我在如何让两个球相撞方面有点挣扎。到目前为止,我已经尝试过这个(我想我在球周围放了一个矩形,但我真的不知道!):
public void collision() {
Rectangle rectP = new Rectangle(player.x, player.y, player.WIDTH, player.HEIGHT);
Rectangle rectE = new Rectangle(Enemy.ex, Enemy.ey, Enemy.WIDTH, Enemy.HEIGHT);
if(rectP.intersects(rectE))
{
System.out.println("game over");
}
}
有人可以帮我解释一下我做错了什么。
附言。请不要只给我代码,我确实想尝试学习!!!。
谢谢。
public void actionPerformed(ActionEvent e) {
repaint();
x += velx;
y += vely;
}
public void up() {
vely = -1.5;
velx = 0;
}
public void down() {
vely = 1.5;
velx = 0;
}
public void left() {
vely = 0;
velx = -1.5;
}
public void right() {
vely = 0;
velx = 1.5;
}
public void keyPressed(KeyEvent e) {
int code = e.getKeyCode();
if (code == KeyEvent.VK_UP) {
up();
}
if (code == KeyEvent.VK_DOWN) {
down();
}
if (code == KeyEvent.VK_LEFT) {
left();
}
if (code == KeyEvent.VK_RIGHT) {
right();
}
}